Action qui ne déclenche pas sur Watchdog de type méthode OU

Bonjour,

J’ai défini un Watchdog de type méthode OU comportant plusieurs commandes. Ce type de Watchdog doit normalement déclencher une action si l’une des commandes est « true » mais cela ne fonctionne pas mon action ne se déclenche pas.

Si je modifie le type en « Actions sur chaque contrôle indépendamment » mon action se déclenche bien.

Est-ce que j’ai mal compris le fonctionnement de la méthode OU ?

Merci pour votre aide.

Bonjour, désolé, j’étais passé à côté de ton message.

Il se peut qu’il y ait quelque chose à vérifier sur le fonctionnement du « ou » . Je l’utilise très peu car j’utilise habituellement « Actions sur chaque contrôle indépendamment » cela me semble bien plus cohérent.

Je voudrais reproduire un cas concret de quelque chose qui ne fonctionne pas correctement pour tester les calculs faits par le plugin. Si tu as un exemple avec tes écrans je suis preneur, et on fait les tests ensemble.

A ton service pour corriger cela si besoin.
a+

Bonjour,

Merci pour votre réponse. En fait je ne sais pas si j’ai bien compris le principe du OU. Si l’action se déclenche dès qu’un contrôle est « True » cela revient au même fonctionnement que « Actions sur chaque contrôle indépendamment ». Or j’ai créé un watchdog avec 7 contrôles, l’action étant de m’envoyer un message. Lorsque le fonctionnement est « Actions sur chaque contrôle indépendamment » cela fonctionne parfaitement je reçois un message dès qu’un contrôle passe à « true » mais si le fonctionnement est « Actions sur l’ensemble des contrôles (avec méthode OU) », je ne reçois jamais de message.

En fait je pense n’avoir pas compris le fonctionnement du OU.

Salutations

J’ai relu la doc pour voir ce que j’avais écrit au moment de la création, cela correspond avec ce que j’avais en tête en te lisant :

Les trois modes sont :

  • Actions sur chaque contrôle indépendamment : Ce mode teste indépendamment chaque contrôle et déclenche les actions quand ce contrôle a changé d’état
  • Actions sur l’ensemble des contrôles (avec méthode OU) : Ce mode teste le résultat global des contrôles en y appliquant un test « OU » entre chaque contrôle. Il déclenche les actions quand le résultat global a changé d’état.
  • Actions sur l’ensemble des contrôles (avec méthode ET) : Ce mode teste le résultat global des contrôles en y appliquant un test « ET » entre chaque contrôle. Il déclenche les actions quand le résultat global a changé d’état.

Après, comme j’utilise principalement la 1ere option, il se peut qu’il y ait un souci sur le OU, je vais tester …

Si je comprends bien la différence entre le contrôle indépendamment et le OU c’est qu’en OU si plusieurs contrôles passent à « true » en même temps une seule action est déclenchée. Sinon je ne vois pas d’autres différences entre ces deux méthodes. Mais dans ce cadre la le OU a bien une réelle utilisée pour moi en tout cas, car je souhaite unifier en une seule action pour faire un rapport de tous les contrôles.

Oui, c’était bien ça mon idée. si tu controles 5 équipements, ce peut être pénible d’avoir 5 notifications donc tu n’aurais qu’un message de notif.

J’ai activer ce Watchdog et j’attends 13 heures pour voir si l’action se déclenche :

Dans mes tests précédents je ne recevais jamais le message déclenché par l’action.

? 13h ? il est 13h32 :innocent: :rofl:

14h pardon j’ai mis un Cron chaque heure.

d’ac. 14h !
Regarde aussi les logs voir ce qu’il se passe.

Aucune action et rien dans le log. Si je retourne dans le watchdog j’ai bien un contrôle à « true » :

Dans le log y’a rien rien ? même pas le déclenchement du cron ?

Non rien du tout. Je viens de passer le log de défaut à debug.

ha oui, faut être en débug, mets un test toutes les minutes pour pas attendre 15h

Aucun déclenchement de l’action, voici le log :

