Je suis entrain de créer un scénario pour gerer les pressions du bonton
simple double et long avec un changement d’information dans une virtuel pour faire un ON/OFF sur 3 équimpements différente avec un seul bouton
Salut le déclencheur c’est quand j’appuie sur le bouton
Voici le log quand j’appuie dessus
[2022-01-10 18:15:07][INFO] : Evènement sur la commande [Salon][Bouton 1 sonoff][Bouton 01] valeur : {"action":"single","battery":100,"linkquality":47,"voltage":3200}
[2022-01-10 18:15:07][INFO] : Evènement sur la commande [Salon][Bouton 1 sonoff][LinkQuality] valeur : 47
[2022-01-10 18:15:07][INFO] : Evènement sur la commande [Salon][Bouton 1 sonoff][Bouton 01] valeur : {"action":"","battery":100,"linkquality":47,"voltage":3200}
[2022-01-10 18:15:13][INFO] : Evènement sur la commande [Salon][Bouton 1 sonoff][Bouton 01] valeur : {"action":"single","battery":100,"linkquality":84,"voltage":3200}
[2022-01-10 18:15:13][INFO] : Evènement sur la commande [Salon][Bouton 1 sonoff][LinkQuality] valeur : 84
[2022-01-10 18:15:13][INFO] : Evènement sur la commande [Salon][Bouton 1 sonoff][Bouton 01] valeur : {"action":"","battery":100,"linkquality":84,"voltage":3200}
et le log du scénario
[2022-01-10 18:17:28][SCENARIO] Start : Scenario lance manuellement.
[2022-01-10 18:17:28][SCENARIO] Exécution du sous-élément de type [condition] : if
[2022-01-10 18:17:28][SCENARIO] Evaluation de la condition : ["single" == 'single' ET "single" == '1' ] = Faux
[2022-01-10 18:17:28][SCENARIO] Exécution du sous-élément de type [action] : else
[2022-01-10 18:17:28][SCENARIO] Affectation de la variable VARBTN01-A => 1 = 1
[2022-01-10 18:17:28][SCENARIO] Exécution du sous-élément de type [condition] : if
[2022-01-10 18:17:28][SCENARIO] Evaluation de la condition : ["single" == 'double' ET "" == '2' ] = Faux
[2022-01-10 18:17:28][SCENARIO] Exécution du sous-élément de type [action] : else
[2022-01-10 18:17:28][SCENARIO] Affectation de la variable VARBTN01-B => 2 = 2
[2022-01-10 18:17:28][SCENARIO] Exécution du sous-élément de type [condition] : if
[2022-01-10 18:17:28][SCENARIO] Evaluation de la condition : ["single" == 'long' ET "" == '3' ] = Faux
[2022-01-10 18:17:28][SCENARIO] Exécution du sous-élément de type [action] : else
[2022-01-10 18:17:28][SCENARIO] Affectation de la variable VARBTN01-C => 3 = 3
[2022-01-10 18:17:28][SCENARIO] Fin correcte du scénario
Indépendamment de ce que j’ai dis et qui tient toujours, dans les logs on voit des moments où aucune action n’est transmise, tu fais quelque chose de particulier à ce moment là ?
Et en déclencheur ? Tu as bien mis la commande action de ton bouton ?
Quand je change d’état … de single à double ou a long le scénario se lance
Mais quand plusieurs fois d’affilé « single » un clic sur le bouton rien ne se passe, car il n’y a pas d’état « intermédiaire »… ça reste sur single mais j’ai bien un log dans jeedom mqtt (comme au-dessus)
Sur le bouton hue … j’ai quand j’appuie dans MQTT une fois ça passe a ON et la fois suivante ça passe à OFF
[2022-01-10 20:12:07][SCENARIO] Start : Scenario execute automatiquement sur evenement venant de : [Salon][Bouton 1 sonoff][action].
[2022-01-10 20:12:07][SCENARIO] Exécution du sous-élément de type [condition] : if
[2022-01-10 20:12:07][SCENARIO] Evaluation de la condition : ["double" == 'single' ] = Faux
[2022-01-10 20:12:07][SCENARIO] Exécution du sous-élément de type [action] : else
[2022-01-10 20:12:07][SCENARIO] Exécution du sous-élément de type [condition] : if
[2022-01-10 20:12:07][SCENARIO] Evaluation de la condition : ["double" == 'double' ] = Vrai
[2022-01-10 20:12:07][SCENARIO] Exécution du sous-élément de type [action] : then
[2022-01-10 20:12:07][SCENARIO] Exécution d'un bloc élément : 50
[2022-01-10 20:12:07][SCENARIO] Exécution du sous-élément de type [condition] : if
[2022-01-10 20:12:07][SCENARIO] Evaluation de la condition : [VARBTN01-B == '2'] = VARBTN01-B == '2'
[2022-01-10 20:12:07][SCENARIO] Expression non valide : VARBTN01-B == '2'
[2022-01-10 20:12:07][SCENARIO] Exécution du sous-élément de type [condition] : if
[2022-01-10 20:12:07][SCENARIO] Evaluation de la condition : ["double" == 'long' ] = Faux
[2022-01-10 20:12:07][SCENARIO] Exécution du sous-élément de type [action] : else
[2022-01-10 20:12:07][SCENARIO] Fin correcte du scénario
Ci-après mon scénario avec infos supplementaires (si ça peux aider d’autres)
Mon déclancheur c’est le bouton, il y a une valeur qui passe de « » à "null"dans mon info MQTT qui reviens à chaque clic du coup pas de pb et le fait de passer de 1clic à 2 clics pour déceler le changement de valeur
Mais je pense que l’on peut faire un déclencheur sur la ligne de réception de base du MQTT avant de faire un json pour isoler les valeurs avec #****# != 1
Docker :
Container Jeedom
Container MQTT
Container Zigbee2MQTT « option homeassistant : true » quand la détection des « components » ne fonctionne pas
Container Zigbee2MqttAssistant
Il y a aussi un virtuel dans lequel j’ai mis les infos en binaire pour voir les états de ceux-ci.
avec la ligne « event »
De ce fait, on peut utiliser les 3 fonctions du bouton « simple » « double » et « long » pour 3 applications différentes au lieux de faire une changement d’etat de « simple » a « double »
Quel modèle ton bouton sonoff ?
Car certains modèle poussoirs ne remontent que deux états plus un commun .
Etat appuyé
Etat appuyé long
Etat relâché
Donc avec ces derniers difficile de commander facilement plus de deux « circuits » différents.
Jouer avec des séquences appuis courts est plus qu’aléatoire et ergonomiquement non pertinent.
J’ai fait quelques test avec simple clic double clic et long clic j’ai toujours le retour
Quand je vais trop vite entre 2 appuis simple ça « lag » un peu