Trigger différent de la condition

Bonsoir,

J’ai besoin d’un esprit brillant sur la création d’un scénario qui me semblait simple…

J’ai donc:

  • zigbee2mqtt
  • jMQTT

J’ai créé un équipement à partir d’un interrupteur EnOcean PTM215

Les actions boutons sont sous « la commande » action .

Quand on appuie, la valeur est: press_1 pour le bouton 1 press_2 pour le bouton 2 et pour le 3 et le 4 je vous laisse deviner… :sweat_smile:

Et dès que l’on relâche le bouton, la valeur se transforme en release_1pour le bouton 1, releas... bon je crois que vous avez compris! :stuck_out_tongue_closed_eyes:

Premier problème:
En appuyant sur n’importe quel bouton, vu qu’il y a l’action: press_? et release_?cela déclenche 2 fois le scénario à chaque fois.

Alors dans mon scénario, je me suis dis, je fais sur un évènement provoqué par l’équipement:
SI
press_1
ALORS = une action

Mais le coquin! Il ne réagit pas comme cela!
Dans les log, il détecte bien le press_1 MAIS! Il récupère comme comme valeur release_1

[2023-02-10 22:49:47][SCENARIO] -- Start : Scenario execute automatiquement sur evenement venant de : [hangar 2][double interrupteur][zigbee2mqtt:0x000000000152d010:action] (press_1).
[2023-02-10 22:49:47][SCENARIO] - Exécution du sous-élément de type [condition] : if #[hangar 2][double interrupteur][zigbee2mqtt:0x000000000152d010:action]# == 'press_1'  || #[hangar 2][double interrupteur][zigbee2mqtt:0x000000000152d010:action]# == 'press_3'
[2023-02-10 22:49:47][SCENARIO] Evaluation de la condition : ["release_1" == 'press_1'  || "release_1" == 'press_3'] = Faux
[2023-02-10 22:49:47][SCENARIO] - Exécution du sous-élément de type [action] : else
[2023-02-10 22:49:47][SCENARIO] - Exécution du sous-élément de type [condition] : if #[hangar 2][double interrupteur][zigbee2mqtt:0x000000000152d010:action]# == 'press_2'  || #[hangar 2][double interrupteur][zigbee2mqtt:0x000000000152d010:action]# == 'press_4'
[2023-02-10 22:49:47][SCENARIO] Evaluation de la condition : ["release_1" == 'press_2'  || "release_1" == 'press_4'] = Faux
[2023-02-10 22:49:47][SCENARIO] - Exécution du sous-élément de type [action] : else
[2023-02-10 22:49:47][SCENARIO] Fin correcte du scénario
------------------------------------
[2023-02-10 22:49:48][SCENARIO] -- Start : Scenario execute automatiquement sur evenement venant de : [hangar 2][double interrupteur][zigbee2mqtt:0x000000000152d010:action] (release_1).
[2023-02-10 22:49:48][SCENARIO] - Exécution du sous-élément de type [condition] : if #[hangar 2][double interrupteur][zigbee2mqtt:0x000000000152d010:action]# == 'press_1'  || #[hangar 2][double interrupteur][zigbee2mqtt:0x000000000152d010:action]# == 'press_3'
[2023-02-10 22:49:48][SCENARIO] Evaluation de la condition : ["release_1" == 'press_1'  || "release_1" == 'press_3'] = Faux
[2023-02-10 22:49:48][SCENARIO] - Exécution du sous-élément de type [action] : else
[2023-02-10 22:49:48][SCENARIO] - Exécution du sous-élément de type [condition] : if #[hangar 2][double interrupteur][zigbee2mqtt:0x000000000152d010:action]# == 'press_2'  || #[hangar 2][double interrupteur][zigbee2mqtt:0x000000000152d010:action]# == 'press_4'
[2023-02-10 22:49:48][SCENARIO] Evaluation de la condition : ["release_1" == 'press_2'  || "release_1" == 'press_4'] = Faux
[2023-02-10 22:49:48][SCENARIO] - Exécution du sous-élément de type [action] : else
[2023-02-10 22:49:48][SCENARIO] Fin correcte du scénario

Je me suis dit, je vais donc mettre
SI
release_1
ALORS = action

Sauf que…

