Hallo,
ich nutze in der Define Funktion die Anweisung >>$hash->{NOTIFYDEV}="global,".$hash->{DEVICE_NAME}.".*";<< um in der Funktion Notify nur events von global und DEVICE_NAME zu bekommen.
Kann ich auch einschränken , welche events von DEVICE_NAME die Funktion NOTIFY erhalten soll? (ja/nein)
Falls ja, wer kann bitte mit den richtigen regulären Ausdruck helfen, z.B wenn das Event lautet >>MeineVariable: 5.0<<.
PS: $hash->{NOTIFYDEV}="global,".$hash->{DEVICE_NAME}.":MeineVariable:.*" funktioniert nicht.
Danke,
muc46
Zitat von: muc46 am 25 Mai 2025, 09:37:56Kann ich auch einschränken , welche events von DEVICE_NAME die Funktion NOTIFY erhalten soll? (ja/nein)
Nein.
Das musst du dann in der notifyFn() auswerten.
PS: Es gibt zum Setzen des Internals (aus gutem Grund...) auch eine explizite Funktion - setNotifyDev().
Die Zusammenhänge werden vielleicht etwas klarer, wenn du mal nach NOTIFYDEV in fhem.pl suchst.
Hallo,
vielen Dank für deine schnelle Antwort, die meine Anfrage gelöst hat. Mein Tasmoto schüttet mich mit events über MQTT zu, sodass nur eine extrem schlanke Progammierung der Notify Funktion die RPi Auslastung von 95% auf 35% resuzierern konnte. Dennoch geht ein überwiegender Teil der RPi Leistung an die Abarbeitung der events - ohne Auswertung von event in der Notify Funktion zeigt der RPi nur noch ca 8% Auslastung.
Schönes WE,
MUC46
Habe gewisse Zweifel, ob ein einziger, sauber konfigurierter ESP so eine Last verursacht, aber du wirst das besser beurteilen können ;) .