FHEM Forum

FHEM => Automatisierung => Thema gestartet von: VolkerL am 19 Juni 2018, 23:19:45

Titel: Eingeschalteter dummy nach zeitablauf wieder abschalten
Beitrag von: VolkerL am 19 Juni 2018, 23:19:45
Hallo zusammen,

ich tüftele seit Tagen schon an folgendem Problem und bekomme es nicht hin:

Ich bin bei der Frw. Feuerwehr und möchte wenn eine Alarmierung erfolgt ist und ich zu Hause bin, das die Garage auffährt und bei Dunkelheit auch das Licht im Flur angeht. Dazu erhalte ich von einer Zusatzalarmierung ein E-Mail bei einem Alarm, die ich über fhemmail auswerte und einen "dummy" damit einschalte.
Das alles funktioniert auch soweit, nur bekomme ich es nicht hin, dass der dummy nach 3 Minuten wieder abgeschaltet wird. Arbeite ich im dummy mit "on-for-timer" schalten Garage und Licht nicht.

Mail-Auswertung:
define FW_Alarm dummy
attr FW_Alarm webCmd on:off
define Mail_Auswert_FW_Alarm notify FhemMail:Subject.* {my $from = ReadingsVal("FhemMail", "From", "");;;;if($from eq "xxxx\@yyyyyy.de") {fhem("set FW_Alarm on");;;;;;;;} }


Garage & Licht schalten:
define FW_Alarm_Garage DOIF ([FW_Alarm] eq "on" and [Volker] eq "present") (set Aussen_Garage_Vorne on-for-timer 1) DOELSE (set Aussen_Garage_Vorne off)
attr FW_Alarm_Garage room Alarm
define FW_Alarm_Bel DOIF ([FW_Alarm] eq "on" and [Volker] eq "present" and [Tageslicht] eq "dunkel") (set Schalt_Flur_Stromst on) DOELSE (set Schalt_Flur_Stromst off)
attr FW_Alarm_Bel room Alarm


Mein letzter Versuch den dummy "FW_Alarm" nach 3 Minuten wieder auszuschalten, der auch nicht funktioniert:
define n_sw_Alarm_on notify FW_Alarm:on define FW-Alarm_off at +00:03:00 set FW_Alarm off

Wo mache meinen Denkfehler?

Gruß
Volker
Titel: Antw:Eingeschalteter dummy nach zeitablauf wieder abschalten
Beitrag von: rabehd am 20 Juni 2018, 00:58:10
Sleep im ersten notify... wäre meine Idee.

Ausserdem nur ein doif.

Edit:
define FW_Alarm_Garage DOIF ([FW_Alarm] eq "on" and [Volker] eq "present") (set Aussen_Garage_Vorne on-for-timer 1)(set FW_Alarm off) (set Aussen_Garage_Vorne off)
attr FW_Alarm_Garage wait 0,180,0

Vermutlich geht das auch ohne den Dummy, aber in Deinem Fall müßte ich erst in der Commandref lesen und es testen.
Titel: Antw:Eingeschalteter dummy nach zeitablauf wieder abschalten
Beitrag von: Otto123 am 20 Juni 2018, 09:25:51
Hi,

eine Möglichkeit den dummy wieder abzuschalten wäre:
define nty_AlarmOff notify FW_Alarm:on sleep 180;;set $NAME off

Ich glaube das gesamte Konstrukt könnte man optimieren und "schöner" machen, aber versuch erstmal so.

Auf alle Fälle kannst Du in deinem notify die Anzahl der ; um 10 verringern. Die ersten vier werden zu zwei die letzten acht kannst Du komplett streichen :)

Hinweis: Damit der dummy on-for-timer kann, musst Du das attr FW_Alarm useSetExtensions 1 setzen.

Gruß Otto
Titel: Antw:Eingeschalteter dummy nach zeitablauf wieder abschalten
Beitrag von: rudolfkoenig am 21 Juni 2018, 16:44:06
- damit useSetExtensions greift, muss "attr FW_Alarm setList on off" gesetzt sein, webCmd ist nur fuer die FHEMWEB-Anzeige.
- eine andere Alternative ist die vom Otto vorgeschlagene:define Mail_Auswert_FW_Alarm notify FhemMail:Subject.* { fhem("set FW_Alarm on;; sleep 180;; set FW_Alarm off") if(ReadingsVal("FhemMail", "From", "" eq 'xxxx@yyyyyy.de')) }
Titel: Antw:Eingeschalteter dummy nach zeitablauf wieder abschalten
Beitrag von: VolkerL am 21 Juni 2018, 23:39:32
Hallo zusammen,

schon mal allen vielen Dank für die Unterstützung.

Die von Otto vorgeschlagenen Änderungen habe ich vorhin erfolgreich getestet.

Ich werde aber auch morgen mal noch die Version von rudolfkoenig testen.

Vielen Dank

Volker