Script pour Pont HUE sous Domoticz v4.9700
Publié : 20 déc. 2018, 15:02
Bonjour,
Depuis le passage à la dernière version stable, mes ampoules HUE ne sont plus gérées par Domoticz bien que le pont soit reconnu.
J'ai donc cherché à commander ces lampes à travers de scripts ON/OFF.
L'état des lampes peut être remonté en interrogeant le pont avec la commande suivante :
http://<ip. pont>/api/<identifiant du pont>/lights/
le retour est du type :
{"4":{"state":{"on":false,"bri":254,"alert":"select","mode":"homeautomation","reachable":true},"swupdate":{"state":"noupdates","lastinstall":null},"type":"Dimmable light","name":"Cuisine","modelid":"LWB010","manufacturername":"Philips","productname":"Hue white lamp","capabilities":{"certified":true,"control":{"mindimlevel":5000,"maxlumen":806},"streaming":{"renderer":false,"proxy":false}},"config":{"archetype":"classicbulb","function":"functional","direction":"omnidirectional","startup":{"mode":"safety","configured":true}},"uniqueid":"00:17:88:01:02:53:ad:10-0b","swversion":"1.46.13_r26312","swconfigid":"564ABA6B","productid":"Philips-LWB010-1-A19DLv3"},"5":{"state":{"on":false,"bri":254,"alert":"select","mode":"homeautomation","reachable":true},"swupdate":{"state":"noupdates","lastinstall":null},"type":"Dimmable light","name":"Salon","modelid":"LWB010","manufacturername":"Philips","productname":"Hue white lamp","capabilities":{"certified":true,"control":{"mindimlevel":5000,"maxlumen":806},"streaming":{"renderer":false,"proxy":false}},"config":{"archetype":"classicbulb","function":"functional","direction":"omnidirectional","startup":{"mode":"safety","configured":true}},"uniqueid":"00:17:88:01:02:b2:e3:e6-0b","swversion":"1.46.13_r26312","swconfigid":"564ABA6B","productid":"Philips-LWB010-1-A19DLv3"}}
Le texte en rouge permet d'identifier l'état de la lampe.
Après différentes recherches, j'ai appliqué les commandes suivantes à travers un script .sh pour allumer et éteindre ces lampes :
Pour allumer la lampe 4
curl -H "Accept: application/json" -X PUT --data '{"on":true}' http://<ip. pont>/api/<identifiant du pont>/lights/4/state
Pour éteindre la lampe 4
curl -H "Accept: application/json" -X PUT --data '{"on":false}' http://<ip. pont>/api/<identifiant du pont>/lights/4/state
A présent, je cherche comment remonter l'état réel de la lampe, qui se trouve sous state - on (voir ci-dessus le texte en rouge).
Je cherche donc à extraire les valeurs "true" ou "false" du résultat de la commande curl http://<ip. pont>/api/<identifiant du pont>/lights
afin de les renvoyer sur l'interface Domoticz afin que les lampes soient dans leur état réel sur mon interface (les lampes sont également commandées par un boitier télécommande d’où les différences possibles).
Merci d'avance pour votre aide.
Depuis le passage à la dernière version stable, mes ampoules HUE ne sont plus gérées par Domoticz bien que le pont soit reconnu.
J'ai donc cherché à commander ces lampes à travers de scripts ON/OFF.
L'état des lampes peut être remonté en interrogeant le pont avec la commande suivante :
http://<ip. pont>/api/<identifiant du pont>/lights/
le retour est du type :
{"4":{"state":{"on":false,"bri":254,"alert":"select","mode":"homeautomation","reachable":true},"swupdate":{"state":"noupdates","lastinstall":null},"type":"Dimmable light","name":"Cuisine","modelid":"LWB010","manufacturername":"Philips","productname":"Hue white lamp","capabilities":{"certified":true,"control":{"mindimlevel":5000,"maxlumen":806},"streaming":{"renderer":false,"proxy":false}},"config":{"archetype":"classicbulb","function":"functional","direction":"omnidirectional","startup":{"mode":"safety","configured":true}},"uniqueid":"00:17:88:01:02:53:ad:10-0b","swversion":"1.46.13_r26312","swconfigid":"564ABA6B","productid":"Philips-LWB010-1-A19DLv3"},"5":{"state":{"on":false,"bri":254,"alert":"select","mode":"homeautomation","reachable":true},"swupdate":{"state":"noupdates","lastinstall":null},"type":"Dimmable light","name":"Salon","modelid":"LWB010","manufacturername":"Philips","productname":"Hue white lamp","capabilities":{"certified":true,"control":{"mindimlevel":5000,"maxlumen":806},"streaming":{"renderer":false,"proxy":false}},"config":{"archetype":"classicbulb","function":"functional","direction":"omnidirectional","startup":{"mode":"safety","configured":true}},"uniqueid":"00:17:88:01:02:b2:e3:e6-0b","swversion":"1.46.13_r26312","swconfigid":"564ABA6B","productid":"Philips-LWB010-1-A19DLv3"}}
Le texte en rouge permet d'identifier l'état de la lampe.
Après différentes recherches, j'ai appliqué les commandes suivantes à travers un script .sh pour allumer et éteindre ces lampes :
Pour allumer la lampe 4
curl -H "Accept: application/json" -X PUT --data '{"on":true}' http://<ip. pont>/api/<identifiant du pont>/lights/4/state
Pour éteindre la lampe 4
curl -H "Accept: application/json" -X PUT --data '{"on":false}' http://<ip. pont>/api/<identifiant du pont>/lights/4/state
A présent, je cherche comment remonter l'état réel de la lampe, qui se trouve sous state - on (voir ci-dessus le texte en rouge).
Je cherche donc à extraire les valeurs "true" ou "false" du résultat de la commande curl http://<ip. pont>/api/<identifiant du pont>/lights
afin de les renvoyer sur l'interface Domoticz afin que les lampes soient dans leur état réel sur mon interface (les lampes sont également commandées par un boitier télécommande d’où les différences possibles).
Merci d'avance pour votre aide.