notify löst unerwartete Aktionen aus

Begonnen von karo, 08 Januar 2017, 14:50:49

Vorheriges Thema - Nächstes Thema

karo

Hallo,
ich habe einen zweifach intertechno Wandschalter batteriebetrieben (its-2000).
Wenn ich die eine Seite betätige sehe ich im Log genau das erwartete:
3 mal Schalten
2017-01-08 14:29:52 IT ku.SchalterLichterKette on
2017-01-08 14:29:55 IT ku.SchalterLichterKette off
2017-01-08 14:29:57 IT ku.SchalterLichterKette on

Nun habe ich diesen mit einem notify versehen:
define ku.EventLichterKette notify ku.SchalterLichterKette set ku.LichterKette  $EVENT
ku.LichterKette ist eine Funksteckdose (cmi OBI/LuX ip44).
Danach sehen die Log-Einträge wie folgt aus:
1 mal Schalten (Leerzeilen eingefügt)
2017-01-08 14:37:32 IT ku.LichterKette on
2017-01-08 14:37:32 CUL culNano433 raw: is000FFF00FFFF
2017-01-08 14:37:32 IT ku.SchalterLichterKette on

2017-01-08 14:37:32 IT ku.LichterKette on
2017-01-08 14:37:33 CUL culNano433 raw: is000FFF00FFFF
2017-01-08 14:37:33 IT ku.SchalterLichterKette on

2017-01-08 14:37:33 IT ku.LichterKette on
2017-01-08 14:37:33 CUL culNano433 raw: is000FFF00FFFF
2017-01-08 14:37:33 IT ku.SchalterLichterKette on

2017-01-08 14:37:34 IT ku.LichterKette on
2017-01-08 14:37:34 CUL culNano433 raw: is000FFF00FFFF
2017-01-08 14:37:34 IT ku.SchalterLichterKette on

Die Kommunikation scheint mir übertrieben, es dauert relativ lange, bis
die Steckdose schaltet und ich bin irritiert, dass ich vier mal das selbe
sehe.

und wieder aus zeigt wieder 4 mal das selbe
2017-01-08 14:38:37 IT ku.LichterKette off
2017-01-08 14:38:37 CUL culNano433 raw: is000FFF00FFF0
2017-01-08 14:38:37 IT ku.SchalterLichterKette off

2017-01-08 14:38:37 IT ku.LichterKette off
2017-01-08 14:38:38 CUL culNano433 raw: is000FFF00FFF0
2017-01-08 14:38:38 IT ku.SchalterLichterKette off

2017-01-08 14:38:38 IT ku.LichterKette off
2017-01-08 14:38:38 CUL culNano433 raw: is000FFF00FFF0
2017-01-08 14:38:38 IT ku.SchalterLichterKette off

2017-01-08 14:38:39 IT ku.LichterKette off
2017-01-08 14:38:39 CUL culNano433 raw: is000FFF00FFF0
2017-01-08 14:38:39 IT ku.SchalterLichterKette off

Ich habe jeweils einen Block erwartet - ist das ein Denkfehler?

Grüße
Karsten

Otto123

Hallo Karsten,

kennst Du den Eventmonitor? Dann gib dort im Filter ku.SchalterLichterKette.* und schau Dir an was passiert. Das wird Deine 4 Events erklären.
Formatiere Deine Post bitte mit Codetags -> der # Knopf über den Smilies.

Hier noch etwas Lektüre zu notify -> https://wiki.fhem.de/wiki/Notify

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

karo

Hallo Otto,
ja den EventMonitor kenne ich, dort habe ich die Events gefunden (nicht wie fälschlicher weise geschrieben im Log).
Aber das hilft mir nicht weiter, dort sehe ich wie schon geschrieben 4 mal das selbe, vielleicht muss ich mal den verbose level erhöhen. Momentan läuft die Zeit mal wieder weg.
Den Artikel zu Notify kenne ich auch, habe ihn aber nicht komplett gelesen. Ich ging davon aus, dass für das sehr einfache Beispiel die Grundlagen ausreichen - wohl ein Trugschluss.

Ist der "vierfach Event" denn normal?

Danke für Deine Bemühungen, Grüße
Karsten

Otto123

Hallo Karsten,

