Bonjour,
Je ne trouve pas comment faire syntaxe suivante dans un scénario :
SI : COMMANDE_01 ET Scénario « mode vacance » arrêté
alors action…
C’est bête de galérer la dessus…merci d’avance.
Bonjour,
Je ne trouve pas comment faire syntaxe suivante dans un scénario :
SI : COMMANDE_01 ET Scénario « mode vacance » arrêté
alors action…
C’est bête de galérer la dessus…merci d’avance.
Bonjour,
Il me semble que gérer l’état d’un scénario ne se fait que par code.
Mais peut-être que j’ai loupé un truc.
Si c’est bien ça, ça ne passerait que par l’écriture d’un bloc code.
Bonjour,
Dans la doc.
scenario(scenario) : Renvoie le statut du scénario. 1 : En cours, 0 : Arrêté, -1 : Désactivé, -2 : Le scénario n’existe pas, -3 : L’état n’est pas cohérent. Pour avoir le nom “humain” du scénario, vous pouvez utiliser le bouton dédié à droite de la recherche de scénario.
non ca ne marche pas « expression invalide »
@mich0111 j’avais pensé à ta solution en gros SI condition 1 alors je lance un autre SI et après mes actions. Mais c’était pour « économiser » de la ressource jeedom et faire ça proprement
Namion, @mich0111 et @Madcow disaient de passer par un bloc code pour vérifier si un scénario est en cours d’exécution ou non. C’est seulement à l’issue du bloc code que tu pourrais récupérer son état dans les blocs normaux de ton scénario donc par exemple comme ça si #[Systeme][Sécurité][Mode vacance]# est le scénario qui doit être testé.
Le tag ScenarioIsRunning permettra de récupérer l’état (0 ou 1)
$sc = scenario::byString('#[Systeme][Sécurité][Mode vacance]#');
$running = $sc->running();
$tags = $scenario->getTags();
if ($running) {
$tags['#ScenarioIsRunning#'] = '1';
} else {
$tags['#ScenarioIsRunning#'] = '0';
}
$scenario->setTags($tags);
EDIT : en effet, par besoin de bloc code, la fonction scenario() est disponible sans ça.
Bonjour,
Ou sinon tu passes une variable à 1 dans ton 1er scénario et dans le 2ème tu vérifies l’état de ta variable (au lieu du scénario)
Suivant ce que tu veux faire, ça peut suffire…
@Madcow t’a donné la bonne réponse.
Il faut utiliser la bonne syntaxe qu’il t’a fourni.
scenario(#[Le nom][de mon][scenario]#) == 0
Donc, pas besoin de bloc code.
Merci pour le détails du script, j’avais mis les parenthèses jusqu’à la valeur 0 donc ça ne marché pas…saleté, pour les commandes ça englobe tout et pour une « variable » non…
Merci @Bison pour le « code » j’avou être encore trop newbie pour y avoir pensé/arriver à le faire marcher.
Voilà ma finalité/solution si ça peut en aider d’autres :
C’est @Madcow qui a donné la bonne solution.
@namion, il faudrait cocher la case solution sur son post.
Merci à tous !
Ce sujet a été automatiquement fermé après 24 heures suivant le dernier commentaire. Aucune réponse n’est permise dorénavant.