Utilisation de tag dans un autre tag

Bonjour,

Est-il possible d’utiliser les tags par défaut, comme le tag #jour# dans un autre tag ?

J’aimerais définir un tag modeJour= #[xxx][xxx][#jour#]# où #[xxx][xxx][#jour#]# est une info disponible pour chaque jour de la semaine.

J’ai besoin de ce tag pour déclencher un scénario après une action spécifique.

Merci

Oui mais je ne pense pas que cela puisse s’écrire comme ça.
Si ton info est dans un équipement, tu définis une info « jour » dans laquelle tu mets la valeur #jour# et tu t’en sers comme n’importe quelle autre commande.
Là c’est sûr que ça marchera.

Bonjour

Il suffit d’essayer !
Un scénario de test
—Action : tag : test : #jour#
—Action : log : tag test = tag(test)
Si le log affiche le jour
La réponse est oui…
:slight_smile:
Sorry, pas envie de divulgacher la fin de l’intrigue

Quand je teste : modeJour=#[Maison][Chauffage salon][#jour#]#, j’ai ça dans les logs :
Tags : {"#modeJour#":"#[Maison][Chauffage"}

Je pense que ça ne doit pas pouvoir s’utiliser tel quel.

En mettant une info dans l’équipement, le problème est que je ne pourrais pas imbriquer les 2 infos pour avoir la bonne info de l’équipement

1 « J'aime »

Le problème n’est pas ici le tag = quelque chose
Le problème est que vous mettez un tag dans le nom humain correspondant à un id.
Là, ca sera pas possible.
(Le tag lui renvoie la bonne info. Si vous copier se que vous mettez dans le tag dans le testeur d’expression, celui-ci vous retournera la meme chose…)
Je peux pas vous en dire plus (je code pas), mais la solution sera probablement un bloc code qui recompose l’id humain….
Avec un :
$cmdId = cmd::byString("#[sondes][Sondes SdB][Humidité]#")->getId();

Pour dépanner / En beaucoup moins classe
Si #jour# == lundi
Alors tag xx = virtuel du lundi
Sinon
—— si jour = …etc

Bonsoir,

C’est limite incompréhensible :wink:
Peux-tu exposer se que tu veut faire, (Ex: scenario 1 lance scénario 2 …) il existe peut-être une autre méthode pour arriver au résultat souhaité.
Car déja, je ne comprend pas pourquoi envoyer #jour# dans un tag a un autre scénario, alors que ce scénario peut lui même calculer le tag #jour#…

C’est clairement une question pour vous !
:slight_smile:
Il veux récupérer l’info contenue dans une commande (parmi 7 / 7 jours)
Le nom humain de la commande fini par un jour
Exempl

#[Maison][Chauffage salon][lundi]#

Le jour J
Il veux récupérer l’info contenue dans la commande finissant par jour J
Ici lundi
C’est un jeu avec des guillemets et la commande que j’ai mis plus haut
Mais je sais que vous le traduirait / coderai, mieux que moi !
(J’espère être meilleur traducteur que codeur :rofl:)

<sujet off>

« C’est clairement une question pour toi ! » me vas aussi @Henri :wink:

<sujet on>

c’est mieux, mais toujours pas compris le contexte :rofl:

C’est pas tout a fait ce que j’ai compris dans le message d’origine, mais si c’est bien le cas, la meilleur méthode serait celle que tu cite :

On va attendre que @Dark-k donne plus de précision…

Oui, c’est exactement ce que je souhaitais faire mais depuis les actions exécutées après une autre action (PostExec).
Après plusieurs essais, j’ai abandonné cette idée et j’ai fait appel à un autre scenario en postExec avec un tag qui me permet de faire ce que je veux.

J’ai aussi un scénario dans lequel j’ai ajouté ce bloc code pour faire la même chose avec la seule subtilité que $jour est en anglais :

setlocale(LC_TIME, 'fr_FR.UTF8');
$jour = ucfirst(strftime('%A'));

$mode_jour = cmd::byString('#[Maison][Chauffage salon]['.$jour.']#')->execCmd();

$tags = $scenario->getTags();
$tags['#modeJour#'] = cmd::byString('#[Maison][Chauffage salon]['.$jour.']#')->execCmd();
$scenario->setTags($tags);
  

Merci pour vos réponses.