Aller au contenu
GINOUX DEFERMON

AEON TEC RGBW BULB et commandes en LUA sur HC3

Recommended Posts

Bonjour

Je suis un heureux possesseur de HC3 et ai réussi à migrer mes 33 objets connectés :-)

J'ai besoin de votre support pour l'ampoule connectée Aeotec LED BULB pour gérer mon alarme quand on rentre chez moi (scénario basique : ampoule allumée en rouge si l'alarme est activée, ampoule allumée en vert si l'alarme est désactivée)

J'ai réussi :

- à allumer l'ampoule en LUA via l'action

hub.call(id-de-l-ampoule'turnOn')

- à éteindre l'ampoule en LUA via l'action

hub.call(id-de-l-ampoule'turnOff')

En revanche, je ne sais pas changer les couleurs de l'ampoule car cela nécessite que je change les paramètres propriétés Z-wave de l'ampoule.

J'ai trouvé un post relatif au HC2. J'imagine qu'il y a une commande en LUA pour le HC3 pour envoyer des paramètres mais je ne l'ai pas trouvée. Pouvez-vous m'aider ?

Merci à la communauté

 

Partager ce message


Lien à poster
Partager sur d’autres sites
Il y a 3 heures, GINOUX DEFERMON a dit :

ampoule allumée en rouge si l'alarme est activée, ampoule allumée en vert si l'alarme est désactivée)

j'espère que la lumière de cette ampoule n'est pas visible de l'extérieur, car sinon c'est un excellent signal envoyé aux voleurs : "venez, la voie est libre, il n'y a personne dans la maison !"

 

sinon, pour modifier les propriétés

hub.call(id, "updateProperty", "value", 123)  -- update de la propriété "value" avec 123

cfr le json de l'appareil pour la liste des propriétés

Partager ce message


Lien à poster
Partager sur d’autres sites

Merci jojo

 

Je pense que je ne suis plus très loin grâce à toi. Mais si je regarde le json de l'ampoule connectée via http://192.168.1.36/api/devices/306, j'obtiens en réponse

 

{
  "id": 306,
  "name": "AmpouleSALONCouleurs",
  "roomID": 230,
  "view": [
    {
      "assetsPath": "",
      "name": "com.fibaro.colorController",
      "translatesPath": "/assets/i18n/com.fibaro.colorController",
      "type": "ts"
    }
  ],
  "type": "com.fibaro.colorController",
  "baseType": "com.fibaro.multilevelSwitch",
  "enabled": true,
  "visible": true,
  "isPlugin": false,
  "parentId": 243,
  "viewXml": false,
  "hasUIView": false,
  "configXml": false,
  "interfaces": [
    "light",
    "zwave"
  ],
  "properties": {
    "parameters": [],
    "pollingTimeSec": 0,
    "zwaveCompany": "Aeotec Limited",
    "zwaveInfo": "3,4,38",
    "zwaveVersion": "2.0",
    "categories": [
      "lights"
    ],
    "color": "0,252,21,0",
    "colorComponents": {
      "blue": 21,
      "green": 252,
      "red": 0,
      "warmWhite": 0
    },
    "configured": true,
    "currentProgram": 0,
    "dead": false,
    "deadReason": "",
    "deviceControlType": 51,
    "deviceIcon": 15,
    "deviceRole": "Rgb",
    "endPointId": 0,
    "icon": {},
    "isLight": true,
    "log": "",
    "logTemp": "",
    "manufacturer": "",
    "markAsDead": true,
    "model": "",
    "nodeId": 53,
    "parametersTemplate": "0",
    "productInfo": "3,113,0,3,0,2,2,0",
    "saveLogs": true,
    "serialNumber": "h'ffffffffffffffff",
    "state": false,
    "supportedDeviceRoles": [
      "Rgb",
      "Rgbw"
    ],
    "useTemplate": true,
    "userDescription": "",
    "value": 0
  },
  "actions": {
    "reconfigure": 0,
    "setColor": 1,
    "setColorComponents": 1,
    "setValue": 1,
    "startColorEnhancement": 1,
    "startColorFade": 1,
    "stopColorChange": 1,
    "toggle": 0,
    "turnOff": 0,
    "turnOn": 0
  },
  "created": 1670954800,
  "modified": 1670954846,
  "sortOrder": 110
}

 

Donc pour modifier sa propriété "color": "0,252,21,0"

Quelle devrait être la commande LUA ?

hub.call(306, "updateProperty","color","255,255,0,0") ne fonctionne pas. Dois-je encoder en json ?

 

Partager ce message


Lien à poster
Partager sur d’autres sites

Attention, ce n'est pas setProperty qu'il faut utiliser dans ce cas précis, mais les actions listées dans ton JSON.
setValue(...) pour définir la luminosité (de 0 à 99)

et setColor() pour les couleurs

Cherche fibaro setcolor sur Google pour la bonne syntaxe.

Partager ce message


Lien à poster
Partager sur d’autres sites

en voyant ton json, j'aurais fait la même réponse que @Lazer (qui, comme d'habitude) a été plus rapide que moi.

Partager ce message


Lien à poster
Partager sur d’autres sites

OK Merci à vous mais hélas pour moi la commande ci-dessous ne fonctionne pas non plus....Sans doute ma syntaxe n'est pas correcte.

hub.call(306"setColor""255""255""0""55")
 

Partager ce message


Lien à poster
Partager sur d’autres sites
Il y a 3 heures, jojo a dit :

j'espère que la lumière de cette ampoule n'est pas visible de l'extérieur, car sinon c'est un excellent signal envoyé aux voleurs : "venez, la voie est libre, il n'y a personne dans la maison !"

 

+1 chez moi, le gars de l'alarme voulait mettre le mode Chenillard led sur la sirene exterieur, j'ai eu la meme reflexion que toi @jojo :D et s'il me voit partir sans voir la chenille .... Bingo

 

Partager ce message


Lien à poster
Partager sur d’autres sites
Il y a 1 heure, GINOUX DEFERMON a dit :
hub.call(306"setColor""255""255""0""55")

ça a l'air d'être la bonne syntaxe, mais ce qui est étrange c'est que le JSON du module dit que pour la fonction setColor, il ne faut qu'un seul argument... et ça n'est pas normal, car l'exemple que tu as trouvé (et qui semble ressortir sur Google) c'est bien avec 3 (RGB) ou 4 (RGBW) arguments.

 

Autre solution, activer les outils de dév du navigateur (F12), faire la manip via l'interface Web de la HC3, et regarder quelle syntaxe d'API a été utilisée.

Partager ce message


Lien à poster
Partager sur d’autres sites

La fonction attend des valeurs et non des strings...

hub.call(306, "setColor", 255, 255, 0, 55)

 

Modifié par Barelle
  • Like 2

Partager ce message


Lien à poster
Partager sur d’autres sites

Cela fonctionne avec

hub.call(306, "setColor", 255, 255, 0, 55)

Merci Barelle et à votre communauté :-)

Un peu dûr quand même le passage au HC3...

Partager ce message


Lien à poster
Partager sur d’autres sites

×