[2020-04-19 14:38:29][DEBUG] : [eqLogic] preSave de Plantes
[2020-04-19 14:38:29][DEBUG] : [eqLogic] preUpdate de Plantes
[2020-04-19 14:38:29][DEBUG] : [eqLogic] postUpdate de Plantes
[2020-04-19 14:38:29][DEBUG] : [eqLogic] postSave de Plantes
[2020-04-19 14:38:29][DEBUG] : [cmd] preSave de Salon, Dypsis
[2020-04-19 14:38:29][DEBUG] : [Contrôle] Salon, Dypsis : #4144#!=57 => Resultat : False
[2020-04-19 14:38:29][DEBUG] : [cmd] preUpdate de Salon, Dypsis
[2020-04-19 14:38:29][DEBUG] : [cmd] postUpdate de Salon, Dypsis
[2020-04-19 14:38:29][DEBUG] : [cmd] postSave de Salon, Dypsis
[2020-04-19 14:38:29][DEBUG] : [cmd] preSave de Salle à manger, Aloe
[2020-04-19 14:38:29][DEBUG] : [Contrôle] Salle à manger, Aloe : #4103#!=75 => Resultat : False
[2020-04-19 14:38:29][DEBUG] : [cmd] preUpdate de Salle à manger, Aloe
[2020-04-19 14:38:29][DEBUG] : [cmd] postUpdate de Salle à manger, Aloe
[2020-04-19 14:38:29][DEBUG] : [cmd] postSave de Salle à manger, Aloe
[2020-04-19 14:38:29][DEBUG] : [cmd] preSave de Salle à manger, Citrus
[2020-04-19 14:38:29][DEBUG] : [Contrôle] Salle à manger, Citrus : #4073#!=36 => Resultat : False
[2020-04-19 14:38:29][DEBUG] : [cmd] preUpdate de Salle à manger, Citrus
[2020-04-19 14:38:29][DEBUG] : [cmd] postUpdate de Salle à manger, Citrus
[2020-04-19 14:38:29][DEBUG] : [cmd] postSave de Salle à manger, Citrus
[2020-04-19 14:38:29][DEBUG] : [cmd] preSave de Salle à manger, Cycas
[2020-04-19 14:38:29][DEBUG] : [Contrôle] Salle à manger, Cycas : #3915#!=41 => Resultat : False
[2020-04-19 14:38:29][DEBUG] : [cmd] preUpdate de Salle à manger, Cycas
[2020-04-19 14:38:29][DEBUG] : [cmd] postUpdate de Salle à manger, Cycas
[2020-04-19 14:38:29][DEBUG] : [cmd] postSave de Salle à manger, Cycas
[2020-04-19 14:38:29][DEBUG] : [cmd] preSave de Salle à manger, Dracaena
[2020-04-19 14:38:29][DEBUG] : [Contrôle] Salle à manger, Dracaena : #4093#!=65 => Resultat : False
[2020-04-19 14:38:29][DEBUG] : [cmd] preUpdate de Salle à manger, Dracaena
[2020-04-19 14:38:29][DEBUG] : [cmd] postUpdate de Salle à manger, Dracaena
[2020-04-19 14:38:29][DEBUG] : [cmd] postSave de Salle à manger, Dracaena
[2020-04-19 14:38:29][DEBUG] : [cmd] preSave de Salle à manger, Monstera
[2020-04-19 14:38:29][DEBUG] : [Contrôle] Salle à manger, Monstera : #4083#!=66 => Resultat : False
[2020-04-19 14:38:29][DEBUG] : [cmd] preUpdate de Salle à manger, Monstera
[2020-04-19 14:38:29][DEBUG] : [cmd] postUpdate de Salle à manger, Monstera
[2020-04-19 14:38:29][DEBUG] : [cmd] postSave de Salle à manger, Monstera
[2020-04-19 14:38:29][DEBUG] : [cmd] preSave de Entrée, Beaucarnea
[2020-04-19 14:38:29][DEBUG] : [Contrôle] Entrée, Beaucarnea : #3380#!=32 => Resultat : False
[2020-04-19 14:38:29][DEBUG] : [cmd] preUpdate de Entrée, Beaucarnea
[2020-04-19 14:38:29][DEBUG] : [cmd] postUpdate de Entrée, Beaucarnea
[2020-04-19 14:38:29][DEBUG] : [cmd] postSave de Entrée, Beaucarnea
[2020-04-19 14:38:29][DEBUG] : [cmd] preSave de Test
[2020-04-19 14:38:29][DEBUG] : [Contrôle] Test : #1296# != 1 => Resultat : False
[2020-04-19 14:38:29][DEBUG] : [cmd] preUpdate de Test
[2020-04-19 14:38:29][DEBUG] : [cmd] postUpdate de Test
[2020-04-19 14:38:29][DEBUG] : [cmd] postSave de Test
[2020-04-19 14:39:03][DEBUG] : ----------------
[2020-04-19 14:39:03][DEBUG] : Lancement CRON Plantes
[2020-04-19 14:39:03][DEBUG] : Avant de lancer le contrôle on lance les commandes d’avant contrôle.
[2020-04-19 14:39:03][DEBUG] : Après les commandes d’avant contrôle, on boucle pour lancer les commandes.
[2020-04-19 14:39:03][DEBUG] : [cmd] preSave de Salon, Dypsis
[2020-04-19 14:39:03][DEBUG] : [Contrôle] Salon, Dypsis : #4144#!=57 => Resultat : False
[2020-04-19 14:39:03][DEBUG] : [cmd] preUpdate de Salon, Dypsis
[2020-04-19 14:39:03][DEBUG] : [cmd] postUpdate de Salon, Dypsis
[2020-04-19 14:39:03][DEBUG] : [cmd] postSave de Salon, Dypsis
[2020-04-19 14:39:03][DEBUG] : [cmd] preSave de Salle à manger, Aloe
[2020-04-19 14:39:03][DEBUG] : [Contrôle] Salle à manger, Aloe : #4103#!=75 => Resultat : False
[2020-04-19 14:39:03][DEBUG] : [cmd] preUpdate de Salle à manger, Aloe
[2020-04-19 14:39:03][DEBUG] : [cmd] postUpdate de Salle à manger, Aloe
[2020-04-19 14:39:03][DEBUG] : [cmd] postSave de Salle à manger, Aloe
[2020-04-19 14:39:03][DEBUG] : [cmd] preSave de Salle à manger, Citrus
[2020-04-19 14:39:03][DEBUG] : [Contrôle] Salle à manger, Citrus : #4073#!=36 => Resultat : False
[2020-04-19 14:39:03][DEBUG] : [cmd] preUpdate de Salle à manger, Citrus
[2020-04-19 14:39:03][DEBUG] : [cmd] postUpdate de Salle à manger, Citrus
[2020-04-19 14:39:03][DEBUG] : [cmd] postSave de Salle à manger, Citrus
[2020-04-19 14:39:03][DEBUG] : [cmd] preSave de Salle à manger, Cycas
[2020-04-19 14:39:03][DEBUG] : [Contrôle] Salle à manger, Cycas : #3915#!=41 => Resultat : False
[2020-04-19 14:39:03][DEBUG] : [cmd] preUpdate de Salle à manger, Cycas
[2020-04-19 14:39:03][DEBUG] : [cmd] postUpdate de Salle à manger, Cycas
[2020-04-19 14:39:03][DEBUG] : [cmd] postSave de Salle à manger, Cycas
[2020-04-19 14:39:03][DEBUG] : [cmd] preSave de Salle à manger, Dracaena
[2020-04-19 14:39:03][DEBUG] : [Contrôle] Salle à manger, Dracaena : #4093#!=65 => Resultat : False
[2020-04-19 14:39:03][DEBUG] : [cmd] preUpdate de Salle à manger, Dracaena
[2020-04-19 14:39:03][DEBUG] : [cmd] postUpdate de Salle à manger, Dracaena
[2020-04-19 14:39:03][DEBUG] : [cmd] postSave de Salle à manger, Dracaena
[2020-04-19 14:39:03][DEBUG] : [cmd] preSave de Salle à manger, Monstera
[2020-04-19 14:39:03][DEBUG] : [Contrôle] Salle à manger, Monstera : #4083#!=66 => Resultat : False
[2020-04-19 14:39:03][DEBUG] : [cmd] preUpdate de Salle à manger, Monstera
[2020-04-19 14:39:03][DEBUG] : [cmd] postUpdate de Salle à manger, Monstera
[2020-04-19 14:39:03][DEBUG] : [cmd] postSave de Salle à manger, Monstera
[2020-04-19 14:39:03][DEBUG] : [cmd] preSave de Entrée, Beaucarnea
[2020-04-19 14:39:03][DEBUG] : [Contrôle] Entrée, Beaucarnea : #3380#!=32 => Resultat : False
[2020-04-19 14:39:03][DEBUG] : [cmd] preUpdate de Entrée, Beaucarnea
[2020-04-19 14:39:03][DEBUG] : [cmd] postUpdate de Entrée, Beaucarnea
[2020-04-19 14:39:03][DEBUG] : [cmd] postSave de Entrée, Beaucarnea
[2020-04-19 14:39:03][DEBUG] : [cmd] preSave de Test
[2020-04-19 14:39:03][DEBUG] : [Contrôle] Test : #1296# != 1 => Resultat : True
[2020-04-19 14:39:03][DEBUG] : [cmd] preUpdate de Test
[2020-04-19 14:39:03][DEBUG] : [cmd] postUpdate de Test
[2020-04-19 14:39:03][DEBUG] : [cmd] postSave de Test
[2020-04-19 14:39:03][DEBUG] : [cmd] preSave de Test
[2020-04-19 14:39:03][DEBUG] : [Contrôle] Test : #1296# != 1 => Resultat : True
[2020-04-19 14:39:03][DEBUG] : [cmd] preUpdate de Test
[2020-04-19 14:39:03][DEBUG] : [cmd] postUpdate de Test
[2020-04-19 14:39:03][DEBUG] : [cmd] postSave de Test
[2020-04-19 14:39:03][DEBUG] : [eqLogic] preSave de Plantes
[2020-04-19 14:39:03][DEBUG] : [eqLogic] preUpdate de Plantes
[2020-04-19 14:39:03][DEBUG] : [eqLogic] postUpdate de Plantes
[2020-04-19 14:39:03][DEBUG] : [eqLogic] postSave de Plantes
[2020-04-19 14:39:03][DEBUG] : [eqLogic] preSave de Plantes
[2020-04-19 14:39:03][DEBUG] : [eqLogic] preUpdate de Plantes
[2020-04-19 14:39:03][DEBUG] : [eqLogic] postUpdate de Plantes
[2020-04-19 14:39:03][DEBUG] : [eqLogic] postSave de Plantes

