Hauptmenü

DOIF Timerablauf Frage

Begonnen von forum-merlin, 01 Januar 2017, 11:16:01

Vorheriges Thema - Nächstes Thema

forum-merlin

Ein frohes neues Jahr wünsche ich Euch!!

Ich möchte ein DOIF machen das einen Dummy wieder zurück auf einen vorherigen Status setzt.
Szenario:
Meine Alarmanlage ist auf Status scharf-anwesend (Aussenhaut ist überwacht). Jetzt möchte man kurz mal raus für 15 Minuten.
Jetzt will man aber nicht manuell die AL aus, und später wieder an machen müssen.
Ich dachte daher an einen Taster. Wenn man den drückt, wird die AL ausgeschaltet und es läuft im hintergrund ein Timer. Und dieser stellt nach 20 minuten wieder die AL auf AN.

Ich regle das Schalten des AL Status über Dummys und überwache diese mit DOIFs um dann zu reagieren.
Ein Dummy heisst eben AlarmPause.

Ich lese und lese, kapiere aber den Timer in DOIF irgendwie nicht.

Das ist es was ich dazu bis jetzt habe.
Kann mir jemand helfen die definition funktionsfähig zu bekommen?


define du_AlarmPause Dummy
attr du_AlarmPause room AlarmanlageTest
attr du_AlarmPause group AlarmStateSteuerung
attr du_AlarmPause comment "Dieser Dummy soll verwendet werden um eine Pause von 20 Minuten zu setzen. Hier soll der Status scharf-anwesend-pause gesetzt werden, dann ein Timer von 20 Min laufen, und dann wieder auf den vorherigen Status scharf-anwesend gehen"
attr du_AlarmPause setList scharf-anwesend scharf-anwesend-pause
attr du_AlarmPause webCmd scharf-anwesend:scharf-anwesend-pause
set du_AlarmPause initialstate

define doif_AlarmPause DOIF
([du_AlarmPause:state] eq "scharf-anwesend-pause")
(hier.muss.der.timer.irgendwie.hin.denke.ich set du_AlarmPause scharf-anwesend)
attr doif_AlarmPause comment "Dieser DOIF soll dauf den Dummy du_AlarmPause reagieren. es soll ein timer von 20 Minuten Laufen wenn der Status auf scharf-anwesend-pause gesetzt wird, und nach 1200 Sec soll der ursprüngliche Dummy du_AlarmPause wieder auf scharf-anwesend gesetzt werden."
attr doif_AlarmPause room AlarmanlageTest
attr doif_AlarmPause group AlarmStateSteuerung


Bin für jede Hilfe Dankbar.

LG merlin
FHEM 5.8 auf RasPi3; CULv3-868; RFXtrx433; HM-Sec-SC-2; HM-CFG-LAN; HM-LC-Bl1-FM; HM-CC-RT-DN; HM-ES-PMSw1-Pl; HM-LC-Sw4-DR; Hunter Ventile; 8ch Relais; ENIGMA2; ONKYO_AVR; SONOS; Harmony; telegram; HM-PB-6-WM55; GPIO; HM-Sen-MDIR-O; HM-SEC-SD; HM-LC-Dim1L-Pl-3;

automatisierer

der Timer ist ein Attribut der kommt nicht mit in die def.

define doif_AlarmPause DOIF
([du_AlarmPause:state] eq "scharf-anwesend-pause") (set du_AlarmPause scharf-anwesend)
attr doif_AlarmPause comment "Dieser DOIF soll dauf den Dummy du_AlarmPause reagieren. es soll ein timer von 20 Minuten Laufen wenn der Status auf scharf-anwesend-pause gesetzt wird, und nach 1200 Sec soll der ursprüngliche Dummy du_AlarmPause wieder auf scharf-anwesend gesetzt werden."
attr doif_AlarmPause room AlarmanlageTest
attr doif_AlarmPause group AlarmStateSteuerung
attr doif_AlarmPause wait 1200


dann wäre da noch ein
attr doif_AlarmPause do always damit es auch mehr als einmal ausgeführt wird
oder
attr doif_AlarmPause do resetwait damit es mehr als einmal ausgeführt wird und der Timer zurück gesetzt wird, wenn während der Timer Laufzeit nochmal die Taste gedrückt wird.

forum-merlin

Coole Sache!
Danke Dir. Ich werde es mal ausprobieren!

Noch eine Frage...
do always ODER do resetwait ??
Was würdest Du machen?
Geht auch beides?
FHEM 5.8 auf RasPi3; CULv3-868; RFXtrx433; HM-Sec-SC-2; HM-CFG-LAN; HM-LC-Bl1-FM; HM-CC-RT-DN; HM-ES-PMSw1-Pl; HM-LC-Sw4-DR; Hunter Ventile; 8ch Relais; ENIGMA2; ONKYO_AVR; SONOS; Harmony; telegram; HM-PB-6-WM55; GPIO; HM-Sen-MDIR-O; HM-SEC-SD; HM-LC-Dim1L-Pl-3;

automatisierer

wenn du die commandref dazu liest, kannst du das selber entscheiden. Die Frage, ob beides, lässt darauf zurückschliessen, dass du die commandref noch gar nicht studiert hast...

forum-merlin

Stimmt, als ich deine Antwort gelesen und meine Frage darauf hier gepostet hatte, hatte ich die zwei Attribute noch nicht studiert gehabt.

Aber direkt nach meiner Antwort und dann hatte ich es mir auch selbst beantwortet, aber die Frage hier nicht überarbeitet.
Aber das zu verallgemeinern dass ich die commandref (also alles) NOCH GARNICHT STUDIERT habe, ist etwas übertrieben.
Und im DOIF Bereich ist (vorbildlich) sehr viel geschrieben und erklärt, und da kann es aber auch vorkommen, dass man mal was überliest.

Wie auch immer. Danke für Deine Antworten, die haben mich wieder ein Stück weiter gebracht!
FHEM 5.8 auf RasPi3; CULv3-868; RFXtrx433; HM-Sec-SC-2; HM-CFG-LAN; HM-LC-Bl1-FM; HM-CC-RT-DN; HM-ES-PMSw1-Pl; HM-LC-Sw4-DR; Hunter Ventile; 8ch Relais; ENIGMA2; ONKYO_AVR; SONOS; Harmony; telegram; HM-PB-6-WM55; GPIO; HM-Sen-MDIR-O; HM-SEC-SD; HM-LC-Dim1L-Pl-3;