FHEM Forum

FHEM => Automatisierung => DOIF => Thema gestartet von: chq am 12 Januar 2026, 10:20:34

Titel: wait in DOIF
Beitrag von: chq am 12 Januar 2026, 10:20:34
Hallo,

ich habe schon ewig nichts mehr in FHEM gebastelt, musste nun jedoch ein weiteres DOIF erstellen.

Bei den Attributen fehlen mir als Auswahl nun so Dinge wie wait, repeatcmd und repeatsame, was ich in der Vergangenheit jedoch oft verwendet habe. Kann mir evtl. jmd. auf die Sprünge helfen, warum mir diese Attribute nicht zur Auswahl gestellt werden?

Gruß Chris
Titel: Aw: wait in DOIF
Beitrag von: Damian am 12 Januar 2026, 11:49:28
Das liegt daran, dass du dein DOIF nicht im FHEM-Modus, sondern im Perl-Modus definiert hast, dort gibt es die Attribute nicht. DOIF im FHEM-Modus muss mit einer runden Klammer für die erste Bedingung beginnen, dass wird bei dir nicht der Fall sein.
Titel: Aw: wait in DOIF
Beitrag von: chq am 12 Januar 2026, 14:52:44
Super, genau das war das Problem.
Vielen Dank!

Kopiere ich im Anschluss diesen Text in das DOIF, wechselt es dummerweise aber wieder in den Perl-Modus:

DOIF ([{sunset("HORIZON=-2.2",0,"16:00","23:59")}-24:00]
and [Wetterstation:luminosity] == 0
and [Wetterstation:UVR:d1] <= 2.1
and [Bewohner:state] ne "home")
(set Wohnzimmerlicht on)

DOELSEIF ([23:00]
and [Bewohner:state] ne "home")
(set Wohnzimmerlicht off)
Titel: Aw: wait in DOIF
Beitrag von: Damian am 12 Januar 2026, 16:11:32
Bei mir funktioniert es ohne Probleme:

defmod forum_test DOIF ([{sunset("HORIZON=-2.2",0,"16:00","23:59")}-24:00]\
and [Wetterstation:luminosity] == 0\
and [Wetterstation:UVR:d1] <= 2.1\
and [Bewohner:state] ne "home")\
(set Wohnzimmerlicht on)\
\
DOELSEIF ([23:00]\
and [Bewohner:state] ne "home")\
(set Wohnzimmerlicht off)

list forum_test liefert:

ZitatInternals:
   CFGFN     
   DEF        ([{sunset("HORIZON=-2.2",0,"16:00","23:59")}-24:00]
and [Wetterstation:luminosity] == 0
and [Wetterstation:UVR:d1] <= 2.1
and [Bewohner:state] ne "home")
(set Wohnzimmerlicht on)

DOELSEIF ([23:00]
and [Bewohner:state] ne "home")
(set Wohnzimmerlicht off)
   FUUID      69650da1-f33f-30f6-fa9d-615d9beb30b85f33
   MODEL      FHEM
   NAME       forum_test
   NOTIFYDEV  Wetterstation,global,Bewohner
   NR         343818
   NTFY_ORDER 50-forum_test
   STATE      initialized
   TYPE       DOIF
   VERSION    30659 2025-12-25 12:37:16
   eventCount 1
   READINGS:
     2026-01-12 16:05:05   cmd             0
     2026-01-12 16:05:05   mode            enabled
     2026-01-12 16:05:05   state           initialized
     2026-01-12 16:05:05   timer_01_c01    12.01.2026 17:02:36
     2026-01-12 16:05:05   timer_02_c01    13.01.2026 00:00:00
     2026-01-12 16:05:05   timer_03_c02    12.01.2026 23:00:00
Titel: Aw: wait in DOIF
Beitrag von: chq am 12 Januar 2026, 16:57:58
Vielen Dank dafür, dass du das getestet hast.

Kannst du mir sagen, wie du das DOIF definiert hast?

Gruß Chris