[DzVents] Script de notifications ultime (mais pas que)

Vous avez créé un script LUA dont vous êtes fier, un .sh génial, un programme Python hors du commun, un Tuto, c'est ici que vous pouvez les partager.
papoo
Messages : 2029
Inscription : 10 janv. 2016, 11:29
Localisation : Limoges (87)
Contact :

Re: [DZVents] Script de notifications ultime (mais pas que)

Message par papoo »

pourrais tu décrire un peu ce que tu as fais pour que l'on puisse t'aider?
quelle valeur as tu paramétrée, etc etc
pour exemple mon capteur xiami douche qui a tendance à disparaître de temps en temps
le timeout est en minutes et actif au bout de 2 jours. certains devices communiquent très peu pour économiser leur batterie.
définir un timeout trop court générera des notifications intempestives

Code : Tout sélectionner

{
 "subsystems" : "TELEGRAM",
  "low_battery_level": 25,
 "timeout_notification": 2880,
"low_threshold_temp": 15,
 "high_threshold_temp": 40,
 "low_threshold_hr": 25,
 "high_threshold_hr": 75,
 "frequency_notifications": 60,
 "quiet_hours":"23:00-07:15"
  }
domoticz beta/RaspBerry PI3 stretch
https://pon.fr github
Wolfen38
Messages : 1983
Inscription : 19 oct. 2017, 14:49

Re: [DZVents] Script de notifications ultime (mais pas que)

Message par Wolfen38 »

Salut,

Par ex sur mon sensor de la porte d'entrée, sur la photo, on voit que la dernière connexion remonte à 17h24.

Image

Dans les commentaires du sensor, j'ai mis ca :

Code : Tout sélectionner

{
"subsystems" : "PUSHOVER",
"timeout_notification": 180,
"frequency_notifications": 600,
"quiet_hours":"21:00-06:00"
  }
J'ai juste modifié dans ton script la fréquence d'exécution à 1 fois par heure.

Et à 18h, j'ai reçu une notif comme quoi le sensor était injoignable depuis 180 minutes, alors que 36 minutes avant il avait été joint.
denis_brasseur
Messages : 898
Inscription : 24 déc. 2018, 17:05
Localisation : (26)

Re: [DZVents] Script de notifications ultime (mais pas que)

Message par denis_brasseur »

La fonction timeout_notification a été conçu pour être averti si un périphérique est hors service depuis x minutes, plutôt axé sonde, même si cela doit pouvoir fonctionner pour voir l'état d'une porte.

Et le script a été conçu pour être exécuté toute les minutes, et non pas toutes les heures..
Pi3 + DD PiDrive - RFXtrx433 - AEON Labs ZW090
papoo
Messages : 2029
Inscription : 10 janv. 2016, 11:29
Localisation : Limoges (87)
Contact :

Re: [DZVents] Script de notifications ultime (mais pas que)

Message par papoo »

je ne connais pas la technologie de ton capteur de porte, mais si je me fie à mes xiaomi ils communiquent très peu, si ils ne changent pas d'états pour économiser leur batterie. je ne suis pas spécialiste mais il me semble que c'est une fois par jour qu'il indique sa présence à la gateway.
un contrôle du timeout court ne sert donc à rien. Ce pour quoi je t'ai indiqué avoir paramétré un timeout de deux jours avant notification.
domoticz beta/RaspBerry PI3 stretch
https://pon.fr github
Wolfen38
Messages : 1983
Inscription : 19 oct. 2017, 14:49

Re: [DZVents] Script de notifications ultime (mais pas que)

Message par Wolfen38 »

C'est du Xiaomi mais géré par une zigate. Et la zigate contrairement a la gateway communique souvent avec les devices. C'est pour cela que j'ai mis 3h pour les contrôles. Après, je ne comprends pas comment avec un lastseen 34 min avant et un contrôle sur 3h je reçois quand même une notification ?
A moins que ton script ne se réfère pas au lastseen mais a une autre donnée ?

Envoyé de mon Mi A1 en utilisant Tapatalk

papoo
Messages : 2029
Inscription : 10 janv. 2016, 11:29
Localisation : Limoges (87)
Contact :

Re: [DZVents] Script de notifications ultime (mais pas que)

Message par papoo »

sauf erreur de ma part, la zigate (comme les autres passerelles ) n'envoie rien aux capteurs de porte ni aux sondes de températur, e elle ne fait qu'écouter leur bavardage. Ce ne sont pas des actionneurs.
le script utilise l'information dzvents timedOut

