Hauptmenü

Wertänderung detektieren

Begonnen von Edi77, 09 August 2018, 13:27:03

Vorheriges Thema - Nächstes Thema

Edi77

Hallo,

Ich habe einen W266 an FHEM angebunden und die Blitzerkennung läuft gut.
Damit der plot auch schön aussieht habe ich ein Event-min-interval auf 3600sek gestellt, also wird 1x pro Stunde ein Wert in das log File geschrieben auch wenn sich nichts ändert.

Jetzt möchte ich aber sobald sich der Lightning Counter erhöht eine Nachricht per Pushbullet/EMail oder sonst was bekommen.
Wie löse ich das Event aus das wenn sich Lightning Count >= +1 als der letzter Wert ist?

Master FHEM 6 als VM auf ESX Ubuntu 20.04 LTS mit MAXCube/MAX!/FS20|TabletUI|Flightradar|Tasmota|TTN Lora|CCU3 HomematicIP|RPi mit GammaScout|MQTT EasyESP 8266|LuftdatenInfo|deCONZ HUEDev|probemon|Siemens Logo|P4D|3D PRINTER RAISE3D

marvin78

Auf jede Änderung reagieren, per setreading den alten Wert weg schreiben (alternativ in einen dummy) und im notify einen Vergleich zwischen alt und neu machen.

Pfriemler

Ohne die W266 zu kennen - üblich ist doch, dass die gelieferten Werte von Sensoren in readings landen. Wie marvin78 sagt: Erzeugung der Events auf geänderte Werte reduzieren (Attribut "event-on-change-reading .*" tut dies für alle Readings des Gerätes). So etwas nutze ich bei mir bei der Anwesenheitsprotokollierung - ein Notify aktualisiert einen Dummy bei Änderung des Readings, zusätzlich wird der Dummy per setreading jede Stunde einmal aktualisiert - das Log reagiert auf den Dummy und beides sauber mit.
Zudem dürfte ein Notify auf den Lighning Counter allein in diesem Fall ausreichen, um eine Nachricht zu schicken, da es ja dann nur befeuert wird, wenn sich der Wert des Readings ändert - i.d.R. wohl um eins erhöht, oder?
"Änd're nie in fhem.cfg, denn das tut hier allen weh!" *** Wheezy@Raspi(3), HMWLAN+HMUART, CUL868(SlowRF) für FHT+KS+FS20, miniCUL433, Rademacher DuoFern *** "... kaum macht man es richtig, funktioniert es ..."

Frank_Huber

#3
gibt es nicht sowas wie "oldvalue"
ich meine das ist speziell für Vergleiche mit dem vorhergehenden Wert.

kuck mal hier, im beispiel für ein doif: https://forum.fhem.de/index.php/topic,77136.msg821440.html#msg821440

CoolTux

Es gibt das Attribut oldReadings für die FHEM Funktion OldReadingsVal()
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

Edi77

@Pfriemler

Das Attriebut "event-on-change-reading .*"  habe ich ja gesetzt.
Allerdings auch Event-min-interval auf 3600sek ( sonst sieht der gplot nicht schön aus )

Also habe ich alle 3600Sek eine Event, obwohl es kein Blitz gab.
Master FHEM 6 als VM auf ESX Ubuntu 20.04 LTS mit MAXCube/MAX!/FS20|TabletUI|Flightradar|Tasmota|TTN Lora|CCU3 HomematicIP|RPi mit GammaScout|MQTT EasyESP 8266|LuftdatenInfo|deCONZ HUEDev|probemon|Siemens Logo|P4D|3D PRINTER RAISE3D

Pfriemler

event-min-interval legt meines Wissens einen Mindestabstand zwischen erzeugten Events fest, auch wenn es häufigere Trigger dafür gab (eben weil die Station öfter sendet). Insofern steht zu befürchten, dass die Blitzmeldung auch dadurch verzögert wird.
"Änd're nie in fhem.cfg, denn das tut hier allen weh!" *** Wheezy@Raspi(3), HMWLAN+HMUART, CUL868(SlowRF) für FHT+KS+FS20, miniCUL433, Rademacher DuoFern *** "... kaum macht man es richtig, funktioniert es ..."

Edi77

Wir sie nicht. Ich bekomme jede Stunden Tag und Nacht ein Blitzmeldung obwohl es keine Blitze gab.
Master FHEM 6 als VM auf ESX Ubuntu 20.04 LTS mit MAXCube/MAX!/FS20|TabletUI|Flightradar|Tasmota|TTN Lora|CCU3 HomematicIP|RPi mit GammaScout|MQTT EasyESP 8266|LuftdatenInfo|deCONZ HUEDev|probemon|Siemens Logo|P4D|3D PRINTER RAISE3D