Seltsames Verhalten von deltaSince
Verfasst: 13. Okt 2022 18:06
Hallo,
ich wollte heute mal ein wenig rumspielen mit der Energie-Messung... Ich habe eine ShellyPlug S die den Energieverbrauch messen kann, die ist über MQTT angebunden, Persistenz ist die Standard rrd4j, d.h. ich habe da überhaupt nix dran konfiguriert.
Nun wollte ich mal einfach den Energieverbrauch der letzten Stunde ins Log ausgeben, dazu benutze ich die deltaSince Funktion:
dabei habe ich festgestellt, dass hier "ab und zu" null zurückkommt an Stelle eines Wertes - die meiste Zeit funktioniert es aber problemlos.
Die Rule wird auf getriggert. Bei genauerem hinschauen habe ich festgestellt, dass null nur auftritt wenn ich genau auf eine Minuten-Grenze treffe, also die Sekunden 00 sind, z,B, 2022-10-13 12:08:00.763 im Log. Und tatsächlich, wenn ich die Rule stattdessen alle 5 Minuten triggere dann kommt fast immer null zurück... aber ab und zu auch ein Wert
Klar kann ich das umgehen in dem ich auf null prüfe und es ist kein echtes Problem, aber weiss jemand warum sowas vorkommt? Ich hätte gedacht es wird immer ein Wert gefunden, wenn exakt zu dem Zeitpunkt kein neuer existiert dann halt der nächst frühere der sozusagen noch anhält...
rfu
ich wollte heute mal ein wenig rumspielen mit der Energie-Messung... Ich habe eine ShellyPlug S die den Energieverbrauch messen kann, die ist über MQTT angebunden, Persistenz ist die Standard rrd4j, d.h. ich habe da überhaupt nix dran konfiguriert.
Nun wollte ich mal einfach den Energieverbrauch der letzten Stunde ins Log ausgeben, dazu benutze ich die deltaSince Funktion:
Code: Alles auswählen
var deltaHourState = ShellyPlug2_Energy.deltaSince(now.minusHours(1))
Die Rule wird auf
Code: Alles auswählen
Item ShellyPlug2_Energy received update
Code: Alles auswählen
Time cron "0 1/5 * ? * * *"

Klar kann ich das umgehen in dem ich auf null prüfe und es ist kein echtes Problem, aber weiss jemand warum sowas vorkommt? Ich hätte gedacht es wird immer ein Wert gefunden, wenn exakt zu dem Zeitpunkt kein neuer existiert dann halt der nächst frühere der sozusagen noch anhält...
rfu