Je suis complètement novice et j’ai besoin d’aide s’il vous plait pour des scénarios.
J’ai acheté il y a plusieurs semaines maintenant un bouton wallmote quad ZW130.
Alors j’ai réussi à connecter 2 modules fibaro zwave sur 2 boutons, qui fonctionnent très bien via la configuration du module. Un appui court, ça allume et un appui court ça éteint.
Donc le bouton 1 et 3 sont pris en appui court pour ces 2 modules.
Après pas mal de recherche, j’ai également réussi via un tuto à créer un scénario qui permet avec un appui court d’allumer 3 lampes (une prise via micromodule qubino, un ruban led Phillips hue, et une prise dio) et de les éteindre par un appui long.
Voilà le scénario :
De mémoire c’était 20 pour appui cour et 21 pour appui long.
Ce que j’aimerais faire, c’est comme pour les micromodules fibaro, faire un appui cour pour allumer mais aussi pour éteindre. Ce qui me permettrait de garder de disponible l’appui long sur le bouton 2.
Pour simplifier la proposition de @bison, la plupart du temps, sur les micromodules de type on/off, tu as une commande toggle. Si elle existe, utilisé simplement cette commande dans ton si pour allumer si c’est éteint et eteindre si c’est allumé.
Pour les scénarios de ce type, et plutôt que d’enchaîner les si/sinon lorsqu’on rajoute des actions, pour ma part, je mets les si en série avec un exit en fin du bloc action
Si bouton == 20 alors
Action
Action toogle lampe
Exit
Si bouton == 21 alors
Action
.....
Exit
En cas de multiples actions le scénario est plus lisible et se comporte un peu comme une boucle de type
Cas 1 ==> action 1
Cas 2 ==> action 2
Cas 3 ==> action 3
EDIT : Je viens de relire ton besoin et le bouton toggle n’est pas la meilleure solution dans ton cas (necessité de gerer plusieurs lampes. Je t’invite à regarder du coté de l’excellent plugin groupe de @zyg0m4t1k. Il te permettra de grouper toutes tes lampes avec une seule commande on/off.
Dans ton script, plutot que de mettre
SI [etat] == 0 ALORS on,
tu mets
Si [nombre on] >= 1 ALORS [all off]
SINON [all on]
([nombre on] et [all off] sont des commandes d un équipement du plugin groupe)
Traduit, ca donne
SI au moins 1 lampe est allumée, ALORS j'eteint tout, SINON, j'allume tout
Ce que je ne comprend pas dans ce que tu as écrit, c’est quand première ligne tu indique >=1.
Moi j’ai marqué =20 pour faire indiquer le bouton 2 du wallmote quad. Si je mets >=1, comment le wallmote quad va savoir enclencher le scénario?
Du coup là, quand je fais un appui court sur le bouton 2 du wallmote quad, les 3 lumières s’allument, mais par contre impossible de les éteindre.
Oui, mais dans ton si, tu n’indiques pas la commande correspondant à l’appui sur le bouton.
Il faudrait
If nb on == 3. // Nb de lampes allumées
Groupe lampe off. // J'éteins tout
Else. // Sinon, donc si 0, 1 ou 2 lampes sont allumées
Groupe lampe on. // J'allume tout
Et en déclencheur :
Bouton == 20
Faut juste savoir comment tu veux gérer le cas où tu as 1 ou 2 lampes allumées, en fonction, modifier la condition avec nb on >= 1 ou nb on >= 2
Je pense que je voudrais comme tu l’as écrit si je comprend bien.
Donc si 0, 1 ou 2 lampes sont allumées, j’allume tout
Si les 3 lampes sont allumées, j’éteins tout
Par contre comment tu écris dans les blocs?
Je peux après écrire [nombre on]# ==3 ==20?
Comment sait-il que ==20 est le déclencheur?
Et après c’est un autre bloc si/alors/sinon?