Du triggerst nur auf das Gerät
define ku.EventLichterKette notify ku.SchalterLichterKette set ku.LichterKette  $EVENT
Damit wird jeder Event den das Gerät ku.SchalterLichterKette weitergereicht! Jeder!
Wenn es vier sind dann werden vier weitergereicht.

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

karo

Hallo Otto,
ich versteh's nicht, eventuell ein Brett vorm Kopf.
Ich habe jetzt im Event-Monitor auf ku.Schalter gefiltert und das fhem log mit eingeschaltet.
Das Ergebnis ist ähnlich wie oben

2017.01.08 19:29:18 3 : culNano433 IT: ku.SchalterLichterKette on->off
2017.01.08 19:29:18 2 : culNano433 IT_set: ku.LichterKette off
2017-01-08 19:29:19 IT ku.SchalterLichterKette off
2017.01.08 19:29:19 3 : culNano433 IT: ku.SchalterLichterKette off->off
2017.01.08 19:29:19 2 : culNano433 IT_set: ku.LichterKette off
2017-01-08 19:29:19 IT ku.SchalterLichterKette off
2017.01.08 19:29:20 3 : culNano433 IT: ku.SchalterLichterKette off->off
2017.01.08 19:29:20 2 : culNano433 IT_set: ku.LichterKette off
2017-01-08 19:29:20 IT ku.SchalterLichterKette off
2017.01.08 19:29:20 3 : culNano433 IT: ku.SchalterLichterKette off->off
2017.01.08 19:29:20 2 : culNano433 IT_set: ku.LichterKette off
2017-01-08 19:29:21 IT ku.SchalterLichterKette off

Die Meldungen culNano... von off -> off sind mir nicht klar. Wenn er das tut, dann ist klar, das notify 4 mal gerufen wird.
Wenn ich jedoch das Event/Notify disable

attr ku.EventLichterKette disable 1

dann erhalte ich nach Schalten nur

2017.01.08 19:35:19 3 : culNano433 IT: ku.SchalterLichterKette off->on
2017-01-08 19:35:19 IT ku.SchalterLichterKette on

Bleibt also die Frage: Warum wird durch ein aktives notify die Zeile

2017.01.08 19:29:19 3 : culNano433 IT: ku.SchalterLichterKette off->off

mehrfach aufgerufen?
Grüße
Karsten

Otto123

Hallo Karsten,

ehrlich gesagt ich verstehe Deinen Post nicht.
Aber egal Du kannst nicht auf alle Events triggern, das macht keinen Sinn.

Du darfst nur auf das triggern was Du weiter verwenden willst.

Bitte mach es so:
define ku.EventLichterKette notify ku.SchalterLichterKette:(on|off) set ku.LichterKette  $EVENT

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

KölnSolar

