Plugin Watchdog Documentation

sonoffdiy icon

 

 

Table des matières

Installation du Plugin Watchdog

Configurer chaque Watchdog

Configurer les déclenchements

Configurer les commandes

Utilisation du log spécifique à chaque Watchdog

Exemples d’utilisation

Présentation du plugin

Ce plugin va vous permettre de surveiller vos Ă©quipements, exemples :

  • VĂ©rifier que vos nuts sont toujours actifs
  • ContrĂ´ler que vos capteurs (quelque soit leur technologie) sont bien actifs
  • S’assurer que vos Ă©quipements rĂ©seau sont bien connectĂ©s au routeur

En fonction des contrĂ´les effectuĂ©s (automatiquement), vous pouvez programmer des actions Ă  effectuer, sur le modèle d’un scĂ©nario Jeedom.

 

Installation du Plugin Watchdog

Installer le Plugin depuis le Market

installationalexaapi1

 

Aller ensuite dans le Market et sélectionner la version stable de Watchdog

Puis Activer le plugin

Configurer chaque Watchdog

(Premier onglet : Watchdog)

Nota : Il n’y a pas de paramètres globaux de configuration donc il n’est pas utile d’aller dans l’onglet configuration, chaque Watchdog a sa propre configuration et est gĂ©rĂ© independamment.

Voici les champs que vous pouvez trouver :

  • Nom du watchdog
  • Objet parent
  • CatĂ©gorie
  • Activer
  • Visible
  • Auto-actualisation (cron)

Ce champ correspond au rythme d’auto-actualisation, autrement dit CRON, par dĂ©faut ce champ vaut */5 * * * * ce qui veut dire toutes les 5 minutes, cliquez sur le point d’interrogation pour utiliser un autre rythme d’actualisation.

Pour aller plus loin sur les options des crons, je vous invite Ă  parcourir ce site

  • Dernier lancement

C’est une information, ce champ n’est pas modifiable par l’utilisateur

  • Mode de fonctionnement des contrĂ´les

Ce choix est important car il dĂ©termine comment va ĂŞtre calculĂ© le moment oĂą des actions doivent se lancer. Au dĂ©part, utiliser Actions sur chaque contrĂ´le indĂ©pendamment c’est le mode le plus simple Ă  comprendre, vous verrez plus tard pour utiliser les autres modes en fonction de vos besoins propres.

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.
  • Mode de fonctionnement des actions

Ce choix est important car il détermine dans quel cas les actions sont déclenchées.

Les deux modes sont :

  • Lancer une action uniquement si le contrĂ´le change de valeur : Ce mode vous prĂ©vient quand le contrĂ´le effectuĂ© a changĂ© d’Ă©tat
  • Lancer une action Ă  chaque controle en fonction du rĂ©sultat : Ce mode execute Ă  chaque contrĂ´le l’action qui correspond au rĂ©sultat du contrĂ´le.

Configurer les déclenchements

(Deuxième onglet : Equipements ou Commandes à surveiller)

Cette onglet est divisé en deux parties :

ContrĂ´les Ă  effectuer

Dans cette partie, ajouter tous les contrĂ´les que l’on souhaite. A chaque fois qu’un contrĂ´le est ajoutĂ©, son rĂ©sultat est affichĂ© Ă  droite dans la colonne RĂ©sultat. Si ce rĂ©sultat n’est ni True ni False, c’est que ce contrĂ´le est mal ortographiĂ© et il sera ignorĂ©.

Configuration des tempos

Les tempos sont des variables qui peuvent venir ĂŞtre utilisĂ©es dans le calcul des expressions. Regardez les exemples plus bas pour comprendre l’utilisation des tempos.

Pour les utiliser, il faut ajouter #tempo1# pour utiliser la valeur de la tempo1.

Configurer les actions

(Troisième onglet : Actions)

Il existe 3 sortes de commandes :

  • Les commandes qui seront lancĂ©es quant le contrĂ´le passera Ă  TRUE
  • Les commandes qui seront lancĂ©es quant le contrĂ´le passera Ă  FALSE
  • Les commandes qui seront lancĂ©es AVANT le contrĂ´le (les commandes Refresh par exemple)

Utilisation du log spécifique à chaque Watchdog

Pour pouvoir suivre les évenements de chaques Watchdog, un log spécifique a été créé.

log

Quand vous cliquez sur cet icone, vous verrez le log spécifique du Watchdog sur lequel vous êtes :

log2

Pour sélectionner les actions qui seront inscrites dans le log, il faut cocher la 3ème case au début de chaque action :

log3

Nota :A ce jour, seuls les infos « title » et « message » sont ajoutĂ©es dans ce log. Si vous avez besoin d’autres infos, n’hĂ©sitez pas Ă  contacter Sigalou

 

Exemples d’utilisation des Watchdogs

ContrĂ´ler que les Nuts sont vivants

nutmini

J’utilise les Nuts pour savoir si nous sommes Ă  la maison ou pas.

4 Nuts :

  • 1 Nut dans la boĂ®te Ă  gants de la voiture de Monsieur
  • 1 Nut accrochĂ© aux clĂ©s de Monsieur
  • 1 Nut dans la boĂ®te Ă  gants de la voiture de Madame
  • 1 Nut accrochĂ© aux clĂ©s de Madame

L’idĂ©e est de vĂ©rifier que les nuts se sont manifestĂ©s dans les dernières 12h. A dĂ©faut, on peut imaginer qu’ils n’ont plus de pile.

Configuration du Watchdog :

watchdog1bis

Dans cette configuration, je lance le contrĂ´le toutes les 2h.

watchdog2

J’utilise ce mode de fonctionnement car je veux contrĂ´ler chaque Nut indĂ©pendamment et que le plugin Watchdog me signale lequel n’a pas rĂ©pondu dans les dernières 12 heures.

