FRITZBOX - event-on-change-reading funktioniert nicht

Begonnen von Achim, 15 Februar 2016, 18:57:55

Vorheriges Thema - Nächstes Thema

Achim

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
1x RPi V1, COC, 6x FHT, 1x S300TH, 2x DS18B20, 1x KS300
1x Arduino Nano mit Firmata, 2x DS2423old, 4x DS18B20, HIH5030, verschiedene Ein/Ausgangsschaltungen am Arduino
Mysensors-Seriell Gateway, Si7021, BH1750, Relais

Wernieman

attr Fritzbox event-on-change-reading box_*,mac_*,alarm*,user*
Wieso sollte dann beim wlan ein event erzeugt werden?
- Bitte um Input für Output
- When there is a Shell, there is a Way
- Wann war Dein letztes Backup?

Wie man Fragen stellt: https://tty1.net/smart-questions_de.html

stromer-12

Kommt bei mir im Eventmonitor auch obwohl nur mac sein sollte.
FHEM (SVN) auf RPi1B mit HMser | ESPLink
FHEM (SVN) virtuell mit HMLAN | HMUSB | CUL

peterk_de

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
FHEM auf Ubuntu-VM / 2xNUC Proxmox Cluster
UI: HomeKit, TabletUI, Grafana
IOdevs: 2xHueBridge, RaspiMatic-CCU, CUL868, 2xHarmonyHub, 6xRaspi-Roomnode mit CO2, VOC und lepresenced
Devices: 107xHomematic(IP), 96xPhilips Hue, 17xTECHEM, 12xBTLE, 8xSONOS, 2xHomeConnect, 1xShelly 3em, 1xNanoleaf ...

Achim

#4
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
1x RPi V1, COC, 6x FHT, 1x S300TH, 2x DS18B20, 1x KS300
1x Arduino Nano mit Firmata, 2x DS2423old, 4x DS18B20, HIH5030, verschiedene Ein/Ausgangsschaltungen am Arduino
Mysensors-Seriell Gateway, Si7021, BH1750, Relais

Wernieman

Da kann ich wiederprechen, bei mir kommen die mac readings auch, wenn sie verschwinden.
event-on-change-reading box_cpuTemp,mac.*
- Bitte um Input für Output
- When there is a Shell, there is a Way
- Wann war Dein letztes Backup?

Wie man Fragen stellt: https://tty1.net/smart-questions_de.html

Achim

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
1x RPi V1, COC, 6x FHT, 1x S300TH, 2x DS18B20, 1x KS300
1x Arduino Nano mit Firmata, 2x DS2423old, 4x DS18B20, HIH5030, verschiedene Ein/Ausgangsschaltungen am Arduino
Mysensors-Seriell Gateway, Si7021, BH1750, Relais

Wernieman

O.K. Betriebsblind, siehe mein Beitrag ...

Mach Dich mal schlau bezüglich Regulärer Ausdrücke
- Bitte um Input für Output
- When there is a Shell, there is a Way
- Wann war Dein letztes Backup?

Wie man Fragen stellt: https://tty1.net/smart-questions_de.html