Bonjour à tous,
J’ai crée un Dash Board à partir d’un raspberry pi 1 B (oui il est vieux mais vaillant ^^)
Je veux pouvoir utiliser un BP pour allumer/éteindre mon éclairage Philips Hue.
J’ai réussi à faire fonctionner qqch mais il y a une latence d’environ 10 sec entre le moment ou j’appui sur le BP et le moment ou les philips Hue bougent.
Voici mon code:
1er script (lancer au démarrage du Pi) :
from gpiozero import Button
from signal import pause
from subprocess import check_call
def JourNuit():
check_call(['sudo', 'python', '/var/www/html/Python/OnOffHue.py'])
button = Button(3)
button.when_pressed = JourNuit
pause()
S’il détecte un appui alors il lance un second script python que voici :
import requests
import json
bridge_ip = "192.168.1.23"
username = "***************************************************************"
groups_number = "1"
groups_url = "http://{}/api/{}/groups".format(bridge_ip, username)
groups_state_url = "{}/{}/action".format(groups_url, groups_number)
r = requests.get(groups_url)
for groups in r.json():
groups_current_status = "{} - {} : {}".format(groups,
r.json()[groups]["name"].encode("utf-8"),
r.json()[groups]["state"]["any_on"])
new_state = not r.json()[groups_number]["state"]["any_on"]
message = json.dumps({"on": new_state, "bri": 254})
action = requests.put(groups_state_url, data=message)
Avez vous une idée pour optimiser cela? Parce que cette latence casse un peu l’utilité…
Merci d’avance pour votre aide