Le problème est que le flow se lance plusieurs fois vu que les déclencheur sont modifiés pendant le flow. Sur les automatisation d’HA j’avais contourné ce problème de la façon suivante :
Déjà, la « logique » de vouloir synchroniser deux listes d’état comme ça m’échappe.
Mais, bon, il y a surement une raison que l’on ne voit pas de loin.
En fait, il ne faut avoir qu’un seul appel au noeud current-state sans mettre de condition dedans.
En sortie de ce noeud, un noeud switch avec les diverses conditions et en face de chaque condition appeler le noeud call-service avec les paramètres qui vont bien.
Visuellement un truc comme ça :
J’avoue ne pas avoir pris ce problème à la racine et voir si il n’est possible de faire un cycle inversé avec Node Red.
Ok je vois ce que tu veux dire avec le switch. On est bien d’accord que cela reviens à la même chose que ce que j’ai fait ? Mise à part que ca fasse beaucoup plus propre ?
Pour l’aspect de la logique, j’aurais, je pense, plus fait une liste 1, 2, 3 associée à un boolean true (monte) / false (descend).
Sachant que le booleen est utilisé en test à 2 et est inversé quand on arrive à 1 ou à 3.
Mais, bon, ça doit revenir au même.
J’ai fait comme tu m’as conseillé et effectivement c’est plus simple et surtout fonctionel ! Il faut que je sorte de ma logique des automatisation avec home assistant pour adopter celle de Node Red !