Hinweis wenn Update eines Readings zu lange her ist ?

Begonnen von dt2510, 24 September 2019, 10:00:00

Vorheriges Thema - Nächstes Thema

dt2510

Ich habe aktuell das Problem, daß einer meiner Rauchmelder wohl keine Daten mehr sendet. Aufgefallen ist es mir nur, weil eine Temperatur von über 30° aktuell eher unwahrscheinlich ist ;)
Ich suche jetzt nach einer Möglichkeit festzustellen/anzuzeigen wenn ein Gerät über einen Zeitraum von sagen wir mal einem Tag keine Updates geliefert hat.
Als eine Möglichkeit sehe ich den Timestamp des anzuzeigenden Readings auszuwerten und die Anzeige entsprechend anzupassen, wenn es zu alt ist. Alternative 2 wäre alle Devices zu checken und die ältesten Werte in einer Listbox (gibt es sowas ?) anzuzeigen.
Sicher gibt es noch viele andere Varianten - würde mich mal interessieren ob und - falls ja - wie ihr das gelöst habt, da ich im Moment nicht so recht weiß, wie ich anfangen soll ...

marvin78

Es gibt ReadingsAge und auch diverse Monitoring Module.

Wzut

Maintainer der Module: MAX, MPD, UbiquitiMP, UbiquitiOut, SIP, BEOK, readingsWatcher

dt2510

Ich müsste also ein Device anlegen

define RW readingsWatcher

und dann bei meinem Device Rauchmelder_1

attr Rauchmelder_1 86400,,temperature,battery

Jetzt würden temperature und battery überwacht ob sie innerhalb des letzten Tages verändert wurden. Finde ich die Info dann nur im Device RW im Reading Rauchmelder_1.aktueller_status ?

dkreutz

Viele Wege führen zum Ziel:
Bei mir ist es ein JeeLink USB-Stick über den ich die LaCrosse-Thermometer auslese und der alle paar Wochen mal den Betrieb einstellt. Da habe ich einen watchdog-Device drauf das alle 20 Minuten prüft, ob sich bei einem der LaCrosse-Devices der STATE aktualisiert hat (falls nein wird ein RESET-Befehl an den JeeLink gesendet).
Raspberry Pi3B+ (Bullseye) / JeeLink868v3c (LaCrosse), nanoCUL433 (a-culfw V1.24.02), HM-MOD-UART (1.4.1), TEK603, MapleCUL / diverse Sensoren/Sender/Aktoren von Technoline, Intertechno, Shelly, Homematic und MAX!, Froggit Wetterstation, Luftdaten.info / Autor des fhem-skill für Mycroft.ai

Wzut

Zitat von: dt2510 am 24 September 2019, 11:04:38
Finde ich die Info dann nur im Device RW im Reading Rauchmelder_1.aktueller_status ?
im ersten Schritt ist alles auf das RW Device beschränkt, für weitere Infos direkt im überwachten Device ist das Attribut readingActifity zuständig.
ZitatreadingActifity (default none)
Das Modul kann ähnlich dem HomeMatic ActionDetector im überwachten Gerät ein eigenes Reading setzen und den Überwachungsstatus
in diesem speichern. Beispiel :
attr <name> readingActifity actifity
Erzeugt in den überwachten Geräten das zusätzliche Reading actifity und versorgt es mit dem Status dead bzw alive
attr <name> readingActifity aktiv:0:1
Erzeugt in den überwachten Geräten das zusätzliche Reading aktiv und versorgt es mit dem Status 0 bzw 1
Maintainer der Module: MAX, MPD, UbiquitiMP, UbiquitiOut, SIP, BEOK, readingsWatcher

dt2510

Das Attribut heißt wirklich readingActifity - nicht readingActivity ?

dt2510

es heißt readingActivity ... hab' es mal eingebaut und es funktioniert einwandfrei :) Danke !!

dt2510

#8
Eine Frage hab' ich noch. Folgendes Attribut hab ich gesetzt

attr FGSD002_ID23 readingsWatcher 86400,,temperature,battery

Die Temperatur wurde kürzlich aktualisiert (steht im readingsWatcher Device auf "ok"), die Batterie vor 2 Tagen. FGSD002_ID23_battery steht daher auch korrekterweise auf "timeout".
Wieso aber ist das readingsActivity Attribut von FGSD002_ID23 (heißt bei mir "alive") "dead" und nicht "alive" ? Sollte das nicht alive sein, wenn mindestens ein Wert verändert wurde ?

edit:

ich denke ich überwache nicht temperature, battery usw. einzeln sondern wakeup - wo es vorhanden ist - dann weiß ich daß das Gerät noch aktiv ist. Der Batteriewert wird oft nur aktualisiert, wenn er sich ändert.

Wzut

Zitat von: dt2510 am 24 September 2019, 12:14:20
Sollte das nicht alive sein, wenn mindestens ein Wert verändert wurde ?
Ansichtsache, wie so vieles im Leben.
Wenn der Patient nur "halbtot" da liegt ist er nicht mehr gesund und genau das will man (ich) eigentlich wissen :) 
Maintainer der Module: MAX, MPD, UbiquitiMP, UbiquitiOut, SIP, BEOK, readingsWatcher