Liebe Alle,
ich glaube ich habe irgendwie einen Denkfehler - bin leider Anfänger.
Ich habe einen Bewässerungcomputer GFPro mit FHEM verbunden. Nun hätte ich gern eine Message, wenn sich der Bewässerungscomputer einschaltet und dann wieder, wenn er sich wieder abschaltet. Ich habe jetzt einiges probiert, allerdings bekomme ich keine Nachricht auf Telegram. So sieht mein aktueller Code aus:
defmod Wasser_Garten DOIF ([bewaesserung:status] eq "on") (set Telegram message Die Gartenbewässerung hat sich eingeschalten!!;;) DOELSEIF ([bewaesserung:status] eq "off") (set Telegram message Die Gartenbewässerung ist wieder aus!)
Könnt Ihr darin einen offensichtlichen Fehler sehen?
Vielen Dank schon im vorraus.
kunibernd
Um da etwas sagen zu können, braucht es mehr Infos:
- Ein list vom DOIF (und nicht nur die Definitionszeile).
- Zeigt der Event-Monitor Events zu bewaesserung:status an?
Sorry, dies ist das list:
Internals:
CFGFN
DEF ([bewaesserung:state] eq "on") (set Telegram msg Die Gartenbewaesserung hat sich eingeschalten!!;) DOELSEIF ([bewaesserung:state] eq "off") (set Telegram msg Die Gartenbewaesserung ist wieder aus!)
FUUID 5ee22ed2-f33f-e38d-824c-f4c7edeac7523f7e
MODEL FHEM
NAME Wasser_Garten
NOTIFYDEV bewaesserung,global
NR 3631
NTFY_ORDER 50-Wasser_Garten
STATE initialized
TYPE DOIF
VERSION 22030 2020-05-25 14:10:16
READINGS:
2020-06-11 16:02:50 cmd 0
2020-06-11 16:02:50 mode enabled
2020-06-11 16:02:50 state initialized
Regex:
accu:
cond:
bewaesserung:
0:
STATE ^bewaesserung$:^STATE:
1:
STATE ^bewaesserung$:^STATE:
condition:
0 ::ReadingValDoIf($hash,'bewaesserung','STATE') eq "on"
1 ::ReadingValDoIf($hash,'bewaesserung','STATE') eq "off"
do:
0:
0 set Telegram msg Die Gartenbewaesserung hat sich eingeschalten!!;
1:
0 set Telegram msg Die Gartenbewaesserung ist wieder aus!
2:
helper:
DEVFILTER ^global$|^bewaesserung$
NOTIFYDEV global|bewaesserung
globalinit 1
last_timer 0
sleeptimer -1
readings:
all bewaesserung:state
uiTable:
Attributes:
Also einen Fehler in der Bezeichnung des Readings habe ich durch das list gefunden. Nun bekomme ich auch eine Nachricht bei Einschalten der Bewässerung. Aber müsste nicht auch beim Ausschalten eine Nachricht abgesetzt werden? Die bekomme ich irgendwie nicht.
Im Eventmonitor erhalte ich:
2020-06-11 20:30:54 DOIF Wasser_Garten error: condition c02: Can't find string terminator '"' anywhere before EOF, line 1.
Leider sagt mir diese Meldung gar nichts.
Vielen Dank im vorraus.
kunibernd
Nimm mal das Semikolon raus.
Danke, das war es nicht. Ich habe dann gesehen, dass ich irgendeine andere Art von Anführungszeichen an einer Stelle hatte. Nach einem Tausch mit richtigen Anführungszeichen, hat es funktioniert.
Danke an Alle.