Ich möchte mittels Items ermitteln, wann es das letzte Mal wie lange geregent hat. Hier hatte ich schon andere Ansätze im Forum mittels Datenbank, aber irgendwie ging das nicht. Nun möchte ich das mit Items probieren. Gleich dabei habe ich mich auch über die neuen Properties gefreut. Vor allem, weil die Property-Namen wesentlich besser passen (siehe Funktion: last_change und prev_value). Das ist bei den Properties besser.
So sieht das mit den Funktionen aus:
Mit den Properties sähe das denn so aus:
Leider wird der relative Item-Pfad nicht so recht aufgelöst. Oder, was mache ich falsch?
So sieht das mit den Funktionen aus:
Code:
Regen: type: bool knx_dpt: 1 knx_cache: 4/3/0 visu_acl: rw database: yes Regen_Dauer: type: num eval: (sh...Regen_Ende() - sh...Regen_Beginn()).total_seconds() if sh...Regen_Ende() is not None and sh...Regen_Beginn() is not None else None eval_trigger: ..Regen_Ende Regen_Beginn: type: foo cache: yes eval: sh....Regen.last_change() if sh....Regen() and not sh....Regen.prev_value() else None eval_trigger: ...Regen Regen_Ende: type: foo cache: yes eval: sh....Regen.last_change() if not sh....Regen() and sh....Regen.prev_value() else None eval_trigger: ...Regen
Mit den Properties sähe das denn so aus:
Code:
Regen_Beginn: type: foo cache: yes eval: sh....Regen.property.last_change if sh....Regen() and not sh....Regen.property.last_value else None eval_trigger: ...Regen
Leider wird der relative Item-Pfad nicht so recht aufgelöst. Oder, was mache ich falsch?
Code:
2019-07-22 18:14:54 WARNING lib.item Item Zentral.Wetter.Wetterstation.Regen.Regen_Beginn: problem evaluating sh.Zentral.Wetter.Wetterstation.Regen.property.last_change if sh....Regen() and not sh.Zentral.Wetter.Wetterstation.Regen.property.last_value else None: invalid syntax (<string>, line 1)
Kommentar