Hello.
Je découvre ce plugin et je m’interroge sur 2 possibilités.
Est-il possible d’avoir une option qui permet de balayer toutes les conditions plutôt que de s’arrêter à la première valide ? Ca apporterait plus de souplesse en augmentant la gestion des cas possibles et en réduisant le nombre d’équipements à créer nécessaires à la gestion des différents cas.
Est il possible de récupérer dans le plugin les variables titre et message comme dans le plugin informe ? Ca permettrait de mettre des conditions basées sur le contenu de ces variables. Par exemple, si le titre contient le mot urgent le message serait envoyé immédiatement sur un ou des équipements spécifiques.
Oui. Par exemple, tu peux vouloir systématiquement (ou à une condition près) une notif sur NTFY (ou autre) et une vocale uniquement quand tu es présent dans une pièce. Ca peut se faire, en faisant appel à 2 équipements notificationqueue dans ce cas précis, mais si tu veux envoyer la notification sur d’autres, il faudra multiplier les équipements notificationqueue. Alors que tout pourrait se gérer avec le traitement de toutes les conditions dans un seul équipement notificationqueue.
Effectivement, j’ai appelé ca des variables, mais il s’agit bien des tags #title# et #message#
si présent il va envoyer une notif via internet + vocal
si internet connecté il envoi la notif via internet
sinon il envoi un sms
tout ca dans un seul équipement
ce n’est pas une mauvaise idée mais je dois y réfléchir car ca change un peu la donne:
pour l’instant il test une seule fois la condition et envoi les messages ensuite mais il pourrait y avoir des dizaines en attentes;
là faudrait tester avec chaque message puisque #title# & #message# seront différents
de plus ca voudrait dire que certain messages sortent de la file alors que d’autres y restent
je me dis que dans ce cas là, autant avoir des équipements différents, ca ne coute rien et de toute façon à l’origine soit le message contient « urgent » soit tu utilises un autre équipement notification queue mais ca ne fait pas plus de boulot
Je n’ai pas dû saisir une subtilité. Dans l’exemple que tu donnes, tu ne recevras jamais de SMS si l’une des 2 premières conditions est vraie. Et même si tu mets plusieurs équipement dans l’action ils seront tj soumis à la même condition. Là le but c’est que chaque action avec sa(es) propre(s) condition(s) soit balayée. Si je reprends ton exemple c’est de recevoir le SMS quelque soit l’état des conditions des 2 autres actions précédentes.
Le fait de multiplier les équipements notificationqueue répond à mes 2 interrogations. L’idée était de référencer dans les scénarios un minimum d’action notificationqueue (idéalement une seule) pour centraliser la gestion des notifications sans devoir balayer tous les scénarios et autres plugins à chaque fois que tu dois supprimer ou ajouter un type de notification.
Ca ne répond pas au besoin. Si j’ajoute la commande #commande_sms# au 2 premières conditions, je n’aurai pas le SMS si elles ne sont pas valides. l’objectif est d’avoir le SMS quelque soit la validé des conditions précédentes.
Update: tu parles des commandes d’un scénario. Dans ce cas, on boucle sur ma réponse précédente, et on perd cette simplification de gestion.
Il aurait fallu un mix entre ton plugin et le plugin Informe qui aborde cette subtilité mais qui ne gère pas les queues.
Il faudrait que je te paye un verre pour en discuter oralement
Cette méthode ne couvre pas tous les cas, par exemple celui ci:
Partons du principe que je veux une notification NTFY systématique et immédiate et une notification TTS quand je serai présent dans la pièce.
Comment ferais tu ?
J’ai testé, ca ne donne pas le résultat attendu.
Dans le même équipement:
si PRESENT alors TTS && NTFY
si TRUE alors NTFY
Pour une même notification, si je ne suis pas présent je reçois le NTFY immédiatement et quand je suis présent, je n’ai pas le TTS. Normal, la queue est vide puisque envoyé par NTFY
Pour une même notification, si je suis présent, j’ai bien le NTFY et le TTS.
[2024-04-05 18:46:36] DEBUG : Send notify test with option Array ( [0] => )
[2024-04-05 18:46:36] DEBUG : Result : {"id":"XZpclU1BEhLj","time":1712335596,"expires":1712378796,"event":"message","topic":"B6Eb9RRkfitSByDLcjjWSk2evkJg3p","message":"test"}
[2024-04-05 18:47:41] DEBUG : Send notify test2 with option Array ( [0] => )
[2024-04-05 18:47:41] DEBUG : Result : {"id":"WqHnv0VdO1ah","time":1712335661,"expires":1712378861,"event":"message","topic":"B6Eb9RRkfitSByDLcjjWSk2evkJg3p","message":"test2"}
1er message: test, personne dans la cuisine, je reçois une fois le NTFY. Puis je vais dans la cuisine, pas de TTS.
2ième message: test2, je suis dans la cuisine, je reçois une fois le NTFY et j’ai le TTS.
Et à partir du moment où un message est envoyé, il n’y aura plus de nouveau passage ca c’est sur. Même si j’implémentais cette nouvelle option: il testerait alors chaque condition mais si une est ok le message sort de la file.
Je ne vais pas garder un message ad vitam jusqu’à ce que chaque conditions soient remplies.
Sinon comment ne pas la renvoyer de multiple fois pour les autres conditions traitées précédemment? Je ne vais pas retenir l’état des notifs pour chaque condition, ce n’est pas comme cela que ca fonctionne.
Pour ça il faut plusieurs équipements.
Et btw, rien n’empêche de chaîner les équipement.
Tu pourrais avoir un premier équipement (urgent) qui envoi le sms et envoi la notif à la deuxième queue (vocal) qui elle attend que quelqu’un soit présent avant de notifier
Donc c’est possible sans devoir le gérer dans ton scénario qui lui appellera l’équipement « urgent »: tu recevras un sms & le vocal lorsque qlqun sera présent
Mais oui, ca c’est une super idée. J’étais en train de tester le mix informe et notificationqueue alors qu’il est tout à fait possible de chainer notificationqueue avec lui-même.