------------------------------------
[2023-02-10 22:53:04][SCENARIO] -- Start : Scenario execute automatiquement sur evenement venant de : [hangar 2][double interrupteur][zigbee2mqtt:0x000000000152d010:action] (press_1).
[2023-02-10 22:53:04][SCENARIO] - Exécution du sous-élément de type [condition] : if #[hangar 2][double interrupteur][zigbee2mqtt:0x000000000152d010:action]# == 'release_1'  || #[hangar 2][double interrupteur][zigbee2mqtt:0x000000000152d010:action]# == 'release_3'
[2023-02-10 22:53:04][SCENARIO] Evaluation de la condition : ["release_1" == 'release_1'  || "release_1" == 'release_3'] = Vrai
[2023-02-10 22:53:04][SCENARIO] - Exécution du sous-élément de type [action] : then
[2023-02-10 22:53:04][SCENARIO] - Exécution du sous-élément de type [condition] : if #[hangar 2][double interrupteur][zigbee2mqtt:0x000000000152d010:action]# == 'release_2'  || #[hangar 2][double interrupteur][zigbee2mqtt:0x000000000152d010:action]# == 'release_4'
[2023-02-10 22:53:04][SCENARIO] Evaluation de la condition : ["release_1" == 'release_2'  || "release_1" == 'release_4'] = Faux
[2023-02-10 22:53:04][SCENARIO] - Exécution du sous-élément de type [action] : else
[2023-02-10 22:53:04][SCENARIO] Fin correcte du scénario
------------------------------------
[2023-02-10 22:53:05][SCENARIO] -- Start : Scenario execute automatiquement sur evenement venant de : [hangar 2][double interrupteur][zigbee2mqtt:0x000000000152d010:action] (release_1).
[2023-02-10 22:53:05][SCENARIO] - Exécution du sous-élément de type [condition] : if #[hangar 2][double interrupteur][zigbee2mqtt:0x000000000152d010:action]# == 'release_1'  || #[hangar 2][double interrupteur][zigbee2mqtt:0x000000000152d010:action]# == 'release_3'
[2023-02-10 22:53:05][SCENARIO] Evaluation de la condition : ["release_1" == 'release_1'  || "release_1" == 'release_3'] = Vrai
[2023-02-10 22:53:05][SCENARIO] - Exécution du sous-élément de type [action] : then
[2023-02-10 22:53:05][SCENARIO] - Exécution du sous-élément de type [condition] : if #[hangar 2][double interrupteur][zigbee2mqtt:0x000000000152d010:action]# == 'release_2'  || #[hangar 2][double interrupteur][zigbee2mqtt:0x000000000152d010:action]# == 'release_4'
[2023-02-10 22:53:05][SCENARIO] Evaluation de la condition : ["release_1" == 'release_2'  || "release_1" == 'release_4'] = Faux
[2023-02-10 22:53:05][SCENARIO] - Exécution du sous-élément de type [action] : else
[2023-02-10 22:53:05][SCENARIO] Fin correcte du scénario

Vu que cela démarre 2 fois le scénario, cela valide 2 fois la condition, et donc déclenche 2 fois l’action qui vont se contrarier.

J’ai essayé avec les trigger mais là aussi, cela valide 2 fois ou rien.

Je me dis qu’avant de me lancer dans l’injection de variable dans un objet virtuel qui déclenche un scénario. Peut-être quelqu’un aurait LA brillante idée qui pourrait illuminer ma sombre ignorance!

Merci d’avance et bon week-end!

Hello,

Essaye de regarder ce que ça donne avec triggerValue() plutôt que ta commande info.

Cf : https://doc.jeedom.com/fr_FR/core/4.1/scenario

Bonjour!

Je me suis mal exprimé, quand je disais les trigger dans mon messages, c’était tous les types, dont triggerValue(). Cela fait comme un scénario normale, ça détecte press_? et pourtant cela évalue release_?et démarre deux fois le scénario.

Un piti exemple du matin, chagrin…

