Hallo, ich habe folgendes DOIF: 
Internals:
   DEF        ([{sunrise("HORIZON=4","3600")}-{sunset("HORIZON=4","-3600")}])
(set KNX02.O10_Aktor_Schlafzimmer_Wasserbett on)
{log_telegram("0","$SELF","Sonnenaufgang, Aktor Wasserbett on","alarmbot")}
DOELSE
(set KNX02.O10_Aktor_Schlafzimmer_Wasserbett off)
(set alarmbot message ibims)
{log_telegram("0","$SELF","Sonnenaufgang, Aktor Wasserbett off","alarmbot")}
   FUUID      5c844719-f33f-4040-b6f4-278167cc6fff20e4
   MODEL      FHEM
   NAME       DF_switchWasserbett
   NR         579
   NTFY_ORDER 50-DF_switchWasserbett
   STATE      cmd_2
   TYPE       DOIF
   VERSION    18706 2019-02-23 21:48:22
   READINGS:
     2019-03-12 17:57:15   cmd             2.2
     2019-03-12 17:57:15   cmd_event       set_cmd_2
     2019-03-12 17:57:15   cmd_nr          2
     2019-03-12 17:57:15   cmd_seqnr       2
     2019-03-12 17:57:08   mode            enabled
     2019-03-12 17:57:15   state           cmd_2
     2019-03-12 17:57:08   timer_01_c01    13.03.2019 08:15:48
     2019-03-12 17:57:08   timer_02_c01    13.03.2019 16:55:15
   Regex:
     accu:
   attr:
     cmdState:
     wait:
     waitdel:
   condition:
     0          ::DOIF_time($hash,0,1,$wday,$hms)
   days:
   devices:
   do:
     0:
       0          set KNX02.O10_Aktor_Schlafzimmer_Wasserbett on
       1          {log_telegram("0","DF_switchWasserbett","Sonnenaufgang, Aktor Wasserbett on","alarmbot")}
     1:
       0          set KNX02.O10_Aktor_Schlafzimmer_Wasserbett off
       1          set alarmbot message ibims
   helper:
     globalinit 1
     last_timer 2
     sleeptimer -1
     DOIF_eventas:
       cmd_nr: 2
       cmd_seqnr: 2
       cmd_event: set_cmd_2
       state: cmd_2
   interval:
     0          -1
     1          0
   intervalfunc:
   itimer:
   localtime:
     0          1552461348
     1          1552492515
   realtime:
     0          08:15:48
     1          16:55:15
   time:
     0          {sunrise("HORIZON=4","3600")}
     1          {sunset("HORIZON=4","-3600")}
   timeCond:
     0          0
     1          0
   timer:
     0          0
     1          0
   timers:
     0           0  1 
   triggertime:
     1552461348:
       localtime  1552461348
       hash:
     1552492515:
       localtime  1552492515
       hash:
   uiState:
   uiTable:
Attributes:
   room       Solar_PV,_doif
   verbose    5
Leider wird der Code, der bei cmd_2 in {} steht, nicht ausgeführt. Der Code in den () sowie der code in {} im cmd_1 funktioniert einwandfrei. 
Kann mir jemand helfen, was ich gerade übersehe? 
Im Log gibt es trotz verbose 5 keine einzige Meldung (zu diesem DOIF).
Danke, 
Stephan 
			
			
			
				Setz die Klammern mal in der Form:
cmd_1: (Befehl1,{Perlcode})
cmd_2: (Befehl1,Befehl1,{Perlcode})
			
			
			
				Hi Ellert, 
danke dir. So funktioniert es. Seltsam, dass die erste Bedingung auch funktioniert, wenn die {} ausserhalb der() stehen... 
Nur bei der zweiten Bedingung macht es Probleme. Aber, so gehts jetzt.
Grüße, 
Stephan 
			
			
			
				Zitat von: abc2006 am 13 März 2019, 16:17:19
Hi Ellert, 
danke dir. So funktioniert es. Seltsam, dass die erste Bedingung auch funktioniert, wenn die {} ausserhalb der() stehen... 
Nur bei der zweiten Bedingung macht es Probleme. Aber, so gehts jetzt.
Grüße, 
Stephan
it's not a feature it´s a bug   :D
Morgen per Update funktionsfähig.
			
 
			
			
				Super, danke für die Behebung. Kannst du kurz klar stellen, wie rum es ab morgen sein/funktionieren soll? 
Danke!
Stephan 
			
			
			
				Zitat von: abc2006 am 13 März 2019, 17:47:12
Super, danke für die Behebung. Kannst du kurz klar stellen, wie rum es ab morgen sein/funktionieren soll? 
Danke!
Stephan
So, wie es sein sollte. In deinem Fall: Lösung von Ellert.
Sonst geht jetzt:
DOIF (Bedingung) {Perl} DOELSE {Perl}
Deine erste Lösung würde jetzt auch funktionieren, macht aber nur Sinn, wenn du einzelne Befehle per wait verzögern willst.