Autor Thema: expiredReadings  (Gelesen 5737 mal)

Offline pirmanji

  • New Member
  • *
  • Beiträge: 16
expiredReadings
« am: 03 Juni 2019, 19:03:37 »
Huhu!

ich weiß nicht, ob es da schon etwas Entsprechendes gibt (gefunden habe ich in der Doku erstmal nichts): ich lasse mir in regelmäßigen Abständen Readings per Telegram / Pushbullet auf mein Smartphone senden. Es kommt aber auch immer wieder vor, dass irgend etwas schief läuft (kein Empfang zum Temperatursensor etc) und ich bekomme total veraltete Werte gesendet, die mich in falsche Sicherheit wiegen. Also bastel ich immer mal wieder, damit ich veraltete Werte rausfiltere bzw. entsprechend informiere, dass kein aktueller Wert da ist. Aber es wäre viel einfacher, wenn es ein globales Attribut gäbe, dem man mitteilen könnte, dass bestimmte Readings nach einer gewissen Zeit expired sind und was dann passieren soll. Z.B. comma-separated list of reading:interval:expiredValue, oder ähnlich:

attr xyz expiredReadings RegEx:300:-1, RegEx:1200:undef

Mir persönlich würde es ja schon reichen, wenn das von ReadingsVal() ausgewertet würde. Ich kenne aber die Interna nicht und hab mich auch noch nicht durchgewühlt. Das ist für andere Leute vielleicht viel einfacher und ich werfe das jetzt einfach mal so in den Raum. Oder gibt es das doch schon?

Viele Grüße,
Christian
Raspberry Pi 3 + COC SlowRF 868.30MHz (FS20 S8-3 + 2x DS18B20) + 1x SCC SlowRF 433.92MHz (3x TX17 + 1x TX3) + JeeLink (4x PCA301) + MaxCube

Offline amenomade

  • Hero Member
  • *****
  • Beiträge: 4381
Antw:expiredReadings
« Antwort #1 am: 03 Juni 2019, 19:53:44 »
Also... mit ReadingsTimestamp und ReadingsAge kannst Du schon auswerten.

Bin kein Developer, aber das was Du dir wünschst, sehe ich schwierig zu implementieren: man sollte bei jedem Reading-Setzen irgendwelches Timer noch dazu setzen, das das Reading dann löscht. Viel Last für Fhem, und wenig Sinn.

Ausserdem: vielleicht brauchst Du die verältete Readings für deine Benachrichtung nicht, aber für irgendwelche andere Steuerung doch. Lieber ReadingsAge auswerten, wenn Du es brauchst
« Letzte Änderung: 03 Juni 2019, 19:55:43 von amenomade »
FHEM 5.8 Pi 3, EchoDot, CUL868+Selbstbau 1/2λ-Dipol-Antenne, USB Optolink / Vitotronic, und HM Komponenten, Rademacher Duofern Jalousien, Fritz!Dect Thermostaten

Offline pirmanji

  • New Member
  • *
  • Beiträge: 16
Antw:expiredReadings
« Antwort #2 am: 03 Juni 2019, 20:13:28 »
Hmm...die Idee mit den Timers ist gar nicht schlecht. Soviel Last dürfte das gar nicht erzeugen. Sämtliche Readings zu loggen erzeugt sicherlich mehr. Aber eigentlich würde es auch reichen, jene Funktionen, mit denen man gezielt Readings ausliest mit einer entsprechenden Abfrage zu versehen. Denn im FhemWeb muss ich es nicht sehen. Da habe ich ja die Zeit des Readings jeweils dabei.
Raspberry Pi 3 + COC SlowRF 868.30MHz (FS20 S8-3 + 2x DS18B20) + 1x SCC SlowRF 433.92MHz (3x TX17 + 1x TX3) + JeeLink (4x PCA301) + MaxCube

Offline CoolTux

  • Developer
  • Hero Member
  • ****
  • Beiträge: 22368
Antw:expiredReadings
« Antwort #3 am: 03 Juni 2019, 20:19:10 »
Da Du anscheinend schon eine Funktion hast welche Zeitgesteuert Dir Werte zu sendet kannst Du Dir doch gleich noch das Alter des Wertes mit dazu senden lassen.
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://paypal.me/pools/c/8gULisr9BT
FHEM GitHub: https://github.com/fhem/
kein Support für cfg Editierer

