Notify und If Anweisung wollen nicht funktionieren

Begonnen von t1me2die, 20 Oktober 2016, 21:33:43

Vorheriges Thema - Nächstes Thema

t1me2die

Hallo liebe Community, ich komme mal wieder leider nicht weiter.

Ich habe einen Fenstersensor, dieser liefert mir im "state" auch "open" oder "closed" zurück.

Nun möchte ich gerne mithilfe des notify eine Aktion ausführen, dass schaut bei mir wie folgt aus:

Zitat
HM_4E5349:state:.*
{
  if (
       (ReadingsVal("HM_4E5349","state",0) eq "open")
     )
     { fhem ("set FBDECT_fbahahttp_08761_0236145 off")
     }
}

HM_4E5349 ist mein Fenstersensor und das andere ist meine Steckdose.
Ich will nun also erreichen, dass wenn das Fenster aufgeht, die Steckdose ausgeschaltet wird.

Gruß
Mathias

Otto123

Hallo Mathias,

was geht denn nicht? Wird das notify nicht getriggert? Wird die Bedingung nicht erkannt? Funktioniert der Befehl nicht?

Also bitte testen:
Funktioniert der Befehl in der FHEM Kommandozeile?
{ fhem ("set FBDECT_fbahahttp_08761_0236145 off") }
welchen Wert liefert {(ReadingsVal("HM_4E5349","state",0) eq "open")} in der FHEM Kommandozeile?
Wie sieht es im Eventmonitor aus in dem Moment der Dich interessiert für das Gerät?
HM_4E5349

Du musst den Eventmonitor öffnen und vor den ".*" noch "HM_4E5349" setzen und dann beobachten.

Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

t1me2die

#2
Hallo Otto und danke für deine schnelle Antwort.

Zitat
{ fhem ("set FBDECT_fbahahttp_08761_0236145 off") }
Funktioniert wie gewollt, die Steckdose wird ausgeschaltet

Zitat
{(ReadingsVal("HM_4E5349","state",0) eq "open")}
Zur Zeit ist der Sensor "offen", ReadingsVal liefert "1" zurück.

Im Eventmonitor finde ich folgendes:
Zitat
2016-10-20 22:51:13 CUL_HM HM_4E5349 battery: ok
2016-10-20 22:51:13 CUL_HM HM_4E5349 contact: closed (to myHmUART)
2016-10-20 22:51:13 CUL_HM HM_4E5349 closed
2016-10-20 22:51:13 CUL_HM HM_4E5349 trigDst_115200: noConfig
2016-10-20 22:51:13 CUL_HM HM_4E5349 trigger_cnt: 131
2016-10-20 22:51:15 CUL_HM HM_4E5349 battery: ok
2016-10-20 22:51:15 CUL_HM HM_4E5349 contact: open (to myHmUART)
2016-10-20 22:51:15 CUL_HM HM_4E5349 open
2016-10-20 22:51:15 CUL_HM HM_4E5349 trigDst_115200: noConfig
2016-10-20 22:51:15 CUL_HM HM_4E5349 trigger_cnt: 132

franky08

#3
HM_4E5349:state:.* {if (ReadingsVal("HM_4E5349","state",0) eq "open") {
fhem "set FBDECT_fbahahttp_08761_0236145 off"
}
}


nicht getestet, sollte funktionieren.

Da weiter keine Bedingung ausgewertet wird und nur open triggert, geht auch:

HM_4E5349:open set FBDECT_fbahahttp_08761_0236145 off

VG
Frank
Debian Bookworm auf HUNSN / Debian Bullseye auf 2.ter HUNSN F2F an 2x RaspiB
mit FHEM aktuell
22Zoll ViewSonic als Infodislay (WVC)
3xHMLAN mit vccu, raspmatic_rpi3, HMIP-HCU1

CoolTux

Vielleicht so


HM_4E5349.open set FBDECT_fbahahttp_08761_0236145 off


So sollte es gehen. Ist aber nur auf open bezogen, wenn Du mehr machen willst musst es erweitern
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

franky08

#5
@CoolTux
hab ich was verpasst? Bei mir gehen etliche notify so  ;)

Beispiel:  ;) ;)
define LED11ON notify Schalter_Tuer:open set SZ_dummy open;; set SZ_dummy_kl open
define LED11OFF notify Schalter_Tuer:closed set SZ_dummy closed;; set SZ_dummy_kl closed


