[gelöst] DOIF Zeitspanne aus Reading holen und aktualisieren

Begonnen von marwal, 03 Februar 2023, 14:42:25

Vorheriges Thema - Nächstes Thema

marwal

Hallo zusammen,

ich habe ein DOIF und würde gerne die Zeitspanne von-bis aus einem Reading holen. Das klappt nach Änderung des Readings - allerdings erst dann, wenn ich beim DOIF ein modify mache und es neu definiert wird.

Hier mal das DOIF:

defmod di_BeleuchtungsZeit DOIF ([([{(ReadingsVal("di_BeleuchtungsZeit","an","17:00"))}])-([{(ReadingsVal("di_BeleuchtungsZeit","aus","19:00"))}])]) (set WZ_esstisch3_hue on) DOELSE (set WZ_esstisch3_hue off)
attr di_BeleuchtungsZeit do always
attr di_BeleuchtungsZeit room 000_TEST

setstate di_BeleuchtungsZeit initialized
setstate di_BeleuchtungsZeit 2023-02-03 14:22:33 an 16:30
setstate di_BeleuchtungsZeit 2023-02-03 10:46:49 aus 18:00
setstate di_BeleuchtungsZeit 2023-02-03 14:22:11 cmd 0
setstate di_BeleuchtungsZeit 2023-02-03 14:22:11 mode enabled
setstate di_BeleuchtungsZeit 2023-02-03 14:22:11 state initialized
setstate di_BeleuchtungsZeit 2023-02-03 14:22:11 timer_01_c01 04.02.2023 14:20:00
setstate di_BeleuchtungsZeit 2023-02-03 14:22:11 timer_02_c01 03.02.2023 18:00:00


Das Reading an und aus wird regelmäßig geändert.
Wie kann ich es anders lösen?


Besten Dank

Damian

dann eher so:

defmod di_BeleuchtungsZeit DOIF ([[di_BeleuchtungsZeit:an,"17:00"]-[di_BeleuchtungsZeit:aus,"19:00"]]) (set WZ_esstisch3_hue on) DOELSE (set WZ_esstisch3_hue off)
Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

marwal