#6
Hi Otto,
sein Problem scheint zu sein, dass 1 event(Tastendruck) zu mehrfachem Auslösen des notifys führt.
Interessant wären die üblichen notwendigen Infos:
firmware des Cul, list von schalter und dose, Aktualität von fhem, speziell 10_IT.pm....
Grüße Markus
RPi3/2 buster/stretch-SamsungAV_E/N-RFXTRX-IT-RSL-NC5462-Oregon-CUL433-GT-TMBBQ-01e-CUL868-FS20-EMGZ-1W(GPIO)-DS18B20-CO2-USBRS232-USBRS422-Betty_Boop-EchoDot-OBIS(Easymeter-Q3/EMH-KW8)-PCA301(S'duino)-Deebot(mqtt2)-zigbee2mqtt

karo

Hallo Markus, hallo Otto,
richtig mehrfaches unklares Auslösen von notify ist mein Problem.
Wenn ich mir die Meldungen im Event-Monitor anschaue, dann vermute ich, das der culNano433 diese Events auslöst. Der erste ist klar, z.B. on -> off, die nächsten 3 nicht: off ->off.
Was mir dabei jedoch völlig schleierhaft ist, ist die Tatsache, dass die 3 zusätzlichen von off->off fehlen, wenn ich den notify deaktiviere.

Die fehlenden Informationen liefere ich nach, ich habe fhem erst im Dezember 2016 installiert und zu diesem Zeitpunkt die a-culfw verwendet
Grüße
  Karsten

KölnSolar

dann flash auf jeden Fall mal die aktuellste aculfw.
RPi3/2 buster/stretch-SamsungAV_E/N-RFXTRX-IT-RSL-NC5462-Oregon-CUL433-GT-TMBBQ-01e-CUL868-FS20-EMGZ-1W(GPIO)-DS18B20-CO2-USBRS232-USBRS422-Betty_Boop-EchoDot-OBIS(Easymeter-Q3/EMH-KW8)-PCA301(S'duino)-Deebot(mqtt2)-zigbee2mqtt

karo

Hallo zusammen,
hier dann die fehlenden Informationen.

culNano433 version => V 1.23.01 a-culfw Build: private build (unknown) nanoCUL433 (F-Band: 433MHz)

im Datei-Kopf der 10_IT.pm findet sich:
# $Id: 10_IT.pm 12179 2016-09-19 19:26:01Z dancer0705 $

der Schalter (list)

list ku.SchalterLichterKette
Internals:
   DEF        01011011101010110101011110 0 0000
   IODev      culNano433
   LASTInputDev culNano433
   MSGCNT     83
   NAME       ku.SchalterLichterKette
   NR         115
   STATE      off
   TYPE       IT
   XMIT       0101101110101011010101111000000
   XMITdimdown 00
   XMITdimup  00
   XMIToff    0
   XMITon     1
   culNano433_MSGCNT 83
   culNano433_RAWMSG i669a999a666a9555
   culNano433_RSSI -58.5
   culNano433_TIME 2017-01-08 21:32:07
   Code:
     1          0101101110101011010101111000000
   Readings:
     2017-01-07 16:28:17   group           0
     2017-01-07 16:28:17   protocol        V3
     2017-01-08 21:32:07   state           off
     2017-01-07 16:28:17   unit            0000
Attributes:
   IODev      culNano433
   room       IT


Die Steckdose (list)

list ku.LichterKette
Internals:
   DEF        000FFF00FF FF F0
   IODev      culNano433
   NAME       ku.LichterKette
   NR         116
   STATE      off
   TYPE       IT
   XMIT       000fff00ff
   XMITdimdown 00
   XMITdimup  00
   XMIToff    f0
   XMITon     ff
   Code:
     1          000fff00ff
   Readings:
     2017-01-08 08:59:22   protocol        V1
     2017-01-08 21:32:07   state           off
Attributes:
   IODev      culNano433
   alias      Lichterkette Küche
   group      Licht
   model      itswitch
   room       Wohnzimmer


und die Version der fhem-Installation

Latest Revision: 12718

File                Rev   Last Change

fhem.pl             12717 2016-12-05 21:53:35Z rudolfkoenig
96_allowed.pm       11984 2016-08-19 12:47:50Z rudolfkoenig
90_at.pm            12717 2016-12-05 21:53:35Z rudolfkoenig
98_autocreate.pm    11984 2016-08-19 12:47:50Z rudolfkoenig
00_CUL.pm           12667 2016-11-27 09:12:29Z rudolfkoenig
10_CUL_HM.pm        12707 2016-12-03 18:39:36Z martinp876
No Id found for 14_CUL_REDIRECT.pm
14_CUL_TCM97001.pm  11294 2016-04-21 20:32:28Z dancer0705
70_ENIGMA2.pm       12317 2016-10-10 23:12:02Z loredo
91_eventTypes.pm    11984 2016-08-19 12:47:50Z rudolfkoenig
01_FHEMWEB.pm       12613 2016-11-21 10:40:20Z rudolfkoenig
92_FileLog.pm       12378 2016-10-18 19:45:22Z rudolfkoenig
14_Hideki.pm        12233 2016-10-01 22:22:51Z mrsidey
98_HMinfo.pm        12705 2016-12-03 15:37:05Z martinp876
98_HTTPMOD.pm       12220 2016-09-29 18:25:09Z ststrobel
10_IT.pm            12179 2016-09-19 19:26:01Z dancer0705
91_notify.pm        11984 2016-08-19 12:47:50Z rudolfkoenig
No Id found for 70_RASPIO.pm
33_readingsProxy.pm 12689 2016-11-29 21:43:01Z justme1968
# $Id: 99_RpiUtils.pm $
14_SD_WS07.pm       12233 2016-10-01 22:22:51Z mrsidey
99_SUNRISE_EL.pm    12485 2016-11-01 15:18:51Z rudolfkoenig
98_SVG.pm           12482 2016-11-01 09:25:59Z rudolfkoenig
42_SYSMON.pm        11105 2016-03-20 19:37:02Z hexenmeister
98_telnet.pm        11984 2016-08-19 12:47:50Z rudolfkoenig
99_Utils.pm         11984 2016-08-19 12:47:50Z rudolfkoenig
98_version.pm       11987 2016-08-19 17:13:41Z markusbloch
59_Weather.pm       12559 2016-11-13 08:54:54Z borisneubert
98_weblink.pm       11984 2016-08-19 12:47:50Z rudolfkoenig

Blocking.pm         12648 2016-11-24 12:15:25Z rudolfkoenig
Color.pm            11159 2016-03-30 16:08:06Z justme1968
DevIo.pm            12716 2016-12-05 09:11:31Z rudolfkoenig
HMConfig.pm         12707 2016-12-03 18:39:36Z martinp876
HttpUtils.pm        12174 2016-09-19 05:53:59Z rudolfkoenig
RTypes.pm           10476 2016-01-12 21:03:33Z borisneubert
SetExtensions.pm    12688 2016-11-29 20:40:24Z rudolfkoenig
TcpServerUtils.pm   11908 2016-08-06 15:09:55Z rudolfkoenig
YahooWeatherAPI.pm  12465 2016-10-29 09:01:31Z borisneubert


Ein update check gibt eine lange Liste aus - das hatte ich nicht erwartet. Ich werde wenn ich etwas Zeit finde (wahrscheinlich Dienstag) mal ein update anstoßen, die firmware aktualisieren und dann schauen wie es aussieht. Heute Abend möchte ich das nicht mehr tun.
Grüße
   Karsten

KölnSolar

Hi Karste,
dann halten wir doch mal als erstes learning fest, dass man vor dem posten eines Problems erst mal ein update ausführt  ;)
Die lists der Geräte sind unauffällig.
RPi3/2 buster/stretch-SamsungAV_E/N-RFXTRX-IT-RSL-NC5462-Oregon-CUL433-GT-TMBBQ-01e-CUL868-FS20-EMGZ-1W(GPIO)-DS18B20-CO2-USBRS232-USBRS422-Betty_Boop-EchoDot-OBIS(Easymeter-Q3/EMH-KW8)-PCA301(S'duino)-Deebot(mqtt2)-zigbee2mqtt

Wuehler

Hi,

das Problem gab es in einem anderen Thread auch schon: https://forum.fhem.de/index.php?topic=23200.0

Da hat das Attribut event-on-Change-reading geholfen.



karo

Hallo,
ich habe jetzt die culfw auf den neuesten Stand gebracht, wobei das changelog nicht auf Änderungen hindeutet, die für mich so aussehen, als hätten Sie etwas mit dem Problem zu tun (wenn es denn eins ist).
Außerdem ein update durchgeführt.
Es ergibt sich keine Änderung beim Verhalten.
Ich lese jetzt mal den Post in wuehlers Antwort.
Grüße
Karsten


karo

Nochmals hallo,
jetzt ist auch der Vorschlag in wuehlers Link geprüft.
Also attr ku.SchalterLichterKette event-onchange-reading .*
Das Ergebnis sieht bei zwei Schaltvorgängen wie folgt aus:

2017.01.09 21:18:06 3 : culNano433 IT: ku.SchalterLichterKette on->off
2017.01.09 21:18:06 2 : culNano433 IT_set: ku.LichterKette off
2017-01-09 21:18:07 IT ku.SchalterLichterKette off
2017.01.09 21:18:07 3 : culNano433 IT: ku.SchalterLichterKette off->off

2017.01.09 21:18:21 3 : culNano433 IT: ku.SchalterLichterKette off->on
2017.01.09 21:18:21 2 : culNano433 IT_set: ku.LichterKette on
2017-01-09 21:18:21 IT ku.SchalterLichterKette on
2017.01.09 21:18:21 3 : culNano433 IT: ku.SchalterLichterKette on->on

Es kommt also nur noch ein zusätzlicher Eintrag von off->off bzw on -> on
Die events / log-Einträge werden also um zwei reduziert.

Die Grundfrage bleibt jedoch: Warum sorgt das Definieren eines notifiers für 3 zusätzliche Events oder Log-Einträge?
Grüße
Karsten

Otto123

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