ist aber aus der fhem.cfg
Debian Bookworm auf HUNSN / Debian Bullseye auf 2.ter HUNSN F2F an 2x RaspiB
mit FHEM aktuell
22Zoll ViewSonic als Infodislay (WVC)
3xHMLAN mit vccu, raspmatic_rpi3, HMIP-HCU1

CoolTux

Du hattest Dein geschrieben wie ich meines vorbereitet hatte, Du warst einfach schneller wie ich.  ;D


Grüße
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

t1me2die

Zitat von: CoolTux am 20 Oktober 2016, 23:08:41
Vielleicht so


HM_4E5349.open set FBDECT_fbahahttp_08761_0236145 off


So sollte es gehen. Ist aber nur auf open bezogen, wenn Du mehr machen willst musst es erweitern

So funktioniert es. Kann ich nicht den state:.* von dem Sensor auslesen und dann Aufgrund des states dann jeweilige Aktionen vornehmen?

franky08

Ja, wenn du auf z.B open und closed triggern willst, dann brauchst du auch if.
Debian Bookworm auf HUNSN / Debian Bullseye auf 2.ter HUNSN F2F an 2x RaspiB
mit FHEM aktuell
22Zoll ViewSonic als Infodislay (WVC)
3xHMLAN mit vccu, raspmatic_rpi3, HMIP-HCU1

CoolTux

Auslesen oder triggern. Den state kann man nicht triggern. Man kann nur Events triggern und nur die die Dein Eventmonitor Dir zeigt.

Vielleicht sagst einfach mal was Du genau machen willst und dann schauen wir mal.
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

CoolTux


HM_4E5349.(open|closed) {
                 if( $EVTPART1 eq "open" ) {
                      fhem "set FBDECT_fbahahttp_08761_0236145 off";
                 } else {
                       fhem "set FBDECT_fbahahttp_08761_0236145 on";
                 }
}
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

franky08

#11
ZitatKann ich nicht den state:.* von dem Sensor auslesen und dann Aufgrund des states dann jeweilige Aktionen vornehmen?

Ich denke mal das der TE je nach Zustand open/closed irgendwas schalten will.

OT
@CoolTux
wir haben uns in Berlin irgendwie verpasst, Wetter war auch schlimm.

P.S. jetzt war ich zu langsam

VG
Frank
Debian Bookworm auf HUNSN / Debian Bullseye auf 2.ter HUNSN F2F an 2x RaspiB
mit FHEM aktuell
22Zoll ViewSonic als Infodislay (WVC)
3xHMLAN mit vccu, raspmatic_rpi3, HMIP-HCU1

CoolTux

Wann warste denn hier? Hättest mal was geschrieben.
Das Wetter ist echt ne Katastrophe, nicht mal die Kinder wollen mehr raus.
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

franky08

War schon im Juli, Hotel Palace, Budapester Strasse, neben dem Europacenter wo es jetzt gebrannt hat Frau war sauer weil das Wetter grottig war, nur ca. 12 Grad, Regen
Debian Bookworm auf HUNSN / Debian Bullseye auf 2.ter HUNSN F2F an 2x RaspiB
mit FHEM aktuell
22Zoll ViewSonic als Infodislay (WVC)
3xHMLAN mit vccu, raspmatic_rpi3, HMIP-HCU1

t1me2die

Zitat von: CoolTux am 20 Oktober 2016, 23:32:43

HM_4E5349.(open|closed) {
                 if( $EVTPART1 eq "open" ) {
                      fhem "set FBDECT_fbahahttp_08761_0236145 off";
                 } else {
                       fhem "set FBDECT_fbahahttp_08761_0236145 on";
                 }
}


Ach super, genau das wollte ich erreichen. Mein eigentliches Ziel war es, wenn das Fenster im Wohnzimmer geöffnet ist, dass die Heizung im Wohnzimmer dann ausgeht. Da meine Heizungen aber erst ab dem 30.11. "aktiv" sind, wollte ich genau diesen Fall einfach mit einer Lampe testen :-)

Ich habe aber noch eine Frage, was beinhaltet "$EVTPART1"? Steht da "open" oder "close" drin?

Gruß
Mathias