Rule zum Regenmenge messen täglich

Einrichtung der openHAB Umgebung und allgemeine Konfigurationsthemen.

Moderatoren: seppy, udo1toni

Benutzeravatar
udo1toni
Beiträge: 15241
Registriert: 11. Apr 2018 18:05
Answers: 242
Wohnort: Darmstadt

Re: Rule zum Regenmenge messen täglich

Beitrag von udo1toni »

Ja, das ist kein Wunder. Du versuchst, auf historische Daten zuzugreifen (deltaSince), dabei persistierst Du das Item Wetter_Regenmenge aber gar nicht.

Weiterhin mischst Du hier zwei zueinander inkompatible Items (Number != Number:Length) einfach so. Das könnte in diesem speziellen Fall allerdings tatsächlich funktionieren, da rrd4j nicht mit UoM umgehen kann und deshalb die Einheiten stillschweigend verwirft.
openHAB4.3.3 stable in einem Debian-Container (bookworm) (Proxmox 8.3.5, LXC), mit openHABian eingerichtet

floeg
Beiträge: 19
Registriert: 26. Feb 2020 17:44
Answers: 0

Re: Rule zum Regenmenge messen täglich

Beitrag von floeg »

Vielen Dank; jetzt klappt es.

Kannst du mir auch noch sagen, wie ich die Angabe der Sonnenstunden vom Ausgabewert (in Min) per Rule in Stunden und Minuten umrechnen lassen kann?

Benutzeravatar
udo1toni
Beiträge: 15241
Registriert: 11. Apr 2018 18:05
Answers: 242
Wohnort: Darmstadt

Re: Rule zum Regenmenge messen täglich

Beitrag von udo1toni »

Da müsste man etwas experimentieren. Wie ist das Item definiert, als einfaches Number Item? Die einfache Variante wäre ohne Rule über JavaScript Transformation:

Code: Alles auswählen

Number SonnenStunden "SonnenStunden [JS(minToHM.js):%s]" 
Die Datei minToHM.js kommt ins transform Verzeichnis:

Code: Alles auswählen

(function(minutes){
    var retval = "";
    var hours = Math.floor(minutes / 60)
    minutes = minutes % 60
    if (hours < 10)
        retval = retval + "0";
    retval = retval + hours + "h ";
    if (minutes < 10)
        retval = retval + "0";
    retval = retval + minutes+"m";
    return retval;
})(input)
Die JS Transformation muss dazu natürlich installiert sein. Die Berechnung kannst Du in dieser Form auch in einer Rule ausführen, allerdings steht der Modulo Operator % nur für int (und evtl. für Integer, müsstest Du ausprobieren) zur Verfügung, das musst Du natürlich berücksichtigen (also den Number Status zuerst in eine entsprechende Variable kopieren).

Das JS Script kannst Du aber auch direkt aus einer Rule heraus verwenden.
openHAB4.3.3 stable in einem Debian-Container (bookworm) (Proxmox 8.3.5, LXC), mit openHABian eingerichtet

floeg
Beiträge: 19
Registriert: 26. Feb 2020 17:44
Answers: 0

Re: Rule zum Regenmenge messen täglich

Beitrag von floeg »

Wie immer: Es funktionert. Vielen Dank

Ja, der item, war als Number angelegt, so das das mit deinerm Code und der Transformation problemlos geklappt hat

Antworten