Hallo zusammen.
Ich habe ein Dummy mit dem ich die Solltemperatur für einen Raum steuern will, das klappt auch soweit, da ich den dort eingestellten Wert über setReading abfrage. Allerdings möchte ich nun bei Änderung der Solltemperatur im Dummy ein notify auslösen um den aktuellen Wert auf einem Nextion-Display anzuzeigen.
Wenn ich durch die mit webCmd angezeigten Zahlen oder dem Slider den Wert vom Dummy ändere wird das notify nicht ausgelöst. Ich habe neben der unten gezeigten Definition auch heiz_solltemp_kueche:.* und heiz_solltemp_kueche:state:.* ausprobiert, aber das Notify reagiert darauf nicht. Nur wenn ich in die Detailansicht vom Dummy gehe und dort im Abschnitt mit dem set-Button mit dem Slider die Temperatur auswähle und auf set klicke reagiert das Notify.
Ich vermute das es daran liegt, dass beim notify ein dritter Teil erwartet wird, der aber bei dem Klick auf die webcmd-Optionen nicht mit erzeugt wird.
Hat jemand einen Tipp für mich, wie ich mein Problem lösen kann?
Viele Grüße
Mark
Mein Dummy ist wie folgt definiert:
Internals:
FUUID 5c45ed89-f33f-2706-6dc1-8d3057ac357e04cc
NAME heiz_solltemp_kueche
NR 178
STATE 19
TYPE dummy
READINGS:
2019-02-01 23:58:39 state 19
Attributes:
room Heizungssteuerung
setList state:slider,12,0.2,24,1
webCmd state:18:19:20:21
Und das ist die Definition von dem Notify, dass ausgelöst werden soll:
Internals:
DEF heiz_solltemp_kueche {
fhem("set dummy_test $EVENT | $EVTPART1 | $NAME | $TYPE");
}
FUUID 5c54c24d-f33f-2706-3ced-b4fe5ea4a60af1d1
NAME SA_Nextion_solltemperaturen
NOTIFYDEV heiz_solltemp_kueche
NR 327
NTFY_ORDER 50-SA_Nextion_solltemperaturen
REGEXP heiz_solltemp_kueche
STATE 2019-02-01 23:58:39
TRIGGERTIME 1549061919.58462
TYPE notify
READINGS:
2019-02-01 23:57:05 state active
Attributes:
Und hier noch ein Auszug aus dem Event-Monitor:
2019-02-01 23:57:18 dummy heiz_solltemp_kueche 18
2019-02-01 23:57:32 dummy dummy_test state 18.0 | 18.0 | heiz_solltemp_kueche | dummy
2019-02-01 23:57:32 dummy heiz_solltemp_kueche state 18.0
Und hast Du in der Log geguckt?
2019.02.02 00:44:01 1: ERROR evaluating my $EVTPART0='15.6';my $NAME='heiz_solltemp_kueche';my $SELF='SA_Nextion_solltemperaturen';my $EVENT='15.6';my $TYPE='dummy';{
fhem("set dummy_test $EVENT | $EVTPART1 | $NAME | $TYPE");
}: Global symbol "$EVTPART1" requires explicit package name (did you forget to declare "my $EVTPART1"?) at (eval 115) line 2.
2019.02.02 00:44:01 3: SA_Nextion_solltemperaturen return value: Global symbol "$EVTPART1" requires explicit package name (did you forget to declare "my $EVTPART1"?) at (eval 115) line 2.
Mach einfach $EVTPART1 weg.
Moin!
ja, genau das war es. Es war gestern wohl einfach zu spät, hatte den Part fhem("set dummy_test $EVENT | $EVTPART1 | $NAME | $TYPE"); aus einem anderen Notify zum Test kopiert und $EVTPART1 nicht richtig beachtet. In meinem Fall enthalten die Variablen $EVENT und $EVTPART0 den aktuellen Wert des Dummys.
Danke für die Hilfe.
Viele Grüße
Mark