Je fais des tests, il y a un bug, je suis dessus, je n’ai pas de déclenchement non plus, je vais simplifier les logs

Re @laurent.da-col
J’ai fait une grosse mise à jour à l’instant.
J’ai vraiment refondu complètement les logs pour bien comprendre ce qui se passe dans le backoffice du plugin.
Tu peux tester stp ?
A +

Maintenant cela déclenche bien l’action !

Cependant le trigger #controlname# n’est pas interprété apparemment.

Une question fondamentale me vient quelque soit le mode de fonctionnement : quand est-ce que le changement d’état se fait à nouveau ? Est-ce qu’il faut obligatoirement que cela repasse à « false » pour pouvoir re-déclencher une action à nouveau sur un « true » ou est-ce qu’au bout d’un certain temps l’action est à nouveau déclenchée si le contrôle est toujours à « true » ?

Cool, c’est déja ça ! On avance.

Ha ? je vais regarder, une ligne de transformation oubliée quelque part, je repasse le code. C’est une fonctionnalité récente donc j’ai peut être pas vérifier quand c’est un résultat global (OU pour toi)

Je t’avoue avoir relu 4 fois ta question et je n’ai pas compris. Tu pourrais donner un exemple concret ?

Quelque soit le mode de fonctionnement (par contrôle, ET, OU) le principe est que l’action se déclenche quand le résultat (d’un contrôle ou global suivant le mode) passe de « false » à « true ». Mais ensuite tant que le résultat reste à « true » l’action est-elle déclenchée à nouveau au bout d’un certain temps ?

Dans l’idéal il faudrait un paramètre pour forcer le résultat à « false » avant le lancement du watchdog.

Exemple : mon Watchdog qui surveille mes plantes (mode OU), avec un Cron qui lance l’analyse chaque jour à 10 heures. J’aimerais que chaque jour à 10 heures l’action se déclenche à nouveau si le résultat est à « true » et ce même si il l’était déjà avant.