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
attr Fritzbox event-on-change-reading box_*,mac_*,alarm*,user*
Wieso sollte dann beim wlan ein event erzeugt werden?
Kommt bei mir im Eventmonitor auch obwohl nur mac sein sollte.
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
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
Da kann ich wiederprechen, bei mir kommen die mac readings auch, wenn sie verschwinden.
event-on-change-reading box_cpuTemp,mac.*
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
O.K. Betriebsblind, siehe mein Beitrag ...
Mach Dich mal schlau bezüglich Regulärer Ausdrücke