Hallo,
ich habe ein DOIF gebaut, mit dem eine Zirkulationspumpe temperaturgesteuert ein- und wieder ausgeschaltet werden soll.
Trotz setzen des Attributes "do always" funktioniert das immer nur ein Mal, nachdem man "set checkall" ausgelöst hat.
Den Code habe ich vereinfacht, statt des Schaltens der Pumpe ist nur eine Messageausgabe im DO-Teil enthalten.
Ich verstehe nicht, woran das liegt, wisst Ihr bitte Rat.
Internals:
CFGFN
DEF ( [06:15-22:00|8] and ReadingsNum("VBUSDEV_7112","Temperatur_Sensor_8",0.0,1)< 35.0 )
( msg push @rr_Thomas Zirku-Leitung UNTER 35 °C)
DOELSEIF ( [08:15-22:00|7] and ReadingsNum("VBUSDEV_7112","Temperatur_Sensor_8",0.0,1) < 35.0 )
( msg push @rr_Thomas Zirku-Leitung UNTER 35 °C)
DOELSE (msg push @rr_Thomas Zirku-Leitung ÜBER 35 °C)
FUUID 6adb3101-f33f-4950-053b-2da68312671428fb
MODEL FHEM
NAME doif_TemperaturTest
NOTIFYDEV global
NR 316
NTFY_ORDER 50-doif_TemperaturTest
STATE cmd_1
TYPE DOIF
VERSION 31767 2026-10-11 20:31:19
eventCount 8
Helper:
DBLOG:
cmd:
LOG_fhemdb:
TIME 1792752600.57525
VALUE 1
cmd_event:
LOG_fhemdb:
TIME 1792752600.57525
VALUE doif_TemperaturTest
cmd_nr:
LOG_fhemdb:
TIME 1792752600.57525
VALUE 1
last_cmd:
LOG_fhemdb:
TIME 1792750690.23138
VALUE disabled
mode:
LOG_fhemdb:
TIME 1792752587.31241
VALUE enabled
state:
LOG_fhemdb:
TIME 1792752600.57525
VALUE cmd_1
READINGS:
2026-10-23 12:50:00 cmd 1
2026-10-23 12:50:00 cmd_event doif_TemperaturTest
2026-10-23 12:50:00 cmd_nr 1
2026-10-23 12:49:47 mode enabled
2026-10-23 12:50:00 state cmd_1
2026-10-23 12:49:47 timer_01_c01 24.10.2026 06:15:00|8
2026-10-23 12:49:47 timer_02_c01 23.10.2026 22:00:00|8
2026-10-23 12:49:47 timer_03_c02 24.10.2026 08:15:00|7
2026-10-23 12:49:47 timer_04_c02 23.10.2026 22:00:00|7
Regex:
accu:
bar:
barAvg:
collect:
attr:
cmdState:
wait:
waitdel:
condition:
0 ::DOIF_time($hash,0,1,$wday,$hms,"8") and ReadingsNum("VBUSDEV_7112","Temperatur_Sensor_8",0.0,1)< 35.0
1 ::DOIF_time($hash,2,3,$wday,$hms,"7") and ReadingsNum("VBUSDEV_7112","Temperatur_Sensor_8",0.0,1) < 35.0
days:
0 8
1 8
2 7
3 7
do:
0:
0 msg push @rr_Thomas Zirku-Leitung UNTER 35 °C
1:
0 msg push @rr_Thomas Zirku-Leitung UNTER 35 °C
2:
0 msg push @rr_Thomas Zirku-Leitung ÜBER 35 °C
helper:
NOTIFYDEV global
globalinit 1
last_timer 4
sleeptimer -1
timerdev
timerevent
timerevents
timereventsState
triggerDev
DOIF_eventa:
cmd_nr: 1
cmd: 1
cmd_event: doif_TemperaturTest
cmd_1
DOIF_eventas:
cmd_nr: 1
cmd: 1
cmd_event: doif_TemperaturTest
state: cmd_1
interval:
0 -1
1 0
2 -1
3 2
intervalfunc:
localtime:
0 1792815300
1 1792785600
2 1792822500
3 1792785600
realtime:
0 06:15:00
1 22:00:00
2 08:15:00
3 22:00:00
time:
0 06:15:00
1 22:00:00
2 08:15:00
3 22:00:00
timeCond:
0 0
1 0
2 1
3 1
timer:
0 0
1 0
2 0
3 0
timers:
0 0 1
1 2 3
triggertime:
1792785600:
localtime 1792785600
hash:
1792815300:
localtime 1792815300
hash:
1792822500:
localtime 1792822500
hash:
uiState:
uiTable:
Attributes:
do always
room Logik
VG