DzVent detecter le changement d'etat d'un device
-
landaisbenj
- Messages : 695
- Inscription : 12 mars 2017, 19:24
DzVent detecter le changement d'etat d'un device
Bonjour.
Je cherche un attribut Dz qui me permette d'indiquer a mon script si mon switch "a changé d'etat" sans pour autant prendre en compte le update.
J'ai un ping sur un équipement réseau. Si mon ping est OK j'ai un interrupteur TEST a ON si il est NOK j'ai mon interrupteur TEST à OFF. Le problème c'est que cet interrupteur se met a jour toutes les 2 minutes. Il peut donc passer de On a On à On pendant tout le temps que le ping repond.
Du coup si je veux faire une notif sur ON je reçois une notif toute les 2 minutes. Car la notif se fait pas sur le changement d'etat mais sur l'update du device...
Donc je voudrais le scripter, mais je n'y connais pas grand chose et je ne comprend pas trop comment utiliser changeddevice...
Je voudrais faire quelque chose du style
"Si l'interrupteur est passé de off a on" en Dzvent mais je ne trouve pas de solution sans créer de variable "ancien etat"....
J'ai bien cherché sur le changed device mais je n'y arrive pas.
Quelle méthode ou attribut utilisez-vous?
Je cherche un attribut Dz qui me permette d'indiquer a mon script si mon switch "a changé d'etat" sans pour autant prendre en compte le update.
J'ai un ping sur un équipement réseau. Si mon ping est OK j'ai un interrupteur TEST a ON si il est NOK j'ai mon interrupteur TEST à OFF. Le problème c'est que cet interrupteur se met a jour toutes les 2 minutes. Il peut donc passer de On a On à On pendant tout le temps que le ping repond.
Du coup si je veux faire une notif sur ON je reçois une notif toute les 2 minutes. Car la notif se fait pas sur le changement d'etat mais sur l'update du device...
Donc je voudrais le scripter, mais je n'y connais pas grand chose et je ne comprend pas trop comment utiliser changeddevice...
Je voudrais faire quelque chose du style
"Si l'interrupteur est passé de off a on" en Dzvent mais je ne trouve pas de solution sans créer de variable "ancien etat"....
J'ai bien cherché sur le changed device mais je n'y arrive pas.
Quelle méthode ou attribut utilisez-vous?
Rpbi3b: Domoticz + Homebridge + Monit + Freebox scripts + Shellinabox; Rpbi2: Jarvis
Domoticz: Derniere stable; RFLINK: Dernière stable; Xiaomi Gateway
Domoticz: Derniere stable; RFLINK: Dernière stable; Xiaomi Gateway
-
vil1driver
- Messages : 5661
- Inscription : 30 janv. 2015, 11:07
- Localisation : Rennes (35)
Re: DzVent detecter le changement d'etat d'un device
Salut,
Bah dans ton script de ping..
Ne passe ton inter à On que s'il ne l'est pas déjà
Bah dans ton script de ping..
Ne passe ton inter à On que s'il ne l'est pas déjà
MAJ = VIDER LE CACHE(<-Clicable)
/!\Les mises à jour de Domoticz sont souvent sources de difficultés, ne sautez pas dessus
modules.lua
Un ex domoticzien
/!\Les mises à jour de Domoticz sont souvent sources de difficultés, ne sautez pas dessus
modules.lua
Un ex domoticzien
-
landaisbenj
- Messages : 695
- Inscription : 12 mars 2017, 19:24
Re: DzVent detecter le changement d'etat d'un device
Merci c'est une très bonne idée.vil1driver a écrit :Salut,
Bah dans ton script de ping..
Ne passe ton inter à On que s'il ne l'est pas déjà
Mais sincèrement je voulais vraiment savoir si c’était possible en terme d'attribut LUA de connaitre le changement d'etat...
Par exemple avec mon détecteur de mouvement je passe a ON quand je rentre a la maison et je reste a ON tout le temps que je suis a la maison.
Si je met une notification sur le ON je reçois une notification tout le temps que je suis à la maison... Je pourrais inclure un timer pour la notification mais avec un espèce de
Code : Tout sélectionner
if device.laststate != device.stateEst ce que ça veut dire que c'est impossible a faire ce que je demande ?
Rpbi3b: Domoticz + Homebridge + Monit + Freebox scripts + Shellinabox; Rpbi2: Jarvis
Domoticz: Derniere stable; RFLINK: Dernière stable; Xiaomi Gateway
Domoticz: Derniere stable; RFLINK: Dernière stable; Xiaomi Gateway
-
vil1driver
- Messages : 5661
- Inscription : 30 janv. 2015, 11:07
- Localisation : Rennes (35)
Re: DzVent detecter le changement d'etat d'un device
tu peux mémoriser l'état dans une variable utilisateur
et dès qu'il y a update, faire la comparaison entre l'état actuel et celui qu'indique la variable,
si les 2 sont identiques on ne fait rien
sinon on fait l'action et on mémorise le nouvel état
et dès qu'il y a update, faire la comparaison entre l'état actuel et celui qu'indique la variable,
si les 2 sont identiques on ne fait rien
sinon on fait l'action et on mémorise le nouvel état
MAJ = VIDER LE CACHE(<-Clicable)
/!\Les mises à jour de Domoticz sont souvent sources de difficultés, ne sautez pas dessus
modules.lua
Un ex domoticzien
/!\Les mises à jour de Domoticz sont souvent sources de difficultés, ne sautez pas dessus
modules.lua
Un ex domoticzien
-
landaisbenj
- Messages : 695
- Inscription : 12 mars 2017, 19:24
Re: DzVent detecter le changement d'etat d'un device
Merci pour ta réponse. J'y pensai aussi mais du c'est pas aussi simple que ce que je pensai parceque ca me fait faire autant de variable que de device dans ce style.
Je croyais vraiment qu'un attribut existait... Tant pis je me débrouillerai autrement.
Je croyais vraiment qu'un attribut existait... Tant pis je me débrouillerai autrement.
Rpbi3b: Domoticz + Homebridge + Monit + Freebox scripts + Shellinabox; Rpbi2: Jarvis
Domoticz: Derniere stable; RFLINK: Dernière stable; Xiaomi Gateway
Domoticz: Derniere stable; RFLINK: Dernière stable; Xiaomi Gateway
-
vil1driver
- Messages : 5661
- Inscription : 30 janv. 2015, 11:07
- Localisation : Rennes (35)
Re: DzVent detecter le changement d'etat d'un device
Je te l'accorde, ce serait une idée à suggérer
Avoir un otherdevices_lastState['device'] serait très pratique
En même temps je réponds probablement à côté car je ne connais pas dzvents..
Ça existe peut-être
Je parlais de ce qu'il est possible de faire en lua
Avoir un otherdevices_lastState['device'] serait très pratique
En même temps je réponds probablement à côté car je ne connais pas dzvents..
Ça existe peut-être
Je parlais de ce qu'il est possible de faire en lua
MAJ = VIDER LE CACHE(<-Clicable)
/!\Les mises à jour de Domoticz sont souvent sources de difficultés, ne sautez pas dessus
modules.lua
Un ex domoticzien
/!\Les mises à jour de Domoticz sont souvent sources de difficultés, ne sautez pas dessus
modules.lua
Un ex domoticzien
-
landaisbenj
- Messages : 695
- Inscription : 12 mars 2017, 19:24
Re: DzVent detecter le changement d'etat d'un device
vil1driver a écrit :Je te l'accorde, ce serait une idée à suggérer
Avoir un otherdevices_lastState['device'] serait très pratique
En même temps je réponds probablement à côté car je ne connais pas dzvents..
Ça existe peut-être
Je parlais de ce qu'il est possible de faire en lua
Non mais très bien de toute façon je fais les deux en ce moment. Je n'arrive pas a décider lequel choisir car a chaque fois c'est sur l'etat du device et non sur le changement de l'etat.
Cela fait maintenant une semaine que je parcours le wiki et les exemples pour trouver toutes les methodes et attribut LUA ou Dz. Et comme depuis le debut je n'arrive pas a trouver celui la, et que je trouve ca tellement important d'avoir le changement d'etat et non le update, je trouve bizarre de ne pas le voir.
Tu sais a qui je pourrais suggérer ca ? Que ce soit en LUA ou Dzvents...
Rpbi3b: Domoticz + Homebridge + Monit + Freebox scripts + Shellinabox; Rpbi2: Jarvis
Domoticz: Derniere stable; RFLINK: Dernière stable; Xiaomi Gateway
Domoticz: Derniere stable; RFLINK: Dernière stable; Xiaomi Gateway
-
vil1driver
- Messages : 5661
- Inscription : 30 janv. 2015, 11:07
- Localisation : Rennes (35)
Re: DzVent detecter le changement d'etat d'un device
pour les suggestion tu peux le faire sur le forum officiel domoticz.com
sinon je dois pouvoir faire une petite fonction lua pour cela, qui automatiserait la création de variable et le check..
je reviens vers toi
sinon je dois pouvoir faire une petite fonction lua pour cela, qui automatiserait la création de variable et le check..
je reviens vers toi
MAJ = VIDER LE CACHE(<-Clicable)
/!\Les mises à jour de Domoticz sont souvent sources de difficultés, ne sautez pas dessus
modules.lua
Un ex domoticzien
/!\Les mises à jour de Domoticz sont souvent sources de difficultés, ne sautez pas dessus
modules.lua
Un ex domoticzien
-
landaisbenj
- Messages : 695
- Inscription : 12 mars 2017, 19:24
Re: DzVent detecter le changement d'etat d'un device
Ok je vais y faire un tour ça mange pas de painvil1driver a écrit :pour les suggestion tu peux le faire sur le forum officiel domoticz.com
Yes c’est sympas, merci. J’ai récupéré ton modules.lua il y a quelque jour, mais je n’ai pas pris le temps de le mettre en place. Il fallait d’abord que je sois à l’aise avec le LUA. Et après quand j’ai découvert le Dz je me suis rendu compte que pas mal d’attribut pouvaient améliorer la manipulation des devices et du temps.sinon je dois pouvoir faire une petite fonction lua pour cela, qui automatiserait la création de variable et le check..
je reviens vers toi
Rpbi3b: Domoticz + Homebridge + Monit + Freebox scripts + Shellinabox; Rpbi2: Jarvis
Domoticz: Derniere stable; RFLINK: Dernière stable; Xiaomi Gateway
Domoticz: Derniere stable; RFLINK: Dernière stable; Xiaomi Gateway
-
vil1driver
- Messages : 5661
- Inscription : 30 janv. 2015, 11:07
- Localisation : Rennes (35)
Re: DzVent detecter le changement d'etat d'un device
bon voila j'ai mis à jour modules.lua
ça donne donc ceci à l'usage
ça donne donc ceci à l'usage
Code : Tout sélectionner
-- script de type DEVICE
-- chargement des modules
dofile('/home/pi/domoticz/scripts/lua/modules.lua')
commandArray = {}
if stateChange('la chambre') then
log('chambre changement etat detecte')
end
return commandArray
Dernière modification par vil1driver le 02 août 2017, 18:19, modifié 1 fois.
MAJ = VIDER LE CACHE(<-Clicable)
/!\Les mises à jour de Domoticz sont souvent sources de difficultés, ne sautez pas dessus
modules.lua
Un ex domoticzien
/!\Les mises à jour de Domoticz sont souvent sources de difficultés, ne sautez pas dessus
modules.lua
Un ex domoticzien