Onglet Equipements Ă  surveiller

Ici, 4 nuts donc 4 Ă©quipements Ă  surveiller donc 4 contrĂ´les.

 watchdog3

Pour l’exemple, j’ai utilisĂ© les noms simples de Nut, Ă  vous de personnaliser.

Le contrĂ´le est (#timestamp# – strtotime(collectdate(#[Equipements internes][Nut1][Present]#))) > #tempo1#

On peut soit recopier ce contrĂ´le soit utiliser l’assistant en cliquant sur la petit icone verte Ă  cĂ´tĂ© du contrĂ´le.

Ce controle va vérifier si la dernière fois que le Nut a donné signe de vie est inférieure à 12h soit 43200 secondes, il ne faut pas oublier de spécifier cela en tempo1 :

watchdog4

Onglet Commandes

J’ai choisi d’utiliser Pushover pour m’informer mais cela est adaptable par chacun.

J’utilise donc les commandes suivantes :

watchdog5

Nota, on peut utiliser le nom du contrĂ´le dans l’action : #controlname# = Nom du contrĂ´le qui a dĂ©clenchĂ© l’action, on peut aussi utilise #title# = nom du Watchdog

ContrĂ´ler que les capteurs XIAOMI sont actifs

xiaomi

J’utilise deux Gateway, des dĂ©tecteurs d’ouverture, des dĂ©tecteurs de prĂ©sence, des dĂ©tecteurs de vibration, des dĂ©tecteurs d’eau, des capteurs tempĂ©rature/hygro, des boutons…

Je propose de crĂ©er un Watchdog pour les Ă©quipements Xiaomi, la seule diffĂ©rence entre les uns et les autres rĂ©side dans la durĂ©e de la tempo qui contrĂ´le que l’Ă©quipement est actif.

Le plugin Xiaomi Ă  prĂ©vu la fonction « refresh » pour questionner l’Ă©quipement et rafraichir les valeurs. Il ne faut pas le lancer toutes les minutes sinon les piles ne finiront pas la semaine, mais pour ce type d’Ă©quipement (contrairement aux Nuts), il est utile de lancer un refresh avant de tester si l’Ă©quipement est actif.

Je ne lance un Refresh que sur les Ă©quipements qui peuvent ne pas avoir de mise Ă  jour tout seuls. Par exemple, les fenetres peuvent rester fermĂ©es plusieurs jours alors que les capteurs de prĂ©sence bougent tout le temps. Donc les capteurs de fenĂŞtres feront l’objet d’un refresh pas les capteurs de prĂ©sence.

Configuration du Watchdog :

watchdog6

Dans cette configuration, je lance le contrĂ´le toutes les 4h.

watchdog2

J’utilise ce mode de fonctionnement car je veux contrĂ´ler chaque Xiaomi indĂ©pendamment.

Onglet Equipements Ă  surveiller

Ici, (pour l’exemple) Deux Gateway, un capteur de fenĂŞtre, un dĂ©tecteur de prĂ©sence :

 watchdog7

Le contrĂ´le est (#timestamp# – strtotime(collectdate(#[Etage][Gateway Chambre][Online]#))) > #tempo1#

On peut soit recopier ce contrĂ´le soit utiliser l’assistant en cliquant sur la petit icone verte Ă  cĂ´tĂ© du contrĂ´le.

Ce controle va vĂ©rifier si la dernière fois que l’Ă©quipement a donnĂ© signe de vie est infĂ©rieure Ă  10min pour les Gateway et 12h pour les autres Ă©quipements, il ne faut pas oublier de spĂ©cifier cela en tempo1 et tempo2 :

watchdog8

Onglet Commandes

J’ai choisi d’utiliser Pushover pour m’informer mais cela est adaptable par chacun.

J’utilise donc les commandes suivantes :

watchdog9

Nota, on peut utiliser le nom du contrĂ´le dans l’action : #controlname# = Nom du contrĂ´le qui a dĂ©clenchĂ© l’action, on peut aussi utilise #title# = nom du Watchdog

Certains Ă©quipements qui doivent ĂŞtre rafraichis car leur Ă©tat ne bouge pas forcement dans les 12 dernières heures (par exemple une fenetre ou un garage peut rester fermĂ©). Pour cela, on peut lancer les commandes Refresh qui sont prĂ©vues pour actualiser l’Ă©tat des Ă©quipements :

 watchdog10

 

ContrĂ´ler que les capteurs RFXCOM sont actifs

rfxcom

Les capteurs RFXCOM fonctionnent sur le même principe que les Nuts dans ce tuto, référez vous donc à la section des Nuts.

Contrôler les équipements du réseau local

Pour cet exemple, on ne va pas rĂ©inventer l’eau chaude et on va s’appuyer sur le plugin Network.

Tous les Ă©quipements se ressemblent et on va aller tester la valeur Statut.

Si Value passe Ă  0 c’est que le ping n’a pas fonctionnĂ©.

Configuration du Watchdog :

watchdog11

Dans cette configuration, je lance le contrĂ´le toutes les minutes.

watchdog2

J’utilise se mode de fonctionnement car je veux contrĂ´ler chaque Ă©quipement indĂ©pendamment.

Onglet Equipements Ă  surveiller

Tous les Ă©quipements se configurent de la mĂŞme manière puisqu’ils sont issus du plugin Network

 watchdog12

Quand tout va bien ces lignes donneront True comme résultat, si un équipement ne ping plus, le plugin enverra 0 et donnera False.

Nota : les timers ne sont pas configurés dans cet exemple.

Onglet Commandes

J’ai choisi d’utiliser Pushover pour m’informer mais cela est adaptable par chacun.

J’utilise donc les commandes suivantes :

watchdog13

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *