FHEM Forum

FHEM => Automatisierung => DOIF => Thema gestartet von: teufelchen am 05 November 2016, 14:51:33

Titel: [gelöst] DOIF zeitverzögert
Beitrag von: teufelchen am 05 November 2016, 14:51:33
Ziel ist meine Warmwasserpumpe automatisch einzuschalten wenn sich das Handy von mir oder meiner Frau im Haus befinden (keine Problem)
Die Pumpe soll ausgehen wenn beide Handy nicht mehr in Wlan sind (auch kein Problem) aber erst wenn das letzte Gerät mindestens 15 Minuten weg ist und keines wieder zurück ist.

Bei der letzten Bedingung mit 15 Minuten warten und dann auch noch abbrechen wenn ein Handy zurück ist komm ich nicht mehr weiter.

##1
DOELSEIF ([Handy1] eq "present" or [Handy2] eq "present")
(set Warmpasserpume on)
##2
DOELSEIF ([Handy1] eq "absent" and [Handy2] eq "absent")
(set Warmpasserpume off)
Titel: Antw:DOIF zeitverzögert
Beitrag von: Ma_Bo am 05 November 2016, 14:59:14
attr <DOIFNAME> wait 0:900
Titel: Antw:DOIF zeitverzögert
Beitrag von: Otto123 am 05 November 2016, 15:02:02
mit dem attr wait und do resetwait geht das. Schau in die Commandref, da sind Beispiele.

Gruß Otto
Titel: Antw:DOIF zeitverzögert
Beitrag von: Ma_Bo am 05 November 2016, 15:03:24
resetwait ist dabei nicht nötig, da das DOIF sobald ein Handy "present" ist, ja in den ersten DOELSEIF Fall geht.
Titel: Antw:DOIF zeitverzögert
Beitrag von: Otto123 am 05 November 2016, 15:09:26
stimmt, bei Presence ist das nicht nötig. Da ändert sich der Zustand.

Gruß Otto
Titel: Antw:DOIF zeitverzögert
Beitrag von: teufelchen am 05 November 2016, 15:33:18
Danke,

Ihr seit einfach spitze.

Funktioniert.
Titel: Antw:DOIF zeitverzögert
Beitrag von: Ma_Bo am 05 November 2016, 15:37:19
Bitte ein [gelöst] oder ähnliches in den Thementitel voranstellen.

Grüße Marcel
Titel: Antw:[gelöst] DOIF zeitverzögert
Beitrag von: teufelchen am 06 November 2016, 00:55:56
Die Lösung ist ganz einfach:
attr >Ausdruck> wait 0:0:0:10:0:0:10:10

Also für jedes CMD die Zeit getrennt duch einen Doppelpunkt eingeben.
Im Bespiel wird CMD 4, 7 und 8 um 10 Sekunden zeitverzögert ausgeführt