Offline betateilchen

  • Developer
  • Hero Member
  • ****
  • Beiträge: 16096
  • s/fhem\.cfg/configDB/g
Antw:expiredReadings
« Antwort #4 am: 03 Juni 2019, 20:39:43 »
Popcorn?
-----------------------
Unaufgeforderte Anfragen per email werden von mir nicht beantwortet. Dafür ist das Forum da.

Offline herrmannj

  • Global Moderator
  • Hero Member
  • ****
  • Beiträge: 5097
Antw:expiredReadings
« Antwort #5 am: 03 Juni 2019, 20:50:54 »
Schau dir doch mal den watchdog an
smartVisu mit fronthem, einiges an HM, RFXTRX, Oregon, CUL, Homeeasy, ganz viele LED + Diverse

Offline peterk_de

  • Sr. Member
  • ****
  • Beiträge: 764
Antw:expiredReadings
« Antwort #6 am: 03 Juni 2019, 21:37:13 »
+1 ;-)

Interessanterweise hatte ich die Tage genau den gleichen Wunsch im Kopf ...

Aktuell gelöst habe ich es mit dem Modul "Monitoring" für wichtige Readings, die gerne mal "aussteigen" (wegen leerer Batterien / kaputten Funkgateway o.Ä.). Das Monitoring-Modul triggert dann eine Push-Benachrichtigung und überschreibt das Reading im Device mit "invalid". Dazu nutze ich diverse solcher Monitoring-Devices, die sich jeder wiederum um diverse Readings kümmern (für jeden Regex ein Monitoring-Device) ... schön ist was anderes:  ;-)

defmod system.monitoring.co2 monitoring (.*raspi.co2):co2:.*
attr system.monitoring.co2 errorWait 30*60
attr system.monitoring.co2 event-on-change-reading state,errorCount
attr system.monitoring.co2 stateFormat {"Offline: ".monitoring_stateFormat("system.monitoring.co2")}

Dazu dann noch NOTIFYS bzw. DOIFS, die die entsprechende Aktion ausführen (also Benachrichtigung, das nix mehr kommt und Reading "löschen").

Könnte man sicher auch mit dem Monitoring Modul noch eleganter hinbekommen als ich das grad tue, aber eine Definition des Ablaufdatums direkt im Device wäre m.E. nochmal sehr viel galanter, da für mich die Information, wann ein Reading als nicht mehr verfügbar zu verstehen ist, irgendwie auch direkt zum Device gehört. Denn so wie ichs grad mache, muss ich bei jedem neuen Device erstmal noch "an anderer Stelle" die Monitoring-Dinger anpassen / ergänzen, und dazu bin ich dann meist zu faul oder vergesse es ;)

Die Syntax so wie du sie vorgeschlagen hast fände ich so ziemlich perfekt.
« Letzte Änderung: 03 Juni 2019, 21:39:27 von peterk_de »
FHEM auf 2xNUC Proxmox Cluster
7xFHEM2FHEM-Roomnodes
Frontends: 4x TabletUI, HomeKit, Grafana, StreamDeck
IOdevs: 3xHM, 2xHueBridge, CUL868, HarmonyHub
Devices: 73xHomematic, 53xZigBee, 19xTechem, 17xLAN/WiFi, 12xBTLE, 5xIPCAM, 4xSONOS, 2xHomeConnect, DENON, Kfz-OBD2/GPS-Tracker, ..

Offline Peteruser

  • Full Member
  • ***
  • Beiträge: 128
  • FHEM + ESPEasy + Homematic + HUE + DUROFERN
Antw:expiredReadings
« Antwort #7 am: 23 August 2019, 10:56:09 »
Hallo,
ich wollte gerade so etwas anregen, hab dann den vorhandenen Eintrag in der Wunschliste gefunden. Wenn ich mir die letzten Einträge in dem Forum ansehe, dann macht jeder so sein eingenes Süppchen. Bei mir macht das ein Cronjob, der regelmäßig über die wichtigen Werte wacht.

Könnte man hier nicht wenigstens ein Attribut einführen?
attr <Device> TTL <Reading>  <Zeit in Sekunden> <Aktion>

Ich Cleane den Wert bei mir, dann ist ein entsprechendes Chart an der Stelle leer
Aktion > Clean

