Script dat melding stuurt als garagedeur openstaat totdat garagedeur wordt gesloten

Hallo,

Al jarenlang maak ik gebruik van Domoticz en momenteel ben ik aan het overswitchen naar Homey. In Domoticz had ik een script dat mij om de 4 minuten een melding stuurt als de garagedeur openstaat. Nu wil ik dezelfde functionaliteit in Homey. Kan iemand mij misschien verder helpen?

Alvast dank

Het script dat ik in Domoticz gebruikte:

commandArray = {}
if (otherdevices[‘Garagedeur Script’]==‘On’) then

sensors = {‘Garagedeur’}
– All times in minutes
firstWarningTimeMinutes = 2
– Then repeat every … minutes
repeatTimeMinutes = 2

– First %s is the sensor name, the second one the time in minutes
firstWarningMessage = ‘Info#Let op, “%s” staat al meer dan %s minuten open!’
repeatWarningMessage = ‘Waarschuwing#LET OP, “%s” nog steeds open! Tijd open: %s minuten!!’

– Don’t edit below this line

firstWarningTime = firstWarningTimeMinutes * 60
repeatTime = repeatTimeMinutes * 60

timeNow = os.time()

– commandArray = {}

for index,sensor in pairs(sensors) do
s = otherdevices_lastupdate[sensor]
– returns a date time like 2013-07-11 17:23:12

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)
 
timeLastOpened = os.time{year=year, month=month, day=day, hour=hour, min=minutes, sec=seconds}
difference = (os.difftime (timeNow, timeLastOpened))
if (otherdevices[sensor] ~= 'Open' or difference < firstWarningTime) then
    -- Door closed or within margin
    return commandArray
end

if (difference <= (firstWarningTime + 60)) then
    -- First warning
    commandArray['SendNotification'] = string.format(firstWarningMessage, sensor, tostring(firstWarningTimeMinutes))
else
    offset = (difference - firstWarningTime) % repeatTime
    if offset > 0 and offset <= 60 then
        commandArray['SendNotification'] = string.format(repeatWarningMessage, sensor, tostring(math.floor(difference / 60)))
    end
end

end
return commandArray

end

Ik weet wel hoe het met een flow kan…
Als…
iedere 4 minuten
En…
Sensoralarm garagedeur is On
Dan…
Stuur push bericht naar gebruiker A “Garagedeur staat nog open”

Jammer doe ik net de deur open seconde later… Ping: Garagedeur staat nog open

ik zou gaan voor drie flows en een Timer: (Naar wens aanpassen WELKE meldingen je wel wilt.)

Wel jammer dat in de gedeelde Flow het Custom Icon niet zichtbaar is:
op mijn Dashboard / als Favorit Device in Homey App.
image

1 Like

Ha, je hebt helemaal gelijk

Het is me uiteindelijk gelukt met een aantal flows!
Ik start met een variable timer=4 minuten

Deur open
Als: deur open
Dan: Start flow loop1 na 4 minuten

Loop1
Als: Deze flow is gestart
En : deur open
Dan: Stuur notificatie 'Garagadeur staat ‘timer’ minuten open.
Start flow loop2 na 2 minuten
Bereken ‘timer’ als ‘timer + 2’

Loop2
Als: Deze flow is gestart
En : deur open
Dan: Stuur notificatie 'Garagadeur staat ‘timer’ minuten open.
Start flow loop1 na 2 minuten
Bereken ‘timer’ als ‘timer + 2’

Garagedeur sluiten
Als: deur dicht
Dan: zet ‘timer’ naar 4

Wellicht bruikbaar voor anderen.
Op deze manier is het mogelijk een loop te bouwen met flows.

Ik gebruik een variabele en doe hem automatisch sluiten na 30 min en zet dan de variabele weer op “false”

Maar ik zet mijn auto niet in de garage, dan maakt het niet uit of hij plots dicht gaat er zit ook een beveilinging op maar toch niet fijn als hij dicht zou gaan als je net je auto erin rijdt dus hou hier rekening mee.