Je dispose de plusieurs de ces têtes et j’en suis satisfait.
Voulant aller plus loin, j’ai mis en place un scénario actionné par bin virtuel pour pouvoir Booster à la demande le chauffage dans mon bureau
Élément Sauvegarder dans une variable (Vanne_Bureau_Seb_Etat) l’état actuel de la vanne (pour le remettre à la fin du scénario
Élément Basculer en mode Boost pour ouvrir la vanne à fond (durant 5 min = 300 s)
Élément Basculer en mode chauffage avec une consigne de température à une variable Temp_boost
cela durant (3300 sec, pour faire 1 heure au total)
Élément et enfin recalculer au mode initial sauvegardé dans la variable Vanne_Bureau_Seb_Etat
Tout fonctionne sauf cette dernière commande … je pense que c’est juste un problème de syntaxe mais j’ai beau avoir tout retourné/testé, je n’y arrive pas
Si je change et que j’écris en dur le mode souhaité, ici Eco, cela fonctionne
Alors que si je laisse avec la variable, cela ne marche pas. Ci dessous des screens du testeur d’expression
Essaye juste avec des quotes autour de Eco pour ton test :
variable(Vanne_Bureau_Seb_Etat) == 'Eco'
Pour ta commande, inutile de passer par un bloc code, tu peux le faire via des actions classiques (event dans ton cas, ou évènement dans la sélection de la commande)
Si tu souhaites passer par un bloc code, il faut recupérer ta variable dans le bloc code. Tu trouveras toutes le sinfos necessaires :
Autre remarque, tu sembles utiliser une commande info pour pousser ta consigne Eco. C’est assez surprenant. Tu n’as pas une commande action pour ca ? une commande de type #[Bureau Seb][bureau Seb][Eco]# ?
Cela n’a pas un rapport direct avec votre question mais n’utilisez pas le sleep pour des périodes supérieur à quelques minutes; 2 à 3 min grand max, plutôt en dessous de la minute.
Je n’avais pas conscience que le fait de modifier l’info n’aurait pas d’effet sur la vanne.
Alors ou ij;ai des commandes actions, mais le problème est que je ne sais pas laquelle utiliser. Eco, Chauffage, Boost ? Le mode en cours lors du lancement du scénario n’est jamais le même, c’est pour cela que je voulais le sauvegarder dans une variable en début de scénario pour pouvoir le remettre à la fin du scénario
Une idée un peu tirée par les cheveux est de « reconstruire » la commande à appeler avec le nom du mode dans la variable (dans un bloc code) et d’ensuite utiliser cette commande.
Il faut juste renommer les commandes actions pour que leur nom corresponde exactement au nom du mode (ce qui est le cas où presque par défaut avec ces vannes).
Si tu ne sais pas utiliser les blocs code, va au plus simple :
Tu indiques le mode actuel dans une variable comme tu l’as fait.
Et à la fin tu mets des si
Si variable(état) == ‹ eco ›
Alors commande eco
Si variable(état) == ‹ chauffage ›
Alors commande chauffage
( Fait nous un screenshot des commandes de ta vanne. Elles dépendent en effet du plugin que tu utilises)
Par contre, dans le futur scénario, je vais devoir scinder ce bloc code en 2 pour insérer entre 2 des actions "classiques et la ca ne fonctionne plus. Pour l’exemple j’ai mis un sleep
Si on regarde le log, message la commande n’a pas être trouvée, il semblerait que le probléme provient de la variable qui disparait, il manque en effet une partie, la commande aurait du être [Bureau Seb][Bureau Seb][Eco]#
Bonsoir,
dans ton 2eme Bloc code il faut initier ta variable jeedom.
rajoute : $Vanne_Bureau_Seb_Etat = $scenario->getData('Vanne_Bureau_Seb_Etat'); avant la ligne cmd::byString('#[objet][equipement]['.$Vanne_Bureau_Seb_Etat.']#')->execCmd();