Sicher geht das auch mit den Userattributen und eingenen Scripten
attr global userattr <attributelist>

Grüße Peter
« Letzte Änderung: 23 August 2019, 10:58:32 von Peteruser »
Ubuntu FHEM + ESPEasy + Homematic + HUE + DUROFERN

Offline herrmannj

  • Global Moderator
  • Hero Member
  • ****
  • Beiträge: 5097
Antw:expiredReadings
« Antwort #8 am: 23 August 2019, 11:02:47 »
Watchdog
smartVisu mit fronthem, einiges an HM, RFXTRX, Oregon, CUL, Homeeasy, ganz viele LED + Diverse

Offline Wzut

  • Developer
  • Hero Member
  • ****
  • Beiträge: 2698
Antw:expiredReadings
« Antwort #9 am: 23 August 2019, 11:31:13 »
Maintainer der Module: MPD, UbiquitiMP, UbiquitiOut, SIP, BEOK, readingsWatcher

Offline Peteruser

  • Full Member
  • ***
  • Beiträge: 128
  • FHEM + ESPEasy + Homematic + HUE + DUROFERN
Antw:expiredReadings
« Antwort #10 am: 23 August 2019, 11:56:34 »
Hallo,
danke für den Hinweis, in der Doku ist darüber noch nichts zu finden.
Werde das mal testen, scheint genau das zu sein, mit einer aus meiner Sicht unglücklichen Namensgebung.

Gibt es hier schon einen offiziellen Downloadlink oder nur das File in Forum?

Grüße Peter
« Letzte Änderung: 23 August 2019, 12:36:06 von Peteruser »
Ubuntu FHEM + ESPEasy + Homematic + HUE + DUROFERN

Offline Wzut

  • Developer
  • Hero Member
  • ****
  • Beiträge: 2698
Antw:expiredReadings
« Antwort #11 am: 23 August 2019, 12:51:08 »
ob der Name nun glücklich oder nicht ist darüber kann man streiten, ich habe damals in diese Richtung keinen Gedanken verschwendet und ihn vom seinem Vater HCS übernommen. Wenn das Modul via SVN verfügbar wäre hätte ich es schon aus dem ersten Post gelöscht und einen Vermerk hinterlassen.
Maintainer der Module: MPD, UbiquitiMP, UbiquitiOut, SIP, BEOK, readingsWatcher

Offline Peteruser

  • Full Member
  • ***
  • Beiträge: 128
  • FHEM + ESPEasy + Homematic + HUE + DUROFERN
Antw:expiredReadings
« Antwort #12 am: 23 August 2019, 13:50:43 »
Hallo,
ok, dann gibt es in kürze einen Testunser mehr.  ;D

Grüße Peter
Ubuntu FHEM + ESPEasy + Homematic + HUE + DUROFERN

Offline Christoph Morrison

  • Developer
  • Sr. Member
  • ****
  • Beiträge: 891
  • Maintainer von 12 Modulen + holiday-Files
    • Private Website
Antw:expiredReadings
« Antwort #13 am: 23 August 2019, 16:07:16 »
Gibt es eine Chance dass du es in den FHEM-Github-Space mit controls schiebst?
Maintainer von:
holidays · 59_Twilight · Webcount · Lindy_HDMI_Swich · ALL3076 · ALL4027 · WEBIO · ALL4000T · WEBIO_12DIGITAL · Itach_Relay · VantagePro2 · WEBTHERM · Buienradar

Offline Wzut

  • Developer
  • Hero Member
  • ****
  • Beiträge: 2698
Antw:expiredReadings
« Antwort #14 am: 23 August 2019, 17:21:24 »
@Christoph, ich verstehe deine Worte , aber nicht deren Sinn :(
Ich habe keine Ahnung was der FHEM-Github-Space ist, IMHO gibt es genau zwei Alternativen :
a. ich setze mich hin und bringe endlich die command.ref auf Vorderman und checke ganz normal ein
b. ich spare mir die Doku Arbeit und lege es unterhalb contrib ab, nur da ist es vom update und Commandref genau so ausgeschlossen wie im ersten Post des Freds
Maintainer der Module: MPD, UbiquitiMP, UbiquitiOut, SIP, BEOK, readingsWatcher

 

decade-submarginal