Condition dans déclencheur scénario

Bonjour à tous
Je me pose une question pour optimiser les logs.
On peut mettre une condition directement dans le déclencheur d’un scénario. D’ailleurs plus optimisé que faitr un bloc SI.
Peut on mettre aussi dans un seul déclencheur : XXXXX == 1 && YYYYY == 1
Est ce que la répétition de même valeur est gérée au niveau du déclencheur comme si on cochait la petite fleche sur une condition SI dans le corps du scénario.
C’est à dire si j’ai une répétition de valeur sur la condition globale du déclencheur, mon scénario va t-il être executé ou non ?

Je souhaite faire ça car dans la timeline, je trouve que l’on est pollué par les appels de scénarios alors que finalement le scénario n’est pas exécuté pour cause de répétition de valeur (actuellement, je gère tout dans le corps du scénario) et nous n’avons pas l’info dans la timeline de log ou d’action effectuée vraiment par le scénario

Merci

Salut

Tu utilises quels types de déclencheurs actuellement ?

Antoine

Ca depend, si le paramètre répéter les valeurs identiques est à oui, ton scenario se déclenchera à chaque nouvelle valeur (identique ou pas), si non, ton scenario se déclenchera seulement si chgt de valeur

attention, le fait d’avoir une double condition (je ne sais d’ailleurs pas si ca fonctionne) rend la réflexion un peu plus sioux !
pour ma part, je gère ce genre de chose avec un virtuel avec un opérateur ternaire (XXXXX == 1 && YYYYY == 1)? 1:0 + répétition de valeurs à non, et comme déclencheur le virtuel = 1

C’est pour ma gestion de présence.
Donc les éléments déclencheurs sont des virtuels représents des états de présence boolean BLEA, WiFi et GPS

Tu as l’opératateur ternaire dans le déclencheur ?
Ou bien tu as un virtuel avec l’opérateur ternaire et tu as dans le déclencheur le virtuel final.

:+1:
seconde solution ( mais c’est vrai que ce sont des tests un peu plus complexes)

Oui en gros dans mon virtuel de présence, il faudrait que je rajoutes une cmd info qui servirait d’évènement avec
Nom : DepartDeLaMaison
(IF présentdansvoiture == 1 && presentalamainson ==1) ? 1:0
Pas de répétition
(En gros si je suis à la maison et que je rentre dans la voiture via bluetooth, pour lancer scenario départ)
Et dans le déclencheur de mon scénario je mette uniquement DepartDeLaMaison == 1

Idem pour l’arrivée à la maison avec
(IF presencedelavoiture == 1 && presencealamaison ==0 && presentdanslavoiture == 1) ? 1:0
On est bien d’accord ?

Oui, sans le IF au début

(présentdansvoiture == 1 && presentalamainson ==1) ? 1:0
(presencedelavoiture == 1 && presencealamaison ==0 && presentdanslavoiture == 1) ? 1:0

Effectivement erreur de ma part mais oui effectivement cet opérateur ternaire m’a déjà été utile dans plus d’un cas :wink:
Après je suis pas sur que ça soit si optimisé que ça car on ne pas jouer avec les conditions de non répétitions.
Par exemple si tu reprends le 1er cas

(présentdansvoiture == 1 && presentalamainson ==1) ? 1:0
L’idée est d’ouvrir le portail si presentdanslavoiture passe de 0 à 1 uniquement ET si presentalamaison = 1.

Avec cet opérateur ternaire, je me rends compte que si on est dans la voiture et que si presentalamaison passe de 0 à 1 (dans ce cas là c’est plutot qu’on arrive à la maison), le portail va aussi s’ouvrir avec le même scénario. Hors j’ai besoin de 2 scénarios différents.
Donc je me dis que le déclencheur doit être vraiment presentdanslavoiture et uniquement celui la.

Le déclencheur de l’ouverture du portail à l’arrivée est plutôt presencemainson ou presencevoiture ET si presenttdanslavoiture == 1

Ce qui n’est pas du tout la même chose

Bonjour,

Niveau perf c’est quasi pareil

Non ce concept n’existe pas sur les déclencheurs.

Le ternaire est inutile ici.
Il suffit décrire

Présentvoiture ==1 && présentmaison==1
1 « J'aime »

Ok merci
Oui effectivement mais comme je disais dans mon post précédent, cela marche mais ça ne regle pas le problème que ce déclencheur double condition va déclencher mon scénario dans 2 cas possible :

  • quand je rentre dans la voiture ET si je suis à la maison (Passage au global de la condition à VRAI)
  • si je suis dans ma voiture et que j’arrive à la maison (Passage au global de la condition à VRAI)
    Donc obligé de faire 2 scénatios comme je peux le départ et l’arrivée.
    L’idée de base était d’éviter de poluer la timeline avec l’appel d’un scénario qui au final ne s’éxecute pas car il y a répétition de valeur.
    mais à priori ce n’est pas possible

Bonjour,

J’ai exactement le même constat de « pollution » de la timeline avec des scenarios dont l’exécution est conditionnée par le statut d’un virtuel.
Quelqu’un aurait-il trouvé une solution pour faire une inscription dans la timeline seulement si la première condition de mon scenario est satisfaite.

Merci beaucoup