je cherche un peu d'aide pour créer un script lua afin de gérer mon alarme.
Alors voila une explication :
quand je passe mon badge devant le tagreader '( 'tagreader=On), le script vérifie l’état des ouvertes.....en fonction de cela 2 solutions :
Si les ouvertures sont fermés ['Scene:capteurhorsporte']='Off', annonce activation en cour, attente 10s puis activation du switch [alarme etat] = 'On' , annonce alarme active.
Si les ouvertures ne sont pas fermés ['Scene:capteurhorsporte']='On', annonce ouverture non fermé, repasser le tagreader a l'initial ( 'tagreader=Off).
Quand l'alarme est active, si l'une des ouvertures passe a 1 ( ['Scene:capteuravecporte']='On'), une annonce est faite que l'alarme est active et on attends 10 secondes. Au bout des 10s deux cas de figures :
si tagreader=Off, message alarme arrêté et passage a [alarme etat] = 'Off'
Si tagreader=On, declenchement de la sirene
Voila pour cela je pense passer par un script mais je sais pas si un seul scripts pour tout ou plusieurs petits.....votre avis ??
J'ai un début de script mais 'y connais rien:
Code : Tout sélectionner
#si le switch alarme clavier passe a on et que la scene capteurhorsporte est a on => envoie message alerte et passage a off du clavier
commandArray = {}
if ((devicechanged['tagreader'] == 'On') and otherdevices['Scene:capteurhorsporte']='On')) then
commandArray['OpenURL']='192.168.1.7:8080/api/rest/speech/tts?text=,%20attention,%20fenaitr;%20ouverte;%20pasactivationalarme'
commandArray['tagreader']='Off'
end
return commandArray
#si le switch alarme clavier passe a on et que la scene capteurhorsporte est a off, envoi message vocal puis attente de 10s, puis annonce alarme active.passage on switchstatusalarme =On
commandArray = {}
if ((devicechanged['tagreader'] == 'On') and otherdevices['Scene:capteurhorsporte']='Off')) then
commandArray['OpenURL']='192.168.1.7:8080/api/rest/speech/tts?text=,%20attention,%20activation;%20alarme;%20encours'
#depart compteur temps
function timedifference (s)
year = string.sub(s, 1, 4)
month = string.sub(s, 6, 7)
day = string.sub(s, 9, 10)
hour = string.sub(s, 12, 13)
minutes = string.sub(s, 15, 16)
seconds = string.sub(s, 18, 19)
t1 = os.time()
t2 = os.time{year=year, month=month, day=day, hour=hour, min=minutes, sec=seconds}
difference = os.difftime (t1, t2)
return difference
end
timeon = 10
difference = timedifference(otherdevices_lastupdate[tagreader])
if (difference > timeon and difference < (timeon + 2)) then
tempdiff = tostring(difference)
commandArray[alarme etat] = 'On'
commandArray['OpenURL']='192.168.1.7:8080/api/rest/speech/tts?text=,%20attention,%20alarme;%20active'
end
return commandArray
#Alarme si intrusion
si le switch alarme clavier est on et que la scene capteuravecporte passe a Onf, envoi message vocal puis attente de 10s, puis switchstatusalarme passe a Off rien sinon activation sirene +envoie message
commandArray = {}
if ((devicechanged['Scene:capteurhorsporte']='On' and otherdevices['alarme etat'] == 'On')) then
commandArray['OpenURL']='192.168.1.7:8080/api/rest/speech/tts?text=,%20attention,%20alarme;%20active'
#depart compteur temps
function timedifference (s)
year = string.sub(s, 1, 4)
month = string.sub(s, 6, 7)
day = string.sub(s, 9, 10)
hour = string.sub(s, 12, 13)
minutes = string.sub(s, 15, 16)
seconds = string.sub(s, 18, 19)
t1 = os.time()
t2 = os.time{year=year, month=month, day=day, hour=hour, min=minutes, sec=seconds}
difference = os.difftime (t1, t2)
return difference
end
timeon = 10
difference = timedifference(otherdevices_lastupdate['Scene:capteurhorsporte'])
if (difference > timeon and difference < (timeon + 2)) then
tempdiff = tostring(difference)
if ((device['tagreader'] == 'Off') then
commandArray['OpenURL']='192.168.1.7:8080/api/rest/speech/tts?text=,%20alarme,%20arrete'
commandArray[alarme etat] = 'Off'
if ((device['tagreader'] == 'On') then
commandArray[sirene] = 'On'
end
return commandArray
seb