aujourd’hui j’ai une petite question sur la fonctionnalité « ask ».
Je m’en sert principalement dans des intéractions, et j’aimerais savoir s’il est possible d’utiliser des conditions pour l’argument « commandes » : mon but est de définir à qui envoyer le ask
Aujourd’hui, je dois dupliquer toutes mes commandes ask pour les envoyer soit à Madame, soit à Monsieur (moi-même donc ) en fonction de qui aura initié l’intéraction.
On se retrouve donc avec :
j’ai essayé de différentes manières, y compris avec une fonction qui renvoie l’ID de la commande notification, mais soit je m’y prends mal, soit je n’ai pas la bonne syntaxe.
any idea ? help ?
merci !
Version : 4.0.61
Source : default
Branche : V4-stable
Système : RPI 3 B
$name_variable = xxxx; // nom de la variable qui stockera la réponse
$time_limit = yy; // time out pour la réponse
$cmd_ask = '#[zzzzzzz][zzzzzzzzzzz][Notification]#'; // nom de la commande <- la on peux imainer une conditionnel ou alors un tag passé au scénario pour choisir à qui envoyer
$scenario->setData($name_variable,'');
$options_cmd = array('title' => 'Un titre à la notif',
'message' => 'Un message ou question ? ',
'answer' => explode(';', 'Oui;Non'),
'timeout' => $time_limit,
'variable' =>$name_variable);
$cmd = cmd::byString($cmd_ask);
$cmd->setCache('ask::variable', $name_variable);
$cmd->setCache('ask::endtime', strtotime('now') + $time_limit);
$cmd->execCmd($options_cmd);
Merci pour ton retour egalement !
J avais en effet deja vu un bout de code similaire, c’etait l etape suivante a tester sur ma todo. Mais je voulais d abord verifier si un ‹ standard › etait faisable (voir meme via une fonction custom dans le user.function.class.php …!?)
Une façon de contourner cette impossibilité : utiliser un manager de notification. On retrouve ce concept dans plusieurs Todo sur le net, ainsi que dans plusieurs fils de discussion sur le forum.
En te le faisant simple si tu ne connais pas (si tu connais, ce sera pour les lecteurs qui ne connaissent pas ) :
tu crées un scénario (nommé " NotifCenter Triage " dans mon exemple ci-dessous) auquel tu envoies toutes tes notifications. En tag, tu précises entre autres choses le ou les destinataires de ta notification. Exemple d’un tel appel :
Pour chaque destinataire possible (dans mon cas superadmin, admin, parents, Éric, Sarah,…), tu y mets les notifications que tu veux.
Tout est concentré en un seul endroit, le manager de notification. Plus simple à maintenir (passage de Telegram à Discord par exemple) et plus souple d’utilisation (il suffit de désactiver le bloc relatif à l’envoi par courriel Google si je ne veux recevoir de courriel par ce biais par exemple).
Dans ton cas particulier, il suffit donc, avec ce dispositif, que le tag ‹ destinataires › prenne la valeur Tom ou Sarah en fonction de qui a initié l’interaction (faudra passer par une variable, comme varChk01 dans ma première capture d’écran, variable qui aura donc la valeur Tom ou Sarah). Le manager de notification fait le reste !
merci pour ton retour.
j’ai en effet déjà tout centralisé avec un scénario Gestion-Notif qui prend plusieurs param en entrée [et perso je n’utilise pas de variables, que JE trouve trop polluante, mais des tags ]
malheureusement ca ne répond pas à mon besoin ici …
puisque le sujet est en relation avec la commande ASK, qui réalise donc une demande et attend une réponse avant un certain délai.
Je pense qu’on doit pouvoir utiliser le « gestionnaire de notif » mais il faudrait pour cela passer par un autre scénario et utiliser des variables supplémentaires que le 1er scénario récupèrerait (la réponse du ask entre autre!)
pas certain que ce soit l’idéal dans ce cas …
alors que si le champ « commande » de ASK accepte d’avoir une fonction comme valorisation (-> qui renverrait l’ID de l’objet à utiliser pour réaliser son action), ca faciliterait grandement la chose !!
[2021-09-21 10:56:51][SCENARIO] Start : Scenario lance manuellement.
[2021-09-21 10:56:51][SCENARIO] Exécution du sous-élément de type [action] : action
[2021-09-21 10:56:51][SCENARIO] Mise à jour du tag #qui# => Tom
[2021-09-21 10:56:51][SCENARIO] Commande introuvable - Vérifiez l'id : #[Notifications][Telegram][#qui#]#
[2021-09-21 10:56:52][SCENARIO] Fin correcte du scénario
le remplacement ne se fait que au niveau equipement (2nd [ ]) ? pas au niveau cmd (3e [ ] ) ?