[2023-02-11 06:44:04][SCENARIO] -- Start : Scenario execute automatiquement sur evenement venant de : [hangar 2][double interrupteur][zigbee2mqtt:0x000000000152d010:action] (press_4).
[2023-02-11 06:44:04][SCENARIO] - Exécution du sous-élément de type [condition] : if triggerValue(#[hangar 2][double interrupteur][zigbee2mqtt:0x000000000152d010:action]#) == 'release_1'  || triggerValue(#[hangar 2][double interrupteur][zigbee2mqtt:0x000000000152d010:action]#) ==  'release_3'
[2023-02-11 06:44:04][SCENARIO] Evaluation de la condition : ["release_4" == 'release_1'  || "release_4" ==  'release_3'] = Faux
[2023-02-11 06:44:04][SCENARIO] - Exécution du sous-élément de type [action] : else
[2023-02-11 06:44:04][SCENARIO] - Exécution du sous-élément de type [condition] : if triggerValue(#[hangar 2][double interrupteur][zigbee2mqtt:0x000000000152d010:action]#) == 'release_2'  || triggerValue(#[hangar 2][double interrupteur][zigbee2mqtt:0x000000000152d010:action]#) ==  'release_4'
[2023-02-11 06:44:04][SCENARIO] Evaluation de la condition : ["release_4" == 'release_2'  || "release_4" ==  'release_4'] = Vrai
[2023-02-11 06:44:04][SCENARIO] - Exécution du sous-élément de type [action] : then
[2023-02-11 06:44:04][SCENARIO] Fin correcte du scénario
------------------------------------
[2023-02-11 06:44:05][SCENARIO] -- Start : Scenario execute automatiquement sur evenement venant de : [hangar 2][double interrupteur][zigbee2mqtt:0x000000000152d010:action] (release_4).
[2023-02-11 06:44:05][SCENARIO] - Exécution du sous-élément de type [condition] : if triggerValue(#[hangar 2][double interrupteur][zigbee2mqtt:0x000000000152d010:action]#) == 'release_1'  || triggerValue(#[hangar 2][double interrupteur][zigbee2mqtt:0x000000000152d010:action]#) ==  'release_3'
[2023-02-11 06:44:05][SCENARIO] Evaluation de la condition : ["release_4" == 'release_1'  || "release_4" ==  'release_3'] = Faux
[2023-02-11 06:44:05][SCENARIO] - Exécution du sous-élément de type [action] : else
[2023-02-11 06:44:05][SCENARIO] - Exécution du sous-élément de type [condition] : if triggerValue(#[hangar 2][double interrupteur][zigbee2mqtt:0x000000000152d010:action]#) == 'release_2'  || triggerValue(#[hangar 2][double interrupteur][zigbee2mqtt:0x000000000152d010:action]#) ==  'release_4'
[2023-02-11 06:44:05][SCENARIO] Evaluation de la condition : ["release_4" == 'release_2'  || "release_4" ==  'release_4'] = Vrai
[2023-02-11 06:44:05][SCENARIO] - Exécution du sous-élément de type [action] : then
[2023-02-11 06:44:05][SCENARIO] Fin correcte du scénario

Voilà, bon c’est le matin, le réveil, le week-end, promis, pas de jeu de mots foireux sur ton pseudo @Bad :sweat_smile:

Bonne journée!

Hello,

Mets voir aussi un filtre sur les évènements qui déclenchent ton scénario (=="press_1"), si tu as besoin des 4 dans le même scénario, mets 4 lignes de déclencheur. Mais je te recommande du coup de faire 2 scénarios vu que tu fais les mêmes actions sur 1+3 et 2+4, ce sera plus lisible.

Bad :wink:

Ok, mais là j’ai un nouveau problème. Je ne sais pas où j’ai mis l’interrupteur, je l’ai posé, mais où? Tu sais? :face_in_clouds:

Tu étais où à 6h44 ? :smiley:

C’est bon je l’ai retrouvé! Il était sur le petit meuble à chaussures dans l’entrée.

Et super, ça fonctionne en rajoutant =="press_1" et ses autres amis 2, 3 et 4 comme tu m’as dit.

Bon ça fait bizarre de mettre cela et d’avoir comme évaluation une autre condition release_?. Mais ça fait le boulot!

Merci! C’est Good! :partying_face:. (Aïe non pas la tête! :face_with_head_bandage:, promis j’essaye d’arrêter )

Et si tu veux tout savoir de ma vie, à 6h44, j’étais sur mon canapé, en position… Assise… Le corps entièrement… habillé. Avec le bonnet à prêt à être mis sur mon extrémité… Crânienne. Avant de sortir de chez moi par -6,30° c’est l’historique de Jeedom qui me l’a dit qu’il faisait très froid!

Merci encore pour ce coup de main numérique!

Bon week-end!

Ce sujet a été automatiquement fermé après 24 heures suivant le dernier commentaire. Aucune réponse n’est permise dorénavant.