Code : Tout sélectionner

timedOut: Boolean. Is true when the device couldn't be reached.
https://www.domoticz.com/wiki/DzVents:_ ... _scripting

le délai affiché dans la notification et les logs n'est qu'indicatif, il se base sur la seule donnée existante, le lastupdate

Code : Tout sélectionner

                        -- Alarme dispositif injoignable
                        if settings.timeout_notification and device.timedOut then
                            domoticz.log(device.name .. ' est injoignable. Sa dernière activité remonte à ' .. device.lastUpdate.minutesAgo .. ' minutes.', domoticz.LOG_INFO)
                            message = device.name .. ' est injoignable depuis '.. tostring(settings.timeout_notification) ..' minutes'
                            domoticz.helpers.managedNotify(domoticz, subject, message, notificationTable(subSystems), frequency_notifications , quiet_hours)
                        end
domoticz beta/RaspBerry PI3 stretch
https://pon.fr github
Wolfen38
Messages : 1983
Inscription : 19 oct. 2017, 14:49

Re: [DZVents] Script de notifications ultime (mais pas que)

Message par Wolfen38 »

papoo a écrit : 25 août 2019, 20:50 sauf erreur de ma part, la zigate (comme les autres passerelles ) n'envoie rien aux capteurs de porte ni aux sondes de températur, e elle ne fait qu'écouter leur bavardage. Ce ne sont pas des actionneurs.
le script utilise l'information dzvents timedOut

Code : Tout sélectionner

timedOut: Boolean. Is true when the device couldn't be reached.
https://www.domoticz.com/wiki/DzVents:_ ... _scripting

le délai affiché dans la notification et les logs n'est qu'indicatif, il se base sur la seule donnée existante, le lastupdate

Code : Tout sélectionner

                        -- Alarme dispositif injoignable
                        if settings.timeout_notification and device.timedOut then
                            domoticz.log(device.name .. ' est injoignable. Sa dernière activité remonte à ' .. device.lastUpdate.minutesAgo .. ' minutes.', domoticz.LOG_INFO)
                            message = device.name .. ' est injoignable depuis '.. tostring(settings.timeout_notification) ..' minutes'
                            domoticz.helpers.managedNotify(domoticz, subject, message, notificationTable(subSystems), frequency_notifications , quiet_hours)
                        end
OK, alors que moi, je pense qu'il me faudrait une détection sur le lastseen, car mon but est de savoir si l'inter est toujours relié à la zigate, même si on ne l'utilise pas.

Tant pis, ce n'est pas ce que je cherche, mais super script dans tous les cas.

Merci pour tout ton boulot et ton partage.
denis_brasseur
Messages : 898
Inscription : 24 déc. 2018, 17:05
Localisation : (26)

Re: [DZVents] Script de notifications ultime (mais pas que)

Message par denis_brasseur »

Wolfen38 a écrit : 26 août 2019, 09:23 OK, alors que moi, je pense qu'il me faudrait une détection sur le lastseen, car mon but est de savoir si l'inter est toujours relié à la zigate, même si on ne l'utilise pas.
La fonctionnalité lastseen est très simple a intégrer dans le script.
Pi3 + DD PiDrive - RFXtrx433 - AEON Labs ZW090
Wolfen38
Messages : 1983
Inscription : 19 oct. 2017, 14:49

Re: [DZVents] Script de notifications ultime (mais pas que)

Message par Wolfen38 »

denis_brasseur a écrit : 26 août 2019, 19:31
Wolfen38 a écrit : 26 août 2019, 09:23 OK, alors que moi, je pense qu'il me faudrait une détection sur le lastseen, car mon but est de savoir si l'inter est toujours relié à la zigate, même si on ne l'utilise pas.
La fonctionnalité lastseen est très simple a intégrer dans le script.
Tu m'en dis plus stp ?

Car la je m'y perds, lastseen existe ou n'existe pas ????
denis_brasseur
Messages : 898
Inscription : 24 déc. 2018, 17:05
Localisation : (26)

Re: [DZVents] Script de notifications ultime (mais pas que)

Message par denis_brasseur »

Je me suis mal exprimé, il s'agit de lastUpdate, 17h24 dans ton post plus haut.

lastUpdate: Time Object: Time when the device was updated.
Pi3 + DD PiDrive - RFXtrx433 - AEON Labs ZW090
Répondre