Page 1 sur 1

Off consécutifs

Publié : 31 oct. 2019, 15:59
par calouis
Bonjour
J'ai ce script qui déclenche un message vocal à l'ouverture ou fermeture de mon portail :

Code : Tout sélectionner

dofile('/home/pi/domoticz/scripts/lua/modules.lua')
commandArray = {}
if devicechanged['ZG - Portail'] == 'On' then
         commandArray['$Portail ouvert']='On AFTER 4' 

elseif devicechanged['ZG - Portail'] == 'Off'  then
         commandArray['$Portail fermé']='On AFTER 4' 

end
C'est un détecteur Xiaomi de porte connecté à la zigate.
Mais, j'ai régulièrement des Off intempestifs comme sur l'image :
ET par conséquent des alertes sonores non voulues et peu WAF....
Quelqu'un pourrait-il m'aider à améliorer mon script pour éviter ce désagrément ?
Merci d'avance

Re: Off consécutifs

Publié : 31 oct. 2019, 16:05
par Wolfen38
Mot je sais pas comment t'aider mais j'aimerai bien que tu m'expliques comment tu gères ton annonce vocale ?

Envoyé de mon Mi A1 en utilisant Tapatalk


Re: Off consécutifs

Publié : 04 nov. 2019, 09:41
par Datawolf
Salut,
En dzVents je répondrais checkFirst(), mais en lua je suis pas assez calé. :oops:
@+
Datawolf

Re: Off consécutifs

Publié : 04 nov. 2019, 18:20
par higgins91
tu peux rajouter une variable ou un virtualdevic qui garde le dernier état, si le nouvel état est le même alors tu ne fais rien, si il est différent alors tu "cause" :D
par exemple:

variable sauvegardée ou virtual device: Etat_precedent

Code : Tout sélectionner


Si etat=ouvert et Etat_precedent=0
je cause "ouvert"
Etat_precedent=1
fin si

si etat=ferme et Etat_precedent=1
je cause "fermé"
Etat_precedent=0
fin si
du coup si tu refais ta boucle plusieurs fois avec l'état fermé, Etat_precedent étant égal à 0 il ne se passera rien!