FHEM Forum

FHEM - Hardware => FRITZ!Box => Thema gestartet von: Achim am 15 Februar 2016, 18:57:55

Titel: FRITZBOX - event-on-change-reading funktioniert nicht
Beitrag von: Achim am 15 Februar 2016, 18:57:55
Hallo,

bei mir funktioniert das Attribut "event-on-Change-reading" nicht so wie ich mir das vorstelle. Meine Definition:
define Fritzbox FRITZBOX
attr Fritzbox INTERVAL 300
attr Fritzbox allowTR064Command 1
attr Fritzbox event-on-change-reading box_*,mac_*,alarm*,user*
attr Fritzbox verbose 3


Wenn ich über FHEM das WLAN ein/ausschalte, kommt auch ein Event z.B.:
Zitat2016-02-15_18:41:08 Fritzbox wlan2.4 on

Wenn ich aber über die Fritzbox das WLAN ein/ausschalte, bekomme ich keinen Event. Der kommt nur ohne Attribut "event-on-Change-reading". Das "flutet" aber das Filelog und die Eventabarbeitung und ich muss auch noch selbst prüfen, ob das entsprechende WLAN eine Statusänderung hat.

Ist das ein Modulfehler oder habe ich da einen Denkfehler?

Ach so, zur Erklärung. Meine Fritzbox (wahrscheinlich auch alle anderen) haben einen kleine Bug. Wenn ich über FHEM das WLAN ausschalte (beide zusammen oder 2,4/5GHz getrennt) und dann über die Zeitschaltung innerhalb der Fritzbox das WLAN wieder einschalten lasse, wird nur das 5GHz eingeschaltet. Mit einen Notify auf den Event "5GHz on" will ich dann das 2,4GHz auch einschalten.....

Viele Grüße
Achim
Titel: Antw:FRITZBOX - event-on-change-reading funktioniert nicht
Beitrag von: Wernieman am 15 Februar 2016, 20:18:58
attr Fritzbox event-on-change-reading box_*,mac_*,alarm*,user*
Wieso sollte dann beim wlan ein event erzeugt werden?
Titel: Antw:FRITZBOX - event-on-change-reading funktioniert nicht
Beitrag von: stromer-12 am 15 Februar 2016, 21:45:04
Kommt bei mir im Eventmonitor auch obwohl nur mac sein sollte.
Titel: Antw:FRITZBOX - event-on-change-reading funktioniert nicht
Beitrag von: peterk_de am 15 Februar 2016, 21:55:37
stromer, das ist vielleicht der gleiche Issue, über den ich mich schon ewig bei mehreren Modulen ärgere.

Die Kurzfassung: Man bekommt mit gesetztem attr event-on-change-reading mac.* trotzdem manchmal - aber auch nicht immer - events für andere Readings. Und zwar, wenn das andere reading zwischendurch mal ganz gelöscht wurde (tun manche Module).

Kann man leicht reproduzieren mit nem Dummy:

define test DUMMY
attr test event-on-change-reading mac.*
{readingsSingleUpdate($defs{"test"},"mac_xx","1",1)} --> Event kommt (richtig)
{readingsSingleUpdate($defs{"test"},"alarm","1",1)} --> Event kommt, da das Reading neu angelegt wird (m.E. ein FHEM-Bug)
{readingsSingleUpdate($defs{"test"},"alarm","2",1)} --> Event kommt nicht mehr - wie es gem. event-on-change sein sollte
Titel: Antw:FRITZBOX - event-on-change-reading funktioniert nicht
Beitrag von: Achim am 16 Februar 2016, 18:58:15
Hallo,

Zitat von: Wernieman am 15 Februar 2016, 20:18:58
attr Fritzbox event-on-change-reading box_*,mac_*,alarm*,user*
Wieso sollte dann beim wlan ein event erzeugt werden?

naja, weil ohne "event-on-Change-Reading" die Events folgendermaßen aussehen:
Zitat2016-02-13_10:39:01 Fritzbox box_wlan_2.4GHz: on

Wobei die "mac_* Events mit meinen "event-on-Change-reading" kommen. Liegt aber wahrscheinlich an dem Effekt, den Peter beschreiben hat. Die mac-Readings sind nicht vorhanden, den sie tauchen nur beim "Erscheinen" als Event auf, nicht wenn das mac-Reading gelöscht wird.

Viele Grüße
Achim
Titel: Antw:FRITZBOX - event-on-change-reading funktioniert nicht
Beitrag von: Wernieman am 16 Februar 2016, 19:34:44
Da kann ich wiederprechen, bei mir kommen die mac readings auch, wenn sie verschwinden.
event-on-change-reading box_cpuTemp,mac.*
Titel: Antw:FRITZBOX - event-on-change-reading funktioniert nicht
Beitrag von: Achim am 16 Februar 2016, 20:19:41
Hallo,

ich habe von dev0 die Problemlösung bekommen. Das Wildcard für alle Zeichen ist nicht der "*" sondern ".*"
Nach den ersten Test funktioniert es jetzt so wie gewünscht.

Viele Grüße
Achim
Titel: Antw:FRITZBOX - event-on-change-reading funktioniert nicht
Beitrag von: Wernieman am 16 Februar 2016, 20:24:14
O.K. Betriebsblind, siehe mein Beitrag ...

Mach Dich mal schlau bezüglich Regulärer Ausdrücke