FHEM Forum

FHEM => Automatisierung => Thema gestartet von: Sailor am 05 Februar 2014, 16:53:29

Titel: Nachricht bei vergessenem Fenster
Beitrag von: Sailor am 05 Februar 2014, 16:53:29
Nachricht auf


Moin allerseits


Ich habe ein kleines Problem mit einer Routine eine email zu versenden sobald

[HomeStatus auf ,,2" (Abwesend) ODER  ,,4" (Im Urlaub) gerade geändert wurde] und ein Fenster offen ist.

Hierzu lautet der HomeStatus in der fhem.cfg:
####START################ Define HomeStatus ###############START####
define HomeStatus dummy
attr HomeStatus devStateIcon 1:icoPresent 2:icoAbsent 3:icoSleeping 4:icoVacation
attr HomeStatus room System
attr HomeStatus setList state:slider,1,1,4
attr HomeStatus webCmd state
#####END################# Define HomeStatus ###############END#####

Dieser Status wird entweder manuell oder automatisch durch PRESENCE gesetzt, was auch sehr gut funktioniert.


Sobald also das Fenster BR_Window (HM-SEC-SC) nach Verlassen des Hauses noch offen ist, soll eine Email rausgehen:

Hierzu lautet der Eintrag in der fhem.cfg:
###START###### Send Security notification via email if window is open and nobody at home ####START###
define WindowOpenAbsentBR notify HomeStatus.*:.* {\
if (((Value("HomeStatus") eq 2) || (Value("HomeStatus") eq 4)) && (Value("BR_Window") eq "open" )){\
Log (3,"Security warning sent for open Bedroom Window");;\
fb_mail('eMail@internet.eu','Home Security Warning','Bedroom window still open!');;\
}\
}
attr WindowOpenAbsentBR room System
####END####### Send Security notification via email if window is open and nobody at home #####END####

Doch scheinbar mache ich etwas falsch, denn das ganze kommt irgendwie nicht an.
Die Funktion fb_mail() aus 99_myUtils funktioniert aber mit meinem BatteryNotify sehr gut. Daran kann es also nicht liegen.

Ich bin mir sehr sicher, mein Fehler liegt in der Syntax des letzten Abschnitts aber ich weiß beim besten Willen nicht wo... Grübel

Nebenbei gefragt: Wie könnte ich zum debuggen eine einfache ,,Bis hierher geht's" – Anzeige ausgeben beispielsweise durch den print Befehl?


Wäre super, wenn Ihr mir helfen könntet

Gruß
   Sailor


Gesendet von meinem iPhone mit Tapatalk
Titel: Antw:Nachricht bei vergessenem Fenster
Beitrag von: Puschel74 am 05 Februar 2014, 17:03:40
Hallo,

ZitatNebenbei gefragt: Wie könnte ich zum debuggen eine einfache ,,Bis hierher geht's" – Anzeige ausgeben beispielsweise durch den print Befehl?
Sowas hast du ja bereits eingebaut:
Log (3,"Security warning sent for open Bedroom Window");;\
Solche Log-Zeilen kannst du quer durch deinen Code einstreuen und siehst im Logfile dann wieweit dein Code funktioniert.

Grüße
P.S.: Oben das Raute-Symbol steht für Code-Tags und das "Brief-Sysmbol" für Zitat-Tags.
Macht den Text einfach lesbarer  ;)