Hallo zusammen,
ich habe seit Ewigkeiten ein Doif am laufen was seit geraumer zeit nicht mehr richtig funktioniert.
Mein Licht geht zwar an, aber nicht mehr aus. Liegt es an einem update oder habe ich einen Fehler in meiner Config?
LIST:
Internals:
DEF ([HmIPW_Anzeige_Schiebetor] eq "true" and [4:30-5:15])
(set HmIPW_Licht_Esszimmer on-for-timer 300)
(set HmIPW_Licht_Garten on-for-timer 180)
(set HmIPW_Licht_Gartenweg on-for-timer 180)
(set HmIPW_Licht_Stellplatz on-for-timer 180)
(set HmIPW_Rollo_Esszimmer_Tuer open)
DOELSEIF
([HmIPW_Anzeige_Schiebetor:"^STATE:.true$"] and [HmIP_Helligkeitssensor:licht] eq "1")
(set HmIPW_Licht_Garten on-for-timer 180)
(set HmIPW_Licht_Gartenweg on-for-timer 180)
(set HmIPW_Licht_Stellplatz on-for-timer 180)
FUUID 5f36ab05-f33f-19ae-ed49-8921b2156b86a678
MODEL FHEM
NAME doif_Schiebetor_licht
NOTIFYDEV global,HmIP_Helligkeitssensor,HmIPW_Anzeige_Schiebetor
NR 136
NTFY_ORDER 50-doif_Schiebetor_licht
STATE cmd_1
TYPE DOIF
VERSION 25386 2021-12-28 22:19:25
READINGS:
2022-01-13 21:00:44 Device HmIPW_Anzeige_Schiebetor
2022-01-13 21:59:35 cmd 1.5
2022-01-13 21:59:35 cmd_event set_cmd_1
2022-01-13 21:59:35 cmd_nr 1
2022-01-13 21:59:35 cmd_seqnr 5
2022-01-13 21:00:44 e_HmIPW_Anzeige_Schiebetor_STATE false
2022-01-13 21:00:44 e_HmIPW_Anzeige_Schiebetor_events false,STATE: false,hmstate: false
2022-01-13 16:52:03 e_HmIP_Helligkeitssensor_licht 1
2022-01-12 21:52:04 mode enabled
2022-01-13 21:59:35 state cmd_1
2022-01-13 05:15:00 timer_01_c01 14.01.2022 04:30:00
2022-01-13 05:15:00 timer_02_c01 14.01.2022 05:15:00
Regex:
accu:
collect:
cond:
HmIPW_Anzeige_Schiebetor:
0:
&STATE ^HmIPW_Anzeige_Schiebetor$
1:
&STATE ^HmIPW_Anzeige_Schiebetor$
HmIP_Helligkeitssensor:
0:
1:
licht ^HmIP_Helligkeitssensor$:^licht:
attr:
cmdState:
wait:
waitdel:
condition:
0 ::InternalDoIf($hash,'HmIPW_Anzeige_Schiebetor','STATE') eq "true" and ::DOIF_time($hash,0,1,$wday,$hms)
1 ::EventDoIf('HmIPW_Anzeige_Schiebetor',$hash,'^STATE:.true$',1) and ::ReadingValDoIf($hash,'HmIP_Helligkeitssensor','licht') eq "1"
days:
do:
0:
0 set HmIPW_Licht_Esszimmer on-for-timer 300
1 set HmIPW_Licht_Garten on-for-timer 180
2 set HmIPW_Licht_Gartenweg on-for-timer 180
3 set HmIPW_Licht_Stellplatz on-for-timer 180
4 set HmIPW_Rollo_Esszimmer_Tuer open
1:
0 set HmIPW_Licht_Garten on-for-timer 180
1 set HmIPW_Licht_Gartenweg on-for-timer 180
2 set HmIPW_Licht_Stellplatz on-for-timer 180
2:
helper:
DEVFILTER ^global$|^HmIP_Helligkeitssensor$|^HmIPW_Anzeige_Schiebetor$
NOTIFYDEV global|HmIP_Helligkeitssensor|HmIPW_Anzeige_Schiebetor
event false,STATE: false,hmstate: false
globalinit 1
last_timer 2
sleeptimer -1
timerdev HmIPW_Anzeige_Schiebetor
timerevent STATE: true
triggerDev HmIPW_Anzeige_Schiebetor
timerevents:
true
STATE: true
hmstate: true
timereventsState:
state: true
STATE: true
hmstate: true
triggerEvents:
false
STATE: false
hmstate: false
triggerEventsState:
state: false
STATE: false
hmstate: false
internals:
all HmIPW_Anzeige_Schiebetor:STATE
interval:
0 -1
1 0
intervalfunc:
intervaltimer:
localtime:
0 1642131000
1 1642133700
readings:
all HmIP_Helligkeitssensor:licht
realtime:
0 04:30:00
1 05:15:00
time:
0 4:30
1 5:15
timeCond:
0 0
1 0
timer:
0 0
1 0
timers:
0 0 1
trigger:
all HmIPW_Anzeige_Schiebetor
triggertime:
1642131000:
localtime 1642131000
hash:
1642133700:
localtime 1642133700
hash:
uiState:
uiTable:
Attributes:
do always
room DOIF,Homematic
LG Patrick
Mal solo probiert?
set HmIPW_Licht_Esszimmer on-for-timer 300
Mal die Events angeschaut? Eventmonitor
HmIPW_Anzeige_Schiebetor.*
Du hast do always aktiv, jeder Event wird verlängern :)
Solo klappt es.
das Event Schiebetor auf kommt ja eigentlich nur einmal. Hat ja auch lange funktioniert. (fast 2 jahre) Event Monitor schaue ich mir mal an.
eigentlich sollte es so sein:
[HmIPW_Anzeige_Schiebetor:"^STATE:.true$"]
komisch ist das es an geht aber nicht aus... als würden weitere Timer gelöscht oder ignoriert
Testweise habe ich das mal versucht:
([FB_Eckig_Neu_1:"^action:.left$"] and [HmIP_Helligkeitssensor:licht] eq "1")
(set HmIPW_Licht_Keller_Flur on-for-timer 10)
(set HmIPW_Licht_Keller_Hobby on-for-timer 10)
(set HmIPW_Licht_Keller_Lager on-for-timer 10)
da geht nur das erste aus
EDIT: bei nur einem gerät funktioniert das DOIF
naja solche Befehlstrennung ist eigentlich nicht nötig.
((set HmIPW_Licht_Keller_Flur,HmIPW_Licht_Keller_Hobby,HmIPW_Licht_Keller_Lager on-for-timer 10))
Aber DOIF ist speziell ::)
geht auch so:
(set HmIPW_Licht_Keller_Flur on-for-timer 10, set HmIPW_Licht_Keller_Hobby on-for-timer 10,set HmIPW_Licht_Keller_Lager on-for-timer 10))
Oder HMCCU (wer auch immer) braucht Zeit, hatte sowas woanders gelesen. Geht das in der FHEM Kommandozeile?
set HmIPW_Licht_Keller_Flur,HmIPW_Licht_Keller_Hobby,HmIPW_Licht_Keller_Lager on-for-timer 10
Zitatset HmIPW_Licht_Keller_Flur,HmIPW_Licht_Keller_Hobby,HmIPW_Licht_Keller_Lager on-for-timer 10
an geht... aus nicht.. also liegt es nicht am DOIF
habe es gefunden...
habe mir selber das Ei gelegt....
https://forum.fhem.de/index.php/topic,83475.msg849109.html#msg849109 (https://forum.fhem.de/index.php/topic,83475.msg849109.html#msg849109)
Zitat1. Nimm nonBlocking raus