Question HowTo Scénario qui récupère des informations et construit une variable

Bonjour

J’ai crée un scénario qui récupère des statuts de différents capteurs et les synthétise dans une variable, en fonction de certaines conditions. Le déroulement du scénario peut prendre plusieurs secondes car il attends dans certains cas des changements d’état.

Je souhaite pouvoir appeler ce scénario, soit depuis d’autres scénarios soit depuis des interactions.

Mais je souhaite que le scenario appellant (ou l’interaction) récupère la variable construite par le scenario appelé (et non son appel précédent)

Faut-il utiliser l’action Start (sync) pour cela ?
image

Y a-t-il une autre solution / moyen de faire cela ?

Salut,
Toutes les variables définies sont globales.
Tu peux les récupérer d’un scénario à un autre ou dans des virtuels.
Pour les scénarios tu utilises le paramètre variable dans les équipements, pour les virtuels, tu utilises variable(mavariable)

Merci @mich0111

existe-t-il un moyen de dire au scénario appellant, d’attendre la fin d’execution de celui appelé pour continuer ?
via un wait ?

Le sleep existe, tu as également le A qui peut te permettre de déclencher dans tant de temps.
Sinon pour lancer un scénario exactement à la fin d’un autre je ne sais pas dire.
Peut-être mais je ne suis pas capable de te dire.

Sinon, je.vois bien un moyen pas très élégant mais qui marche.
Ton scénario appelant tu le scindes en 2.
La dernière instruction de la première partie serait le lancement du scénario.
Et, à la fin du scénario appelé, tu appelles la deuxième partie du scénario scindé en 2.

cela ne solutionne pas mon problème le scenario appelé l’est aussi par des interactions :’(

le sleep est actuellement bancal
le truc que je vois c’est une variable globale que je mets à 0 avant l’appel du scénario, la dernière instruction la mets à 1
Et je mets un Wait sur var=1

Mais je suppose qu’il doit bien y avoir un tag pour dire que le scenario appelé est fini

Peut-être, mais s’il existe, je ne le connais pas.
Mais si au lieu d’une variable, tu mets un virtuel et que dans ton scénario tu mets comme déclencheur le changement d’état de ton scénario, tu l’as ton tag.

Il faut que je trouve un exemple de virtuel qui colle à cela

Tu n’as qu’à te créer un switch virtuel et tu agis dessus comme un interrupteur ON/OFF.
Dans ton scénario, tu mets en déclencheur l’état de ce switch.
Concrètement, ton virtuel ressemblera à ça :

Hello,
Je prends la discussion en cours, mais de ce que je comprend, tu veux juste que le scénario appelant « attende » la fin du scénario appelé qui met à jour ta variable.
Pour cela, tu as raison, il suffit de lancer le scenario appelé avec Start Sync
Tu peux verifier en nous envoyant les log de ton scenario appelant.

1 « J'aime »

Super, merci, j’ai appris quelque chose.

Merci !

bon voyons voir comment demander l’ajout dans la doc de l’explication de l’action Start Sync

Merci, je vois bien comment utiliser cela pour éviter des appels simultanés de mon scénario

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