Hallo,
folgende Situation: Ich habe über die Fritzbox eine Anwesenheitserkennung eingerichtet. Wenn keiner mehr Zuhause ist, schaltet diese alles in der Wohnung aus.
Ich habe mehrere LEDStripes mit "Zeitschaltungs DoIf´s" belegt, welche auch machen was Sie sollen. NUR wenn diese durch die Abwesenheitserkennung ausgeschaltet werden, gehen diese nicht wieder an bis dass nächste cmd im Doif greift.
Beispiel:
Haus Dienstag 16:30 verlassen (LEDStripe war bis dahin auf 100%)
Zurück Dienstag 17:30 jetzt passiert nix, es sollte aber wieder auf 100% wie im Doif eingestellt.
Wo liegt hier der Fehler versteckt?
([Anwesenheit] eq "1" and [5:30-8:30|Mo Di Mi Do Fr]) (set ledStripe04 RGB 30E0FF, set ledStripe04 dim 25)
DOELSEIF([Anwesenheit] eq "1" and [16:00-20:00|Mo Di Mi Do]) (set ledStripe04 RGB 30E0FF, set ledStripe04 dim 100)
DOELSEIF([Anwesenheit] eq "1" and [20:00-23:59|Mo Di Mi Do Fr]) (set ledStripe04 RGB 30E0FF, set ledStripe04 dim 7)
DOELSEIF([Anwesenheit] eq "1" and [7:00-8:30|Sa So]) (set ledStripe04 RGB 30E0FF, set ledStripe04 dim 25)
DOELSEIF([Anwesenheit] eq "1" and [8:30-11:30|Fr Sa So]) (set ledStripe04 RGB 30E0FF, set ledStripe04 dim 100)
DOELSEIF([Anwesenheit] eq "1" and [16:00-22:00|Fr Sa So]) (set ledStripe04 RGB 30E0FF, set ledStripe04 dim 100)
DOELSEIF([Anwesenheit] eq "1" and [22:00-03:00|Sa So]) (set ledStripe04 RGB 30E0FF, set ledStripe04 dim 7)
DOELSE(set ledStripe04 off)
Vielen Dank euch schonmals :)
Ein list des DOIFs im "falschem" Zustand könnte helfen, um festzustellen, in welchem Zweig und warum es sich befindet.
Internals:
DEF ([Anwesenheit] eq "1" and [ledStripe04] eq "off" and [5:30-8:30|Mo Di Mi Do Fr]) (set ledStripe04 RGB 30E0FF, set ledStripe04 dim 25)
DOELSEIF([Anwesenheit] eq "1" and [ledStripe04] eq "off" and [16:00-20:00|Mo Di Mi Do]) (set ledStripe04 RGB 30E0FF, set ledStripe04 dim 100)
DOELSEIF([Anwesenheit] eq "1" and [ledStripe04] eq "off" and [20:00-23:59|Mo Di Mi Do Fr]) (set ledStripe04 RGB 30E0FF, set ledStripe04 dim 7)
DOELSEIF([Anwesenheit] eq "1" and [ledStripe04] eq "off" and [7:00-8:30|Sa So]) (set ledStripe04 RGB 30E0FF, set ledStripe04 dim 25)
DOELSEIF([Anwesenheit] eq "1" and [ledStripe04] eq "off" and [8:30-11:30|Fr Sa So]) (set ledStripe04 RGB 30E0FF, set ledStripe04 dim 100)
DOELSEIF([Anwesenheit] eq "1" and [ledStripe04] eq "off" and [16:00-22:00|Fr Sa So]) (set ledStripe04 RGB 30E0FF, set ledStripe04 dim 100)
DOELSEIF([Anwesenheit] eq "1" and [ledStripe04] eq "off" and [22:00-03:00|Sa So]) (set ledStripe04 RGB 30E0FF, set ledStripe04 dim 7)
DOELSE(set ledStripe04 off)
NAME Zeitschaltung_Nachttischbeleuchtung
NR 169
NTFY_ORDER 50-Zeitschaltung_Nachttischbeleuchtung
STATE cmd_3
TYPE DOIF
READINGS:
2017-12-19 20:00:00 cmd 3
2017-12-19 20:00:00 cmd_event timer_5
2017-12-19 20:00:00 cmd_nr 3
2017-12-19 20:00:00 state cmd_3
2017-12-19 17:18:57 timer_01_c01 20.12.2017 05:30:00|MoDiMiDoFr
2017-12-19 17:18:57 timer_02_c01 20.12.2017 08:30:00|MoDiMiDoFr
2017-12-19 20:00:00 timer_03_c02 20.12.2017 16:00:00|MoDiMiDo
2017-12-19 20:00:00 timer_04_c02 20.12.2017 20:00:00|MoDiMiDo
2017-12-19 17:18:57 timer_05_c03 19.12.2017 20:00:00|MoDiMiDoFr
2017-12-19 17:18:57 timer_06_c03 19.12.2017 23:59:00|MoDiMiDoFr
2017-12-19 17:18:57 timer_07_c04 20.12.2017 07:00:00|SaSo
2017-12-19 17:18:57 timer_08_c04 20.12.2017 08:30:00|SaSo
2017-12-19 17:18:57 timer_09_c05 20.12.2017 08:30:00|FrSaSo
2017-12-19 17:18:57 timer_10_c05 20.12.2017 11:30:00|FrSaSo
2017-12-19 22:00:00 timer_11_c06 20.12.2017 16:00:00|FrSaSo
2017-12-19 22:00:00 timer_12_c06 20.12.2017 22:00:00|FrSaSo
2017-12-19 17:18:57 timer_13_c07 19.12.2017 22:00:00|SaSo
2017-12-19 17:18:57 timer_14_c07 20.12.2017 03:00:00|SaSo
Regex:
condition:
0 InternalDoIf($hash,'Anwesenheit','STATE') eq "1" and InternalDoIf($hash,'ledStripe04','STATE') eq "off" and DOIF_time($hash,0,1,$wday,$hms,"MoDiMiDoFr")
1 InternalDoIf($hash,'Anwesenheit','STATE') eq "1" and InternalDoIf($hash,'ledStripe04','STATE') eq "off" and DOIF_time($hash,2,3,$wday,$hms,"MoDiMiDo")
2 InternalDoIf($hash,'Anwesenheit','STATE') eq "1" and InternalDoIf($hash,'ledStripe04','STATE') eq "off" and DOIF_time($hash,4,5,$wday,$hms,"MoDiMiDoFr")
3 InternalDoIf($hash,'Anwesenheit','STATE') eq "1" and InternalDoIf($hash,'ledStripe04','STATE') eq "off" and DOIF_time($hash,6,7,$wday,$hms,"SaSo")
4 InternalDoIf($hash,'Anwesenheit','STATE') eq "1" and InternalDoIf($hash,'ledStripe04','STATE') eq "off" and DOIF_time($hash,8,9,$wday,$hms,"FrSaSo")
5 InternalDoIf($hash,'Anwesenheit','STATE') eq "1" and InternalDoIf($hash,'ledStripe04','STATE') eq "off" and DOIF_time($hash,10,11,$wday,$hms,"FrSaSo")
6 InternalDoIf($hash,'Anwesenheit','STATE') eq "1" and InternalDoIf($hash,'ledStripe04','STATE') eq "off" and DOIF_time($hash,12,13,$wday,$hms,"SaSo")
days:
0 MoDiMiDoFr
1 MoDiMiDoFr
10 FrSaSo
11 FrSaSo
12 SaSo
13 SaSo
2 MoDiMiDo
3 MoDiMiDo
4 MoDiMiDoFr
5 MoDiMiDoFr
6 SaSo
7 SaSo
8 FrSaSo
9 FrSaSo
devices:
0 Anwesenheit ledStripe04
1 Anwesenheit ledStripe04
2 Anwesenheit ledStripe04
3 Anwesenheit ledStripe04
4 Anwesenheit ledStripe04
5 Anwesenheit ledStripe04
6 Anwesenheit ledStripe04
all Anwesenheit ledStripe04
do:
0:
0 set ledStripe04 RGB 30E0FF, set ledStripe04 dim 25
1:
0 set ledStripe04 RGB 30E0FF, set ledStripe04 dim 100
2:
0 set ledStripe04 RGB 30E0FF, set ledStripe04 dim 7
3:
0 set ledStripe04 RGB 30E0FF, set ledStripe04 dim 25
4:
0 set ledStripe04 RGB 30E0FF, set ledStripe04 dim 100
5:
0 set ledStripe04 RGB 30E0FF, set ledStripe04 dim 100
6:
0 set ledStripe04 RGB 30E0FF, set ledStripe04 dim 7
7:
0 set ledStripe04 off
helper:
DOIF_Readings_events
DOIF_eventas
event timer_5
globalinit 1
last_timer 14
sleeptimer -1
timerdev
timerevent timer_5
timereventsState
triggerDev
timerevents:
timer_5
triggerEvents:
timer_5
internals:
0 Anwesenheit:STATE ledStripe04:STATE
1 Anwesenheit:STATE ledStripe04:STATE
2 Anwesenheit:STATE ledStripe04:STATE
3 Anwesenheit:STATE ledStripe04:STATE
4 Anwesenheit:STATE ledStripe04:STATE
5 Anwesenheit:STATE ledStripe04:STATE
6 Anwesenheit:STATE ledStripe04:STATE
all Anwesenheit:STATE ledStripe04:STATE
interval:
0 -1
1 0
10 -1
11 10
12 -1
13 12
2 -1
3 2
4 -1
5 4
6 -1
7 6
8 -1
9 8
itimer:
localtime:
0 1513744200
1 1513755000
10 1513782000
11 1513803600
12 1513717200
13 1513735200
2 1513782000
3 1513796400
4 1513710000
5 1513724340
6 1513749600
7 1513755000
8 1513755000
9 1513765800
readings:
realtime:
0 05:30:00
1 08:30:00
10 16:00:00
11 22:00:00
12 22:00:00
13 03:00:00
2 16:00:00
3 20:00:00
4 20:00:00
5 23:59:00
6 07:00:00
7 08:30:00
8 08:30:00
9 11:30:00
time:
0 5:30
1 8:30
10 16:00:00
11 22:00:00
12 22:00:00
13 03:00:00
2 16:00:00
3 20:00:00
4 20:00:00
5 23:59:00
6 7:00
7 8:30
8 8:30
9 11:30:00
timeCond:
0 0
1 0
10 5
11 5
12 6
13 6
2 1
3 1
4 2
5 2
6 3
7 3
8 4
9 4
timer:
0 0
1 0
10 0
11 0
12 0
13 0
2 0
3 0
4 0
5 0
6 0
7 0
8 0
9 0
timers:
0 0 1
1 2 3
2 4 5
3 6 7
4 8 9
5 10 11
6 12 13
triggertime:
1513724340:
localtime 1513724340
hash:
1513735200:
localtime 1513735200
hash:
1513744200:
localtime 1513744200
hash:
1513749600:
localtime 1513749600
hash:
1513755000:
localtime 1513755000
hash:
1513765800:
localtime 1513765800
hash:
1513782000:
localtime 1513782000
hash:
1513796400:
localtime 1513796400
hash:
1513803600:
localtime 1513803600
hash:
uiState:
uiTable:
Attributes:
do always
group Wohnzimmer Logik
room 1.4.0 Schlafzimmer,9.1.0 LOGIKCENTER
Da ist dein DOIF aber beim cmd_3 seit 20:00 Uhr. Er sollte (set ledStripe04 RGB 30E0FF, set ledStripe04 dim 7) geschaltet haben.