J'ai écris un dzvent pour gérer ma pompe de relevage suivant le niveau d'eau mais comme l'un des détecteurs est défectueux, je veux désactiver mon script. J'ai donc mis "false" dans le bloc "active". Malgré tout, toutes les heures le trigger de type time se déclenche et si le capteur change d'état, l'évènement se déclenche quand même ...
Qu'est-ce que j'ai loupé ?
domoticz, version 2020.2 (avril 2020)
Merci d'avance.
Thierry
Code : Tout sélectionner
return {
active = {
false
},
-- trigger
on = {
-- device triggers
devices = {
-- scripts is executed if the device that was updated matches with one of these triggers
'VS 1', 'VS 2',
},
-- timer riggers
timer = {
'every 1 hours',
},
},
-- persistent data
-- see documentation about persistent variables
data = {
myVar = { initial = 5 },
myHistoryVar = { maxItems = 10 },
},
-- custom logging level for this script
logging = {
marker = "PompeVS"
},
-- actual event code
-- the second parameter is depending on the trigger
-- when it is a device change, the second parameter is the device object
-- similar for variables, scenes and groups and httpResponses
-- inspect the type like: triggeredItem.isDevice
execute = function(dz, item, info)
local vs1 = dz.devices('VS 1')
local vs2 = dz.devices('VS 2')
local pompe = dz.devices('Pompe de relevage')
if (pompe.state == 'On')
then
if (vs1.state == 'Off') or (not dz.time.matchesRule('at 09:00-19:00'))
then
dz.log('Eteindre la pompe')
pompe.switchOff()
end
else
if (vs2.state == 'On') and dz.time.matchesRule('at 09:00-19:00')
then
dz.log('Allumer la pompe')
-- pompe.switchOn()
end
end
end
}