Connaître le trigger() d'un scénario
Re: Connaître le trigger() d'un scénario
Pas mal..
Mais c'est souvent en posant la question qu'on trouve la réponse..
Envoyé de mon Nexus 6P en utilisant Tapatalk
Mais c'est souvent en posant la question qu'on trouve la réponse..
Envoyé de mon Nexus 6P en utilisant Tapatalk
Jeedom 3 sur Debian 9 en VM Proxmox 5 sur NUC Intel.
(Anciennement sur Docker sur Syno DS-415+ / MariaDB / DSM 6)
Teleinfo / RFXCom / Stick ZWave / IPX / Serveur Traccar / Blea
(Anciennement sur Docker sur Syno DS-415+ / MariaDB / DSM 6)
Teleinfo / RFXCom / Stick ZWave / IPX / Serveur Traccar / Blea
- diving91
- Timide
- Messages : 372
- Inscription : 08 mars 2015, 18:29
- Localisation : Essonne (91)
- Contact :
Re: Connaître le trigger() d'un scénario
Bonjour,
A noter que #trigger# est vide quand le scenario est appelé via l'API http ( je suis en V3.1.7)
diving
A noter que #trigger# est vide quand le scenario est appelé via l'API http ( je suis en V3.1.7)
Code : Tout sélectionner
http://#IP_JEEDOM#/core/api/jeeApi.php?apikey=#APIKEY#&type=scenario&id=#ID#&action=#ACTION#
Diving91,
RPI2 + SSD 30MB - RfxTrx433E - Store Somfy - Led Milight - MySensors Gateway ESP8266 - Noeuds ESP Easy
Ma Station Météo sous Jeedom
RPI2 + SSD 30MB - RfxTrx433E - Store Somfy - Led Milight - MySensors Gateway ESP8266 - Noeuds ESP Easy
Ma Station Météo sous Jeedom
Re: Connaître le trigger() d'un scénario
Bonjour,
C'est normal faut etre en 3.2.X pour avoir le paramètre trigger.
C'est normal faut etre en 3.2.X pour avoir le paramètre trigger.
Aide nous à t'aider : mets des logs, détaille ton soucis... Vous n'aurez aucune réponse de ma part si votre demande n'est pas détaillée (log, capture d'écran lisible...) ou si vous ne postez pas dans la bonne section
- diving91
- Timide
- Messages : 372
- Inscription : 08 mars 2015, 18:29
- Localisation : Essonne (91)
- Contact :
Re: Connaître le trigger() d'un scénario
Bonjour,
OK - merci; j'avais bien vu dans le changelog que jeeAPI pour accéder aux variables est à partir de v3.2.x mais pas pour #trigger#
au passage, je pense que cela enrichirai la doc "scenario" si les différentes valeur de #trigger# étaient documenté comme fait dans le premier post de ce fil.
PS: je le propose seulement (un peu passif) car je ne sais pas faire, sinon, j'aurai soumis un "commit" (plus actif) sur la doc
diving
Diving91,
RPI2 + SSD 30MB - RfxTrx433E - Store Somfy - Led Milight - MySensors Gateway ESP8266 - Noeuds ESP Easy
Ma Station Météo sous Jeedom
RPI2 + SSD 30MB - RfxTrx433E - Store Somfy - Led Milight - MySensors Gateway ESP8266 - Noeuds ESP Easy
Ma Station Météo sous Jeedom
Re: Connaître le trigger() d'un scénario
Ben tu as soit schedule soit api soit le nom de la commande. Voila les valeurs possible
Aide nous à t'aider : mets des logs, détaille ton soucis... Vous n'aurez aucune réponse de ma part si votre demande n'est pas détaillée (log, capture d'écran lisible...) ou si vous ne postez pas dans la bonne section
- diving91
- Timide
- Messages : 372
- Inscription : 08 mars 2015, 18:29
- Localisation : Essonne (91)
- Contact :
Re: Connaître le trigger() d'un scénario
je trouvais le texte de masterfion assez sympa.
il liste aussi interact, user et #schedule# (et pas schedule) (celui là je le vois aussi en V3.1.7)Lorsqu'un scénario est exécuté par un déclencheur alors le trigger est "[Nom du déclencheur]"
Lorsqu'un scénario est exécuté par une programmation alors le le trigger est "#schedule#"
Lorsqu'un scénario est exécuté manuellement alors le trigger est "user"
Lorsqu'un scénario est exécuté par une interaction alors le trigger est "interact"
Lorsqu'un scénario est exécuté à partir d'un autre scénario, le trigger est "[Groupe][Nom du scenario]"
Lorsqu'un scénario est exécuté par lui même à partir d'un bloc A puis un time_op "+5mn" alors le trigger est "[Groupe][Nom du scenario]"
Lorsqu'un scénario est exécuté par lui même à partir d'un bloc DANS "5mn", il n'existe aucun trigger puisque DANS génère une sous-tâche
Diving91,
RPI2 + SSD 30MB - RfxTrx433E - Store Somfy - Led Milight - MySensors Gateway ESP8266 - Noeuds ESP Easy
Ma Station Météo sous Jeedom
RPI2 + SSD 30MB - RfxTrx433E - Store Somfy - Led Milight - MySensors Gateway ESP8266 - Noeuds ESP Easy
Ma Station Météo sous Jeedom
Re: Connaître le trigger() d'un scénario
Effectivement j'en ai oublié quelqu'un c'est ajouté dans la doc. Par contre pour moi c'est schedule et plus #schedule#
Aide nous à t'aider : mets des logs, détaille ton soucis... Vous n'aurez aucune réponse de ma part si votre demande n'est pas détaillée (log, capture d'écran lisible...) ou si vous ne postez pas dans la bonne section
- diving91
- Timide
- Messages : 372
- Inscription : 08 mars 2015, 18:29
- Localisation : Essonne (91)
- Contact :
Re: Connaître le trigger() d'un scénario
Merci beaucoup.
en 3.1.7 je confirme que c'est #schedule# - donc ça doit être un changement 3.2 (et c'est mieux car plus cohérent avec le reste).
Je passerai en 3.2 une fois que j'aurai réglé mes widgets qui sont encore à l'ancienne sauce
Encore merci
diving
Diving91,
RPI2 + SSD 30MB - RfxTrx433E - Store Somfy - Led Milight - MySensors Gateway ESP8266 - Noeuds ESP Easy
Ma Station Météo sous Jeedom
RPI2 + SSD 30MB - RfxTrx433E - Store Somfy - Led Milight - MySensors Gateway ESP8266 - Noeuds ESP Easy
Ma Station Météo sous Jeedom
Re: Connaître le trigger() d'un scénario
Question annexe : est-ce qu’on a une chance de revoir le tag user revenir? Pour savoir qui a lancé le scénario (via les interactions pas ex). Car j’ai vu qu’en 3.2, on pouvait associer une commande de notification à chaque utilisateur. Mais comment s’en servir ensuite?
Jeedom 3 sur Debian 9 en VM Proxmox 5 sur NUC Intel.
(Anciennement sur Docker sur Syno DS-415+ / MariaDB / DSM 6)
Teleinfo / RFXCom / Stick ZWave / IPX / Serveur Traccar / Blea
(Anciennement sur Docker sur Syno DS-415+ / MariaDB / DSM 6)
Teleinfo / RFXCom / Stick ZWave / IPX / Serveur Traccar / Blea
- Theduck38
- Helper
- Messages : 2714
- Inscription : 22 févr. 2015, 17:32
- Localisation : Près de Grenoble
- Contact :
Re: Connaître le trigger() d'un scénario
Hello,
En 3.2.7, le trigger pour le schedule s'écrit :
trigger()=="schedule"
ou
trigger(schedule)==1
@Masterfion, tu pourrais modifier le premier post STP ?
En 3.2.7, le trigger pour le schedule s'écrit :
trigger()=="schedule"
ou
trigger(schedule)==1
@Masterfion, tu pourrais modifier le premier post STP ?
-- TD38 --
Helper Officiel Jeedom
Zimeteo sur Jeedom : http://www.meteo.lecoin.info
Jeedom Stable sur serveur custom
Le risque électrique - Afficheur leds RGB - Tablette Murale - Thermostat connecté
Helper Officiel Jeedom
Zimeteo sur Jeedom : http://www.meteo.lecoin.info
Jeedom Stable sur serveur custom
Le risque électrique - Afficheur leds RGB - Tablette Murale - Thermostat connecté
- Theduck38
- Helper
- Messages : 2714
- Inscription : 22 févr. 2015, 17:32
- Localisation : Près de Grenoble
- Contact :
Re: Connaître le trigger() d'un scénario
Bonjour,
J'ai un petit souci... un scénario qui se déclenche temporellement plus sur une remontée de température extérieure...
Si j'écris en condition :
trigger()=="schedule" => ça marche pour les schedules
MAIS
quand la température vaut zéro, j'obtiens :
0=="schedule" => TRUE !!!
En utilisant "matches", ça ne fonctionne pas du tout (ou alors je n'ai pas compris lusage, car sur mon évaluateur, "schedule" matches "/schedule/" donne toujours faux).
Quelqu'un sait résoudre ce cas ? J'ai triché en mettant dans ma condition un test sur la valeur des minutes mais ce n'est pas très élégant.
LA question, aussi, c'est pourquoi diable Jeedom pense que 0 est égal à "schedule"...
[Edit] Avec trigger(schedule)==1, ça marche... il n'empêche que la question précédente reste valable...
J'ai un petit souci... un scénario qui se déclenche temporellement plus sur une remontée de température extérieure...
Si j'écris en condition :
trigger()=="schedule" => ça marche pour les schedules
MAIS
quand la température vaut zéro, j'obtiens :
0=="schedule" => TRUE !!!
En utilisant "matches", ça ne fonctionne pas du tout (ou alors je n'ai pas compris lusage, car sur mon évaluateur, "schedule" matches "/schedule/" donne toujours faux).
Quelqu'un sait résoudre ce cas ? J'ai triché en mettant dans ma condition un test sur la valeur des minutes mais ce n'est pas très élégant.
LA question, aussi, c'est pourquoi diable Jeedom pense que 0 est égal à "schedule"...
[Edit] Avec trigger(schedule)==1, ça marche... il n'empêche que la question précédente reste valable...
-- TD38 --
Helper Officiel Jeedom
Zimeteo sur Jeedom : http://www.meteo.lecoin.info
Jeedom Stable sur serveur custom
Le risque électrique - Afficheur leds RGB - Tablette Murale - Thermostat connecté
Helper Officiel Jeedom
Zimeteo sur Jeedom : http://www.meteo.lecoin.info
Jeedom Stable sur serveur custom
Le risque électrique - Afficheur leds RGB - Tablette Murale - Thermostat connecté
Re: Connaître le trigger() d'un scénario
Bonjour,
Pour répondre à ta question, PHP tente de transformer ta chaîne de caractère en numérique. Vu qu'il n'y a pas de chiffre, ta chaîne vos 0. Donc le résultat est vrai.
Si tu ne veux pas de conversion, il faut utiliser ===
Pour répondre à ta question, PHP tente de transformer ta chaîne de caractère en numérique. Vu qu'il n'y a pas de chiffre, ta chaîne vos 0. Donc le résultat est vrai.
Code : Tout sélectionner
0=="1toto" -> FAUX
0=="toto" -> VRAI
1=="1toto" -> VRAI
1=="toto" -> FAUX
Il y a 10 catégories de personnes, celles qui connaissent le binaire et les autres
.
.
- Theduck38
- Helper
- Messages : 2714
- Inscription : 22 févr. 2015, 17:32
- Localisation : Près de Grenoble
- Contact :
Re: Connaître le trigger() d'un scénario
OK... je ne connaissais pas le truc du triple égal. Merci !
-- TD38 --
Helper Officiel Jeedom
Zimeteo sur Jeedom : http://www.meteo.lecoin.info
Jeedom Stable sur serveur custom
Le risque électrique - Afficheur leds RGB - Tablette Murale - Thermostat connecté
Helper Officiel Jeedom
Zimeteo sur Jeedom : http://www.meteo.lecoin.info
Jeedom Stable sur serveur custom
Le risque électrique - Afficheur leds RGB - Tablette Murale - Thermostat connecté
Re: Connaître le trigger() d'un scénario
Ce n'est pas tout a fait vrai.Lorsqu'un scénario est exécuté par lui même à partir d'un bloc DANS "5mn", il n'existe aucun trigger puisque DANS génère une sous-tâche
Code : Tout sélectionner
#trigger# == "scenario"
Effectivement, on ne spécifie pas son nom, on pourrait penser que la confusion serait facile, mais comme dans tous les autres cas on precise le nom, c'est finalement pas si grave.
J'ajoute que si l'on souhaite connaître le nom du trigger dans le cadre de debug, il suffit d'ajouter un bloc action qui créer une variable dont le valeur sera #trigger#... ne reste plus qu'a regarder dans la log ou dans les variables presentes la valeur dont elle herite.
enfin. pour celui qui se demande qu'elle difference entre #trigger# et trigger(), je pense que :
#trigger# est un appel a une variable
trigger() est un appel a une fonction
donc
#trigger# == "Nom de la commande" retourne vrai ou faux
trigger("Nom de la commande") == 1 retourne vrai ou faux également.
la façon de faire est juste différente
Re: Connaître le trigger() d'un scénario
Bonjour,
je souhaiterais par un code php trouver l'ID ou le nom du scénario déclenchant ...
La commande $declencheur=$scenario->getRealTrigger(); me donne bien "scenario" mais pas le num du scénario ...
dans l'exemple $declencheur n'est pas un array et je ne trouve pas la méthode a utiliser ...
qqn a t il une idee ?
merci d'avance
je souhaiterais par un code php trouver l'ID ou le nom du scénario déclenchant ...
La commande $declencheur=$scenario->getRealTrigger(); me donne bien "scenario" mais pas le num du scénario ...
dans l'exemple $declencheur n'est pas un array et je ne trouve pas la méthode a utiliser ...
qqn a t il une idee ?
merci d'avance
Re: Connaître le trigger() d'un scénario
malheureusement non ...
Cela ne fonctionne pas ... pour récupérer le nom d'un object, je ne sais pas je n'ai pas essayé, mais lorsqu'un scenario est le déclencheur, la méthode getRaelTrigger ne renvoie que "scenario" sans préciser lequel ...
Mon souci est que des scénario chez moi peuvent être appelés par plusieurs scenario différents, et que le comportement de ces scénario dépend du trigger ...
Pour l'instant, je fonctionne avec des tags ... mais récupérer le trigger sans devoir est plus élégant...
Cela ne fonctionne pas ... pour récupérer le nom d'un object, je ne sais pas je n'ai pas essayé, mais lorsqu'un scenario est le déclencheur, la méthode getRaelTrigger ne renvoie que "scenario" sans préciser lequel ...
Mon souci est que des scénario chez moi peuvent être appelés par plusieurs scenario différents, et que le comportement de ces scénario dépend du trigger ...
Pour l'instant, je fonctionne avec des tags ... mais récupérer le trigger sans devoir est plus élégant...
Qui est en ligne ?
Utilisateurs parcourant ce forum : Aucun utilisateur inscrit et 10 invités