FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: hauwech am 29 April 2016, 16:28:59

Titel: Ein at mit einem FhemMail Kommando innerhalb eines notify anlegen
Beitrag von: hauwech am 29 April 2016, 16:28:59
Hallo zusammen,
ich könnte Hilfe eines Wissenden brauchen...

Ich will ein notify bauen, das, wenn irgendein Fenster zu lange offen ist,
- eine Nachricht auf einer VU+ ausgibt (das geht...)
- eine mail sendet.
- als Bonus möchte ich das später auf die Abendstunden einschränken

Für die Verzögerung lege ich im notify jeweils ein at an.

.*_Fenster:.*contact:.open.\(to.HMLAN1\)* {
my $alias = AttrVal($NAME,"alias",$NAME);;
fhem Log 3, "Fenster geoeffnet - ".$EVENT." - ".$NAME." - ".$alias;;
fhem ("define WinOpnMsg at +01:00:00 set VU showText $alias ist seit einer Stunde offen");;
fhem ("define WinOpnMail at +00:00:05 {FhemMail('meine@mail.adresse', $alias.' ist seit einer Stunde offen.','Bitte schliessen!')}");;
};


Wenn ich das "define WinOpnMail...." ausschneide und in die Commandline werfe, funktionert es (ohne die $alias-Variable).
Ich komme ums Verrecken nicht drauf, wie ich das innerhalb des notify maskieren muß. Kann mir jemand auf die Sprünge helfen?

Danke und Gruß
Roland
Titel: Antw:Ein at mit einem FhemMail Kommando innerhalb eines notify anlegen
Beitrag von: Crawler am 29 April 2016, 23:06:48
hab dir mal fehlende und falsche Sonderzeichen makiert
Zitat.*_Fenster:.*contact:.open.\(to.HMLAN1\)* {
my $alias = AttrVal($NAME,"alias",$NAME);;
fhem Log 3, "Fenster geoeffnet - ".$EVENT." - ".$NAME." - ".$alias";;
fhem ("define WinOpnMsg at +01:00:00 set "VU showText $alias ist seit einer Stunde offen");;
fhem ("define WinOpnMail at +00:00:05 {FhemMail('meine@mail.adresse', $alias.' ist seit einer Stunde offen.','Bitte schliessen!')}");;
};


würde ein DOIF empfehlen ist einfacher bei vielen Befehlen

define Fenster_alarm DOIF ([.*_Fenster:.*contact:.open]&[18:00-23:00])(set VU showText "Ein Fenster ist seit einer Stunde offen", {FhemMail('meine@mail.adresse', 'Fenster ist seit einer Stunde offen.','Bitte schliessen!')})
attr Fenster_alarm wait 3600

Wie du den Namen des Fensters da rein bekommst kann ich dir leider nicht sagen
Titel: Antw:Ein at mit einem FhemMail Kommando innerhalb eines notify anlegen
Beitrag von: hauwech am 30 April 2016, 12:56:02
Soweit ich mitbekommen habe, kann DOIF keine Wildcards in der Bedingung, man müßte also für jedes einzelne Device ein DOIF bauen. Das wollte ich mit dem Notify vermeiden.
Das "set VU showtext <Message> ...." will auch keine Anführungszeichen.

Gruß Roland
Titel: Antw:Ein at mit einem FhemMail Kommando innerhalb eines notify anlegen
Beitrag von: hauwech am 30 April 2016, 13:04:45
Ich bin beim Recherchieren auf pushover gestoßen und habe das jetzt umgestellt.
.*_Fenster:.*contact:.open.\(to.HMLAN1\)* {
my $alias = AttrVal($NAME,"alias",$NAME);;
fhem Log 3, "Fenster geoeffnet - ".$EVENT." - ".$NAME." - ".$alias;;
fhem ("define WinOpnMsg at +01:00:00 set VU showText $alias ist seit einer Stunde offen");;
fhem ("define WinOpnPush at +01:00:00 set pushmsg msg 'Alarm' 'Offenes Fenster $alias' '' 2 'persistent' 30 3600");;
};


Damit geht's jetzt.

Gruß Roland