DOIF neue Features (Sleep-Alternative)

Begonnen von Damian, 12 Juli 2015, 21:17:52

Vorheriges Thema - Nächstes Thema

Damian

Zitat von: All-Ex am 15 September 2015, 20:43:54
Hallo,

ich hatte ein Problem mit einem DOIF, das ich auf dieses Minimal-DOIF reduziert habe:

So funktioniert es:
([20:42])                      ## Um 20:42
(set PushMessage msg 'test')


Mit einem Kommentar in der letzten Zeile funktioniert es nicht:
([20:42])                      ## Um 20:42
(set PushMessage msg 'test')   ## Sende Nachricht


sondern meldet beim Speichern im Webfrontend test.doif DOIF: expected DOELSEIF or DOELSE:

Ich nutze # $Id: 98_DOIF.pm 9193 2015-09-02 07:08:58Z damian-s $

Habe es gefixt. Es liegt an den Leerzeichen in der letzten Zeile. Bis zum Update kannst du dir behelfen mit:

(set PushMessage msg 'test')## Sende Nachricht

Gruß

Damian
Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

All-Ex

Hallo Damin,

Boh, Danke für den Raketenschnellen Fix  ;D Werd ich morgen testen...

Nun bin ich grad auf noch ein Thema gestoßen:

ZitatMit dem Attribut cmdpause <Sekunden für cmd_1>:<Sekunden für cmd_2>:... wird die Zeitspanne in Sekunden angegeben für eine Zwangspause seit der letzten Zustandsänderung. In der angegebenen Zeitspanne wird ein Kommando nicht ausgeführt, auch wenn die dazugehörige Bedingung wahr wird.

Ich hab einen Dummy-Taster mit dem Namen taster1 und ein DOIF mit dem Namen test.doif. Das DOIF soll alle 15 Sekunden etwas tun. Wenn der taster1 gedrückt wird, soll es etwas anderes machen:

([+00:00:15])
( { Log 1,"Alle 15 Sekunden" } )
DOELSEIF
([taster1])
( { Log 1,"Taster 1 gedrückt" } )

Attributes: do always


Das funktioniert.

Nun möchte ich den 2. Fall nur ausführen, wenn taster1 länger als 30 Sekunden nicht mehr gedrückt wurde. Daher habe ich das Attribut cmdpause 0:30 gesetzt.

Aber cmd_2 wird nun gar nicht mehr getriggert, im Log steht:
2015.09.15 22:21:23.859 1: Alle 15 Sekunden
2015.09.15 22:21:38.013 1: Alle 15 Sekunden
2015.09.15 22:21:53.011 1: Alle 15 Sekunden


Um 22:21:43 habe ich taster1 getriggert, aber der hat kein cmd_2 ausgelöst:

Internals:
   DEF        ([+00:00:15])
( { Log 1,"Alle 15 Sekunden" } )
DOELSEIF
([taster1])
( { Log 1,"Taster 1 gedrückt" } )
   NAME       test.doif
   NR         185
   NTFY_ORDER 50-test.b.doif
   STATE      cmd_1
   TYPE       DOIF
   Readings:
     2015-09-15 22:21:43   Device          taster1
     2015-09-15 22:21:38   cmd_event       timer_1
     2015-09-15 22:21:38   cmd_nr          1
     2015-09-15 22:21:43   e_taster1_STATE something
     2015-09-15 22:21:38   state           cmd_1
     2015-09-15 22:21:38   timer_1_c1      15.09.2015 22:21:53
   Condition:
     0          DOIF_time_once($hash,$hash->{timer}{0},$wday,"")
     1          InternalDoIf('taster1','STATE','')
   Days:
   Devices:
     1           taster1
     all         taster1
   Do:
     0:
       0           { Log 1,"Alle 15 Sekunden" }
     1:
       0           { Log 1,"Taster 1 gedrückt" }
   Helper:
     globalinit 1
     last_timer 1
     sleeptimer -1
   Internals:
     1           taster1:STATE
     all         taster1:STATE
   Itimer:
   Readings:
   Realtime:
     0          22:21:53
   State:
   Time:
     0          +00:00:15
   Timecond:
     0          0
   Timer:
     0          0
   Timerfunc:
   Timers:
     0           0
   Trigger:
Attributes:
   cmdpause   0:30
   do         always
   room       testraum


Sollte das funktionieren? Oder nehm ich einfach 2 DOIFs, wenn sich Zeitangaben nach Zeitraster und cmdpause überschneiden?

Viele Grüße,
Alex

Brockmann

Zitat von: All-Ex am 15 September 2015, 22:32:11
Sollte das funktionieren? Oder nehm ich einfach 2 DOIFs, wenn sich Zeitangaben nach Zeitraster und cmdpause überschneiden?
Bin zwar nicht Damian, aber im List siehst Du, dass die letzte Zustandsänderung des DOIF um 22:21:38 erfolgte.
Wenn Du nun fünf Sekunden später den Taster drückst, sind noch keine 30 Sekunden rum und das Kommando wird wegen der cmdpause nicht ausgeführt.

Dein DOIF wird wegen do always alle 15 Sekunden getriggert, von daher dürfte cmdpause 30 in diesem Fall dafür sorgen, dass cmd_2 nie ausgeführt wird.

Vielleicht könntest Du statt cmdpause das Alter des Readings verwenden, etwa so:
DOELSEIF ([taster1] and [test.doif:e_taster1_STATE:sec] > 30)

Dieses Reading existiert zwar beim Define noch nicht, aber ich meine, damit kann DOIF umgehen. Ohne Gewähr, aber ist vielleicht einen Versuch wert.

All-Ex

Hi Brockmann,

Danke für die Antwort, hört sich logisch an und ich war wohl auf dem Holzweg... Ich werde das probieren.

mfeske

#199
Hallo zusammen,

ich experementiere gerade mit den waits ein wenig rum, damit die MP3 Ansagen vom Gong korrekt gemacht werden.
Ohne wait funktioniert
define gong_mp3_taster_doif DOIF ([taster_gong:?on]) ((set gong_MP3 playTone 0,002,0))
attr gong_mp3_taster_doif do always
attr gong_mp3_taster_doif room gong_ansagen
define taster_gong dummy
attr taster_gong devStateIcon on:remotecontrol/black_btn_GREEN:on
attr taster_gong room gong_ansagen
attr taster_gong setList state:on off
attr taster_gong webCmd :


aber das hier funktioniert leider nicht (wobei es nur um den letzten Block geht
define Rolladen01_timer_test DOIF ([10:00]) (set Rolladen01 on)(set Rolladen01_Zustand down)(set gong_MP3 playTone 0)(set gong_MP3 playTone 008)(set gong_MP3 playTone 0) DOELSEIF ([10:01]) (set Rolladen01 on)(set Rolladen01_Zustand down)(set gong_MP3 playTone 0)(set gong_MP3 playTone 008)(set gong_MP3 playTone 0) DOELSEIF ([10:10]) (set Rolladen01 off, set Rolladen01_Zustand up)(set gong_MP3 playTone 0)(set gong_MP3 playTone 009)(set gong_MP3 playTone 0) DOELSEIF ([10:33]) (set Rolladen01 off, set Rolladen01_Zustand up)(set gong_MP3 playTone 0,009,0)
attr Rolladen01_timer_test room Wohnzimmer
attr Rolladen01_timer_test wait 0,0,1,1,1:0,0,1,1,1:0,1,1,1:0,0


wenn ich es ändere in:
define Rolladen01_timer_test DOIF ([10:00]) (set Rolladen01 on)(set Rolladen01_Zustand down)(set gong_MP3 playTone 0)(set gong_MP3 playTone 008)(set gong_MP3 playTone 0) DOELSEIF ([10:01]) (set Rolladen01 on)(set Rolladen01_Zustand down)(set gong_MP3 playTone 0)(set gong_MP3 playTone 008)(set gong_MP3 playTone 0) DOELSEIF ([10:10]) (set Rolladen01 off, set Rolladen01_Zustand up)(set gong_MP3 playTone 0)(set gong_MP3 playTone 009)(set gong_MP3 playTone 0) DOELSEIF ([11:03]) (set Rolladen01 off, set Rolladen01_Zustand up)(set gong_MP3 playTone 0)(set gong_MP3 playTone 009)(set gong_MP3 playTone 0)
attr Rolladen01_timer_test room Wohnzimmer
attr Rolladen01_timer_test wait 0,0,1,1,1:0,0,1,1,1:0,1,1,1:0,0,2,4


funktioniert es.

Gruß
Micha

P.S. in den Logs tauch auch nichtzs zu set Rolladen01_Zustand up auf :-(
Hardware:
1 x Raspberry Pi Mod. B 512 MB
eq-3 2 x MAX! eTRV Heizungssteller, 1 x MAX! Fensterkontakt, 1 x MAX! Cube - LAN Gateway (ausser Betrieb)
Intertechno 1x ITZ-500, 3x ITT-1500, 9x ITR-1500, 3 x ITDL-1000, 2 x ITL-500
1 x CC1101-USB-Lite 433MHz (CUL433)  V3 1 x CC1101-USB-Lite 868MHz (CUL868)

Damian

Zitat von: mfeske am 17 September 2015, 11:05:03
Hallo zusammen,

ich experementiere gerade mit den waits ein wenig rum, damit die MP3 Ansagen vom Gong korrekt gemacht werden.
Ohne wait funktioniert
define gong_mp3_taster_doif DOIF ([taster_gong:?on]) ((set gong_MP3 playTone 0,002,0))
attr gong_mp3_taster_doif do always
attr gong_mp3_taster_doif room gong_ansagen
define taster_gong dummy
attr taster_gong devStateIcon on:remotecontrol/black_btn_GREEN:on
attr taster_gong room gong_ansagen
attr taster_gong setList state:on off
attr taster_gong webCmd :


aber das hier funktioniert leider nicht (wobei es nur um den letzten Block geht
define Rolladen01_timer_test DOIF ([10:00]) (set Rolladen01 on)(set Rolladen01_Zustand down)(set gong_MP3 playTone 0)(set gong_MP3 playTone 008)(set gong_MP3 playTone 0) DOELSEIF ([10:01]) (set Rolladen01 on)(set Rolladen01_Zustand down)(set gong_MP3 playTone 0)(set gong_MP3 playTone 008)(set gong_MP3 playTone 0) DOELSEIF ([10:10]) (set Rolladen01 off, set Rolladen01_Zustand up)(set gong_MP3 playTone 0)(set gong_MP3 playTone 009)(set gong_MP3 playTone 0) DOELSEIF ([10:33]) (set Rolladen01 off, set Rolladen01_Zustand up)(set gong_MP3 playTone 0,009,0)
attr Rolladen01_timer_test room Wohnzimmer
attr Rolladen01_timer_test wait 0,0,1,1,1:0,0,1,1,1:0,1,1,1:0,0


wenn ich es ändere in:
define Rolladen01_timer_test DOIF ([10:00]) (set Rolladen01 on)(set Rolladen01_Zustand down)(set gong_MP3 playTone 0)(set gong_MP3 playTone 008)(set gong_MP3 playTone 0) DOELSEIF ([10:01]) (set Rolladen01 on)(set Rolladen01_Zustand down)(set gong_MP3 playTone 0)(set gong_MP3 playTone 008)(set gong_MP3 playTone 0) DOELSEIF ([10:10]) (set Rolladen01 off, set Rolladen01_Zustand up)(set gong_MP3 playTone 0)(set gong_MP3 playTone 009)(set gong_MP3 playTone 0) DOELSEIF ([11:03]) (set Rolladen01 off, set Rolladen01_Zustand up)(set gong_MP3 playTone 0)(set gong_MP3 playTone 009)(set gong_MP3 playTone 0)
attr Rolladen01_timer_test room Wohnzimmer
attr Rolladen01_timer_test wait 0,0,1,1,1:0,0,1,1,1:0,1,1,1:0,0,2,4


funktioniert es.

Gruß
Micha

P.S. in den Logs tauch auch nichtzs zu set Rolladen01_Zustand up auf :-(

Du hast am Ende (set gong_MP3 playTone 0,009,0) stehen, dann musst du wie beim ersten DOIF wegen der Kommata, den set Befehl zusätzlich in Klammern packen  ((set gong_MP3 playTone 0,009,0))

Gruß

Damian
Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

mfeske

Hallo Damian,

danke; wieder mal diese syntax :-(
Habe es jetzt mal in das reale Leben übertragen und bin gespannt was heute abend passiert ;-)
define Rolladen01_timer DOIF ([{sunset(-1200)}|8])((set gong_MP3 playTone 0,008,0))(set Rolladen01 on)(set Rolladen01_Zustand down) DOELSEIF ([{sunset(-2400)}|7])((set gong_MP3 playTone 0,008,0))(set Rolladen01 on)(set Rolladen01_Zustand down) DOELSEIF ([{sunrise(+2)}|8])((set gong_MP3 playTone 0,009,0))(set Rolladen01 off)(set Rolladen01_Zustand up) DOELSEIF ([{sunrise(+1200)}|7])((set gong_MP3 playTone 0,009,0))(set Rolladen01 off)(set Rolladen01_Zustand up)
attr Rolladen01_timer room Wohnzimmer
attr Rolladen01_timer wait 0,5,5:0,5,5:0,5,5:0,5,5


Gruß
Micha
Hardware:
1 x Raspberry Pi Mod. B 512 MB
eq-3 2 x MAX! eTRV Heizungssteller, 1 x MAX! Fensterkontakt, 1 x MAX! Cube - LAN Gateway (ausser Betrieb)
Intertechno 1x ITZ-500, 3x ITT-1500, 9x ITR-1500, 3 x ITDL-1000, 2 x ITL-500
1 x CC1101-USB-Lite 433MHz (CUL433)  V3 1 x CC1101-USB-Lite 868MHz (CUL868)

Ellert

ZitatDa die Eingabezeile für Attribute recht kurz ist, schlage ich vor hier ein Editorfenster zur übersichtlichen Eingabe zu nutzen, wie es z.B. für das Attribut cellStyle der readingsGroup geschieht. Wird das im Modul gesteuert?

Es wird mit dem Attribut widgetOverride gesteuert: http://fhem.de/commandref#widgetOverride

attr meindoif widgetOverride wait:textField-long

dominik

Hi Damian,

ich bekomme gerade bei meiner neuen Lichtsteuerung eine Fehlermeldung mit dem aktuellen Modul:
error
perl error in condition: DOIF_time($hash,$hash->{realtime}{0},$hash->{realtime}{1},$wday,$hms,"") andReadingValDoIf('twilightHome','twilight','') < 30 andInternalDoIf('SamsungTV','STATE','') eq "absent": syntax error at (eval 23616) line 1, near ") andReadingValDoIf"
2015-09-21 19:43:27


Folgende Definition:
define DI_kleineslicht DOIF ([17:00:00 - 23:30:00] and\
[twilightHome:twilight] < 30 and\
[SamsungTV] eq "absent")\
(set kleineslicht on;;set DominikPushbullet message Kleine Lampen eingeschalten.)\
DOELSEIF\
([SamsungTV] eq "present" or [23:00:01])\
(set kleineslicht off;;set DominikPushbullet message Kleine Lampen ausgeschalten.)
attr DI_kleineslicht room AutoZeitschaltuhr


Eine Idee was ich hier falsch mache?
fhempy -  https://github.com/fhempy/fhempy: GoogleCast, Tuya, UPnP, Ring, EQ3BT, Nespresso, Xiaomi, Spotify, Object Detection, ...
Kaffeespende: https://paypal.me/todominik

Damian

Zitat von: dominik am 21 September 2015, 19:48:12
Hi Damian,

ich bekomme gerade bei meiner neuen Lichtsteuerung eine Fehlermeldung mit dem aktuellen Modul:
error
perl error in condition: DOIF_time($hash,$hash->{realtime}{0},$hash->{realtime}{1},$wday,$hms,"") andReadingValDoIf('twilightHome','twilight','') < 30 andInternalDoIf('SamsungTV','STATE','') eq "absent": syntax error at (eval 23616) line 1, near ") andReadingValDoIf"
2015-09-21 19:43:27


Folgende Definition:
define DI_kleineslicht DOIF ([17:00:00 - 23:30:00] and\
[twilightHome:twilight] < 30 and\
[SamsungTV] eq "absent")\
(set kleineslicht on;;set DominikPushbullet message Kleine Lampen eingeschalten.)\
DOELSEIF\
([SamsungTV] eq "present" or [23:00:01])\
(set kleineslicht off;;set DominikPushbullet message Kleine Lampen ausgeschalten.)
attr DI_kleineslicht room AutoZeitschaltuhr


Eine Idee was ich hier falsch mache?

Hinter and muss ein Leerzeichen, weil Zeilenende eliminiert wird und dann klebt and am nächsten Begriff. Das dürfte bei der alten Version nicht anders gewesen sein.

Gruß

Damian
Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

dominik

 :o mann o mann. Danke für deine schnelle Hilfe! :)
Funktioniert nun
fhempy -  https://github.com/fhempy/fhempy: GoogleCast, Tuya, UPnP, Ring, EQ3BT, Nespresso, Xiaomi, Spotify, Object Detection, ...
Kaffeespende: https://paypal.me/todominik

moonsorrox

#206
@Damian

ist es möglich mit dem DOIF z.B. auf ein Datum abzufragen..?

Als Beispiel mal von mir ich möchte Kalender readings dazu nutzen eine Beleuchtung einzuschalten
Wobei er suchen soll einmal nach der Schichtart hier bei mir z.B nach Nachtschicht und Frühschicht und auch das Datum berücksichtigen soll, so das an den Tagen wo eben diese Schichtart nicht drin steht eben keine Beleuchtung angehen soll.
Dabei würde ja ich sage mal ein Status "Heute" reichen wenn er aus einem Datum Reading erkennt es ist heute Frühschicht oder Nachtschicht.

Ich habe schon ein wenig experimentiert wobei er dazu schon die Schichtart anzeigt aber eben nur weil er sie gefunden hat in den Readings...

Ich habe hier erst mal nur 3 Termine drin, denn es könnten ja in der Zahl von "maxreadings" eine ganze Menge mehr sein, ich habe hier 20 eingestellt
Das Datum würde ich als reading bekommen von Calview, da wären das BeginnDatum (t_001_bdate) und das EndDatum (t_001_edate) und dann die Schicht Art als (t_001_summary)... hier weiß ich leider nicht wie ich das Datum abfragen soll/könnte :-\


hier mal das list, wobei ich habe hier kein Set Befehl drin, weil ich eigentlich nur den Status brauche und mit einem anderen DOIF dann die Beleuchtung schalte...
Evtl. kann ich die beiden DOIFs zusammen legen wenn das möglich ist was ich mir denke
Internals:
   CFGFN      ./FHEM/Kalender.cfg
   DEF        ([04:55-07:00] and [View_S:t_001_summary] eq "Frühschicht")
DOELSEIF ([04:55-07:00] and [View_S:t_002_summary] eq "Frühschicht")
DOELSEIF ([04:55-07:00] and [View_S:t_003_summary] eq "Frühschicht")

   NAME       di_WegBeleuchtung_Calender
   NR         2958
   NTFY_ORDER 50-di_WegBeleuchtung_Calender
   STATE      initialized
   TYPE       DOIF
   Readings:
     2015-09-22 18:05:26   state           initialized
     2015-09-22 18:05:26   timer_1_c1      23.09.2015 04:55:00
     2015-09-22 18:05:26   timer_2_c1      23.09.2015 07:00:00
     2015-09-22 18:05:26   timer_3_c2      23.09.2015 04:55:00
     2015-09-22 18:05:26   timer_4_c2      23.09.2015 07:00:00
     2015-09-22 18:05:26   timer_5_c3      23.09.2015 04:55:00
     2015-09-22 18:05:26   timer_6_c3      23.09.2015 07:00:00
   Condition:
     0          DOIF_time($hash,$hash->{realtime}{0},$hash->{realtime}{1},$wday,$hms,"") and ReadingValDoIf('View_S','t_002_summary','') eq "Frühschicht"
     1          DOIF_time($hash,$hash->{realtime}{2},$hash->{realtime}{3},$wday,$hms,"") and ReadingValDoIf('View_S','t_002_summary','') eq "Frühschicht"
     2          DOIF_time($hash,$hash->{realtime}{4},$hash->{realtime}{5},$wday,$hms,"") and ReadingValDoIf('View_S','t_003_summary','') eq "Frühschicht"
   Days:
   Devices:
     0           View_S
     1           View_S
     2           View_S
     all         View_S
   Do:
     0:
       0
     1:
       0
     2:
       0
   Helper:
     globalinit 1
     last_timer 6
     sleeptimer -1
   Itimer:
   Readings:
     0           View_S:t_002_summary
     1           View_S:t_002_summary
     2           View_S:t_003_summary
     all         View_S:t_002_summary View_S:t_003_summary
   Realtime:
     0          04:55:00
     1          07:00:00
     2          04:55:00
     3          07:00:00
     4          04:55:00
     5          07:00:00
   State:
   Time:
     0          04:55:00
     1          07:00:00
     2          04:55:00
     3          07:00:00
     4          04:55:00
     5          07:00:00
   Timecond:
     0          0
     1          0
     2          1
     3          1
     4          2
     5          2
   Timer:
     0          0
     1          0
     2          0
     3          0
     4          0
     5          0
   Timerfunc:
   Timers:
     0           0  1
     1           2  3
     2           4  5
Attributes:
   cmdState   Nachtschicht|Frühschicht
   room       Kalender
Intel-NUC i5: FHEM-Server 6.1 :: Perl v5.18.2

Homematic: HM-USB-CFG2,HM-CFG-LAN Adapter, HM-LC-BL1-FM, HM-LC-Sw1PBU-FM, HM-LC-Sw1-PI-2, HM-WDS10-TH-O, HM-CC-TC, HM-LC-SW2-FM

Mumpitz

Ich komme schon wieder mit einer Anfrage an Euch. Und zwar habe ich von Euch den Tipp bekommen, dass ich meine Beschattungssteuerung, welche ich mit dem DOIF und dem Wert eines Lux Sensors betreibe, mit einem DOELSE (soll) abschliessen soll. Siehe dazu Post #180
ZitatZitat von: Mumpitz am 14 September 2015, 12:21:07

    Aus meiner Sicht braucht ich das nicht. Wenn der Sensorwert unterboten oder der azimuth wert größer ist wird ja cmd_2 oder 3 ausgelöst!

Da der Sensorwert in den beiden anderen Bedingungen gar nicht abgefragt wird, können diese auch nicht reagieren, wenn er unterboten wird.

Die eigentlich entscheidende Stelle der Commandref ist vielleicht diese:
Zitat von: Commandref

    Eine bereits ausgelöste Verzögerung wird zurückgesetzt, wenn während der Wartezeit ein Kommando eines anderen DO-Falls, ausgelöst durch ein neues Ereignis, ausgeführt werden soll.

Und zwar nur dann!

wait bedeutet also nicht, dass eine Aktion A ausgeführt wird, wenn die Bedingung A für die bei wait spezifizierte Zeit Bestand hat.
wait bedeutet: Wenn irgendwann mal Bedingung A galt und seitdem keine andere Bedingung desselben DOIF wahr geworden ist, wird nach Ablauf der in wait spezifierten Zeit Aktion A ausgeführt, egal ob Bedingung A zu diesem Zeitpunkt immer noch wahr ist oder nicht.

Man kann sich darüber streitet ob das nun ein Feature oder ein Fehler ist (DOIF vs. DOEVENIFNOTANYMORE). Aber so ist es nunmal und man muss sein DOIF ggf. um diese Eigenart herumprogrammieren. Wie hier ja schon geschrieben wurde, ist ein "leeres" DOELSE der bevorzugte Workaround.

Nun, ich habe das gemacht und grundsätzlich funktioniert das wait nun. Allerdings wird das wait wenige Sekunden nach starten des Wait Timers wieder zurück gestellt..

Folgendes DOIF:

Internals:
   DEF        ([Auto_Beschattung] eq "on" and [Beschattung_OG] eq "off" and [Helligkeit_Twilight:azimuth] > 109 and [Helligkeit_Twilight:azimuth] < 270 and ([Multisensor_Ost:state] > 25000 or [Sensor_Licht_Sued:state] > 19000)) (set Beschattung_OG on)
DOELSEIF ([Auto_Beschattung] eq "on" and [Beschattung_OG] eq "on" and [Helligkeit_Twilight:azimuth] > 109 and [Helligkeit_Twilight:azimuth] < 270 and [Sensor_Licht_Sued:state] < 9000) (set Beschattung_OG off)
DOELSEIF ([Auto_Beschattung] eq "on" and [Beschattung_OG] eq "on" and ([Helligkeit_Twilight:azimuth] > 277 or [Helligkeit_Twilight:compasspoint] eq "west" or [18:45])) (set Beschattung_OG off)
DOELSE ()
   NAME       di_SoSchu_OG
   NR         119
   NTFY_ORDER 50-di_SoSchu_OG
   STATE      cmd_4
   TYPE       DOIF
   Readings:
     2015-09-22 19:48:00   Device          Multisensor_Ost
     2015-09-22 18:45:46   cmd_event       Multisensor_Ost
     2015-09-22 18:45:46   cmd_nr          4
     2015-09-22 11:47:03   e_Auto_Beschattung_STATE on
     2015-09-22 18:45:00   e_Beschattung_OG_STATE off
     2015-09-22 19:45:25   e_Helligkeit_Twilight_azimuth 275.15
     2015-09-22 19:45:25   e_Helligkeit_Twilight_compasspoint west
     2015-09-22 19:48:00   e_Multisensor_Ost_state 2
     2015-09-22 17:48:15   e_Sensor_Licht_Sued_state 383
     2015-09-22 18:45:46   state           cmd_4
     2015-09-22 18:45:00   timer_1_c3      23.09.2015 18:45:00
     2015-09-22 18:45:00   wait_timer      no timer
   Condition:
     0          InternalDoIf('Auto_Beschattung','STATE','') eq "on" and InternalDoIf('Beschattung_OG','STATE','') eq "off" and ReadingValDoIf('Helligkeit_Twilight','azimuth','') > 109 and ReadingValDoIf('Helligkeit_Twilight','azimuth','') < 270 and (ReadingValDoIf('Multisensor_Ost','state','') > 25000 or ReadingValDoIf('Sensor_Licht_Sued','state','') > 19000)
     1          InternalDoIf('Auto_Beschattung','STATE','') eq "on" and InternalDoIf('Beschattung_OG','STATE','') eq "on" and ReadingValDoIf('Helligkeit_Twilight','azimuth','') > 109 and ReadingValDoIf('Helligkeit_Twilight','azimuth','') < 270 and ReadingValDoIf('Sensor_Licht_Sued','state','') < 9000
     2          InternalDoIf('Auto_Beschattung','STATE','') eq "on" and InternalDoIf('Beschattung_OG','STATE','') eq "on" and (ReadingValDoIf('Helligkeit_Twilight','azimuth','') > 277 or ReadingValDoIf('Helligkeit_Twilight','compasspoint','') eq "west" or DOIF_time_once($hash,$hash->{timer}{0},$wday,""))
   Days:
   Devices:
     0           Auto_Beschattung Beschattung_OG Helligkeit_Twilight Multisensor_Ost Sensor_Licht_Sued
     1           Auto_Beschattung Beschattung_OG Helligkeit_Twilight Sensor_Licht_Sued
     2           Auto_Beschattung Beschattung_OG Helligkeit_Twilight
     all         Auto_Beschattung Beschattung_OG Helligkeit_Twilight Multisensor_Ost Sensor_Licht_Sued
   Do:
     0:
       0          set Beschattung_OG on
     1:
       0          set Beschattung_OG off
     2:
       0          set Beschattung_OG off
     3:
       0
   Helper:
     globalinit 1
     last_timer 1
     sleepdevice Helligkeit_Twilight
     sleepsubtimer 0
     sleeptimer -1
   Internals:
     0           Auto_Beschattung:STATE Beschattung_OG:STATE
     1           Auto_Beschattung:STATE Beschattung_OG:STATE
     2           Auto_Beschattung:STATE Beschattung_OG:STATE
     all         Auto_Beschattung:STATE Beschattung_OG:STATE
   Itimer:
   Readings:
     0           Helligkeit_Twilight:azimuth Multisensor_Ost:state Sensor_Licht_Sued:state
     1           Helligkeit_Twilight:azimuth Sensor_Licht_Sued:state
     2           Helligkeit_Twilight:azimuth Helligkeit_Twilight:compasspoint
     all         Helligkeit_Twilight:azimuth Multisensor_Ost:state Sensor_Licht_Sued:state Helligkeit_Twilight:compasspoint
   Realtime:
     0          18:45:00
   State:
   Time:
     0          18:45:00
   Timecond:
     0          2
   Timer:
     0          0
   Timerfunc:
   Timers:
     2           0
   Trigger:
Attributes:
   wait       900:2400


ergibt folgende Einträge wenn ich das DOIF logge:

2015-09-22_18:45:00 Beschattung_OG off
2015-09-22_18:45:00 di_SoSchu_OG wait_timer: no timer
2015-09-22_18:44:49 di_SoSchu_OG wait_timer: 22.09.2015 19:24:49 cmd_2 Helligkeit_Twilight
2015-09-22_18:41:46 di_SoSchu_OG wait_timer: no timer
2015-09-22_18:41:40 di_SoSchu_OG wait_timer: 22.09.2015 19:21:40 cmd_2 Helligkeit_Twilight
2015-09-22_18:39:46 di_SoSchu_OG wait_timer: no timer
2015-09-22_18:39:46 di_SoSchu_OG wait_timer: 22.09.2015 19:19:46 cmd_2 Helligkeit_Twilight
2015-09-22_18:35:46 di_SoSchu_OG wait_timer: no timer
2015-09-22_18:35:46 di_SoSchu_EG cmd_4
2015-09-22_18:35:46 di_SoSchu_EG cmd_event: Multisensor_Ost
2015-09-22_18:35:46 di_SoSchu_EG cmd_nr: 4
2015-09-22_18:34:43 di_SoSchu_OG wait_timer: 22.09.2015 19:14:43 cmd_2 Helligkeit_Twilight
2015-09-22_18:34:43 di_SoSchu_EG cmd_2
2015-09-22_18:34:43 di_SoSchu_EG cmd_event: Helligkeit_Twilight
2015-09-22_18:34:43 di_SoSchu_EG cmd_nr: 2
2015-09-22_18:34:43 Beschattung_EG off
2015-09-22_18:29:46 di_SoSchu_OG wait_timer: no timer
2015-09-22_18:29:40 di_SoSchu_OG wait_timer: 22.09.2015 19:09:40 cmd_2 Helligkeit_Twilight
2015-09-22_18:25:46 di_SoSchu_OG wait_timer: no timer
2015-09-22_18:24:37 di_SoSchu_OG wait_timer: 22.09.2015 19:04:37 cmd_2 Helligkeit_Twilight
2015-09-22_18:19:46 di_SoSchu_OG wait_timer: no timer
2015-09-22_18:19:34 di_SoSchu_OG wait_timer: 22.09.2015 18:59:34 cmd_2 Helligkeit_Twilight
2015-09-22_18:17:46 di_SoSchu_OG wait_timer: no timer
2015-09-22_18:17:45 di_SoSchu_OG wait_timer: 22.09.2015 18:57:45 cmd_2 Helligkeit_Twilight
2015-09-22_18:15:46 di_SoSchu_OG wait_timer: no timer
2015-09-22_18:14:31 di_SoSchu_OG wait_timer: 22.09.2015 18:54:31 cmd_2 Helligkeit_Twilight
2015-09-22_18:09:46 di_SoSchu_OG wait_timer: no timer
2015-09-22_18:09:28 di_SoSchu_OG wait_timer: 22.09.2015 18:49:28 cmd_2 Helligkeit_Twilight
2015-09-22_18:05:46 di_SoSchu_OG wait_timer: no timer
2015-09-22_18:04:25 di_SoSchu_OG wait_timer: 22.09.2015 18:44:25 cmd_2 Helligkeit_Twilight
2015-09-22_18:01:46 di_SoSchu_OG wait_timer: no timer
2015-09-22_17:59:22 di_SoSchu_OG wait_timer: 22.09.2015 18:39:22 cmd_2 Helligkeit_Twilight
2015-09-22_17:55:37 di_SoSchu_OG wait_timer: no timer
2015-09-22_17:54:19 di_SoSchu_OG wait_timer: 22.09.2015 18:34:19 cmd_2 Helligkeit_Twilight
2015-09-22_17:49:37 di_SoSchu_OG wait_timer: no timer
2015-09-22_17:49:16 di_SoSchu_EG wait_timer: no timer
2015-09-22_17:48:15 di_SoSchu_OG wait_timer: 22.09.2015 18:28:15 cmd_2 Sensor_Licht_Sued
2015-09-22_17:48:15 di_SoSchu_EG wait_timer: 22.09.2015 18:28:15 cmd_3 Sensor_Licht_Sued
2015-09-22_17:45:37 di_SoSchu_OG wait_timer: no timer
2015-09-22_17:44:13 di_SoSchu_OG wait_timer: 22.09.2015 18:24:13 cmd_2 Helligkeit_Twilight
2015-09-22_17:43:37 di_SoSchu_OG wait_timer: no timer
2015-09-22_17:41:40 di_SoSchu_OG wait_timer: 22.09.2015 18:21:40 cmd_2 Helligkeit_Twilight
2015-09-22_17:41:37 di_SoSchu_OG wait_timer: no timer
2015-09-22_17:41:37 di_SoSchu_EG wait_timer: no timer
2015-09-22_17:40:15 di_SoSchu_OG wait_timer: 22.09.2015 18:20:15 cmd_2 Sensor_Licht_Sued
2015-09-22_17:40:15 di_SoSchu_EG wait_timer: 22.09.2015 18:20:15 cmd_3 Sensor_Licht_Sued
2015-09-22_17:39:37 di_SoSchu_OG wait_timer: no timer
2015-09-22_17:39:10 di_SoSchu_OG wait_timer: 22.09.2015 18:19:10 cmd_2 Helligkeit_Twilight
2015-09-22_17:35:37 di_SoSchu_OG wait_timer: no timer
2015-09-22_17:34:07 di_SoSchu_OG wait_timer: 22.09.2015 18:14:07 cmd_2 Helligkeit_Twilight
2015-09-22_17:33:37 di_SoSchu_OG wait_timer: no timer
2015-09-22_17:33:37 di_SoSchu_EG wait_timer: no timer
2015-09-22_17:32:15 di_SoSchu_OG wait_timer: 22.09.2015 18:12:15 cmd_2 Sensor_Licht_Sued
2015-09-22_17:32:15 di_SoSchu_EG wait_timer: 22.09.2015 18:12:15 cmd_3 Sensor_Licht_Sued
2015-09-22_17:29:37 di_SoSchu_OG wait_timer: no timer
2015-09-22_17:29:04 di_SoSchu_OG wait_timer: 22.09.2015 18:09:04 cmd_2 Helligkeit_Twilight
2015-09-22_17:27:37 di_SoSchu_OG wait_timer: no timer
2015-09-22_17:27:22 di_SoSchu_OG wait_timer: 22.09.2015 18:07:22 cmd_2 Helligkeit_Twilight
2015-09-22_17:25:37 di_SoSchu_OG wait_timer: no timer
2015-09-22_17:24:01 di_SoSchu_OG wait_timer: 22.09.2015 18:04:01 cmd_2 Helligkeit_Twilight
2015-09-22_17:19:37 di_SoSchu_OG wait_timer: no timer
2015-09-22_17:18:58 di_SoSchu_OG wait_timer: 22.09.2015 17:58:58 cmd_2 Helligkeit_Twilight
2015-09-22_17:17:37 di_SoSchu_OG wait_timer: no timer
2015-09-22_17:17:37 di_SoSchu_EG wait_timer: no timer
2015-09-22_17:16:15 di_SoSchu_OG wait_timer: 22.09.2015 17:56:15 cmd_2 Sensor_Licht_Sued
2015-09-22_17:16:15 di_SoSchu_EG wait_timer: 22.09.2015 17:56:15 cmd_3 Sensor_Licht_Sued
2015-09-22_17:15:37 di_SoSchu_OG wait_timer: no timer
2015-09-22_17:15:37 di_SoSchu_EG wait_timer: no timer
2015-09-22_17:14:15 di_SoSchu_EG wait_timer: 22.09.2015 17:54:15 cmd_3 Sensor_Licht_Sued
2015-09-22_17:13:55 di_SoSchu_OG wait_timer: 22.09.2015 17:53:55 cmd_2 Helligkeit_Twilight
2015-09-22_17:11:37 di_SoSchu_OG wait_timer: no timer
2015-09-22_17:11:37 di_SoSchu_EG wait_timer: no timer
2015-09-22_17:10:15 di_SoSchu_OG wait_timer: 22.09.2015 17:50:15 cmd_2 Sensor_Licht_Sued
2015-09-22_17:10:15 di_SoSchu_EG wait_timer: 22.09.2015 17:50:15 cmd_3 Sensor_Licht_Sued
2015-09-22_17:09:37 di_SoSchu_OG wait_timer: no timer
2015-09-22_17:08:52 di_SoSchu_OG wait_timer: 22.09.2015 17:48:52 cmd_2 Helligkeit_Twilight
2015-09-22_17:05:37 di_SoSchu_OG wait_timer: no timer
2015-09-22_17:03:49 di_SoSchu_OG wait_timer: 22.09.2015 17:43:49 cmd_2 Helligkeit_Twilight
2015-09-22_16:59:37 di_SoSchu_OG wait_timer: no timer
2015-09-22_16:58:46 di_SoSchu_OG wait_timer: 22.09.2015 17:38:46 cmd_2 Helligkeit_Twilight
2015-09-22_16:55:37 di_SoSchu_OG wait_timer: no timer
2015-09-22_16:53:43 di_SoSchu_OG wait_timer: 22.09.2015 17:33:43 cmd_2 Helligkeit_Twilight
2015-09-22_16:49:37 di_SoSchu_OG wait_timer: no timer
2015-09-22_16:48:40 di_SoSchu_EG wait_timer: no timer
2015-09-22_16:48:15 di_SoSchu_OG wait_timer: 22.09.2015 17:28:15 cmd_2 Sensor_Licht_Sued
2015-09-22_16:48:15 di_SoSchu_EG wait_timer: 22.09.2015 17:28:15 cmd_3 Sensor_Licht_Sued
2015-09-22_16:47:37 di_SoSchu_OG wait_timer: no timer
2015-09-22_16:47:37 di_SoSchu_EG wait_timer: no timer
2015-09-22_16:46:15 di_SoSchu_OG wait_timer: 22.09.2015 17:26:15 cmd_2 Sensor_Licht_Sued
2015-09-22_16:46:15 di_SoSchu_EG wait_timer: 22.09.2015 17:26:15 cmd_3 Sensor_Licht_Sued
2015-09-22_16:43:37 di_SoSchu_OG wait_timer: no timer
2015-09-22_16:43:37 di_SoSchu_OG wait_timer: 22.09.2015 17:23:37 cmd_2 Helligkeit_Twilight
2015-09-22_16:39:37 di_SoSchu_OG wait_timer: no timer
2015-09-22_16:38:34 di_SoSchu_OG wait_timer: 22.09.2015 17:18:34 cmd_2 Helligkeit_Twilight
2015-09-22_16:33:37 di_SoSchu_OG wait_timer: no timer
2015-09-22_16:33:31 di_SoSchu_OG wait_timer: 22.09.2015 17:13:31 cmd_2 Helligkeit_Twilight
2015-09-22_16:29:37 di_SoSchu_OG wait_timer: no timer
2015-09-22_16:28:28 di_SoSchu_OG wait_timer: 22.09.2015 17:08:28 cmd_2 Helligkeit_Twilight
2015-09-22_16:23:37 di_SoSchu_OG wait_timer: no timer
2015-09-22_16:23:25 di_SoSchu_EG wait_timer: no timer
2015-09-22_16:22:16 di_SoSchu_OG wait_timer: 22.09.2015 17:02:16 cmd_2 Sensor_Licht_Sued
2015-09-22_16:22:16 di_SoSchu_EG wait_timer: 22.09.2015 17:02:15 cmd_3 Sensor_Licht_Sued
2015-09-22_16:19:37 di_SoSchu_OG wait_timer: no timer
2015-09-22_16:18:22 di_SoSchu_EG wait_timer: no timer
2015-09-22_16:18:15 di_SoSchu_OG wait_timer: 22.09.2015 16:58:15 cmd_2 Sensor_Licht_Sued
2015-09-22_16:18:15 di_SoSchu_EG wait_timer: 22.09.2015 16:58:15 cmd_3 Sensor_Licht_Sued
2015-09-22_16:15:37 di_SoSchu_OG wait_timer: no timer
2015-09-22_16:15:37 di_SoSchu_EG wait_timer: no timer
2015-09-22_16:14:15 di_SoSchu_OG wait_timer: 22.09.2015 16:54:15 cmd_2 Sensor_Licht_Sued
2015-09-22_16:14:15 di_SoSchu_EG wait_timer: 22.09.2015 16:54:15 cmd_3 Sensor_Licht_Sued
2015-09-22_16:13:38 di_SoSchu_OG wait_timer: no timer
2015-09-22_16:13:19 di_SoSchu_EG wait_timer: no timer
2015-09-22_16:12:16 di_SoSchu_OG wait_timer: 22.09.2015 16:52:16 cmd_2 Sensor_Licht_Sued
2015-09-22_16:12:16 di_SoSchu_EG wait_timer: 22.09.2015 16:52:16 cmd_3 Sensor_Licht_Sued
2015-09-22_16:09:30 di_SoSchu_OG wait_timer: no timer
2015-09-22_16:08:16 di_SoSchu_OG wait_timer: 22.09.2015 16:48:16 cmd_2 Helligkeit_Twilight
2015-09-22_16:07:30 di_SoSchu_OG wait_timer: no timer
2015-09-22_16:07:30 di_SoSchu_EG wait_timer: no timer
2015-09-22_16:06:16 di_SoSchu_OG wait_timer: 22.09.2015 16:46:16 cmd_2 Sensor_Licht_Sued
2015-09-22_16:06:16 di_SoSchu_EG wait_timer: 22.09.2015 16:46:16 cmd_3 Sensor_Licht_Sued
2015-09-22_16:03:23 di_SoSchu_OG wait_timer: no timer
2015-09-22_16:03:13 di_SoSchu_OG wait_timer: 22.09.2015 16:43:13 cmd_2 Helligkeit_Twilight
2015-09-22_15:59:23 di_SoSchu_OG wait_timer: no timer
2015-09-22_15:58:10 di_SoSchu_OG wait_timer: 22.09.2015 16:38:10 cmd_2 Helligkeit_Twilight
2015-09-22_15:53:14 di_SoSchu_OG wait_timer: no timer
2015-09-22_15:53:07 di_SoSchu_OG wait_timer: 22.09.2015 16:33:07 cmd_2 Helligkeit_Twilight
2015-09-22_15:49:14 di_SoSchu_OG wait_timer: no timer
2015-09-22_15:48:04 di_SoSchu_OG wait_timer: 22.09.2015 16:28:04 cmd_2 Helligkeit_Twilight
2015-09-22_15:45:14 di_SoSchu_OG wait_timer: no timer
2015-09-22_15:45:14 di_SoSchu_EG wait_timer: no timer
2015-09-22_15:44:16 di_SoSchu_OG wait_timer: 22.09.2015 16:24:16 cmd_2 Sensor_Licht_Sued
2015-09-22_15:44:16 di_SoSchu_EG wait_timer: 22.09.2015 16:24:16 cmd_3 Sensor_Licht_Sued
2015-09-22_15:43:14 di_SoSchu_OG wait_timer: no timer
2015-09-22_15:43:01 di_SoSchu_OG wait_timer: 22.09.2015 16:23:01 cmd_2 Helligkeit_Twilight
2015-09-22_15:39:15 di_SoSchu_OG wait_timer: no timer
2015-09-22_15:37:58 di_SoSchu_OG wait_timer: 22.09.2015 16:17:58 cmd_2 Helligkeit_Twilight
2015-09-22_15:35:04 di_SoSchu_OG wait_timer: no timer
2015-09-22_15:35:04 di_SoSchu_EG wait_timer: no timer
2015-09-22_15:34:15 di_SoSchu_OG wait_timer: 22.09.2015 16:14:15 cmd_2 Sensor_Licht_Sued
2015-09-22_15:34:15 di_SoSchu_EG wait_timer: 22.09.2015 16:14:15 cmd_3 Sensor_Licht_Sued
2015-09-22_15:33:04 di_SoSchu_OG wait_timer: no timer
2015-09-22_15:32:55 di_SoSchu_EG wait_timer: no timer
2015-09-22_15:32:15 di_SoSchu_OG wait_timer: 22.09.2015 16:12:15 cmd_2 Sensor_Licht_Sued
2015-09-22_15:32:15 di_SoSchu_EG wait_timer: 22.09.2015 16:12:15 cmd_3 Sensor_Licht_Sued
2015-09-22_15:29:04 di_SoSchu_OG wait_timer: no timer
2015-09-22_15:29:04 di_SoSchu_EG wait_timer: no timer
2015-09-22_15:28:16 di_SoSchu_EG wait_timer: 22.09.2015 16:08:16 cmd_3 Sensor_Licht_Sued
2015-09-22_15:27:52 di_SoSchu_OG wait_timer: 22.09.2015 16:07:52 cmd_2 Helligkeit_Twilight
2015-09-22_15:25:04 di_SoSchu_OG wait_timer: no timer
2015-09-22_15:25:04 di_SoSchu_EG wait_timer: no timer
2015-09-22_15:24:15 di_SoSchu_OG wait_timer: 22.09.2015 16:04:15 cmd_2 Sensor_Licht_Sued
2015-09-22_15:24:15 di_SoSchu_EG wait_timer: 22.09.2015 16:04:15 cmd_3 Sensor_Licht_Sued
2015-09-22_15:23:04 di_SoSchu_OG wait_timer: no timer
2015-09-22_15:22:49 di_SoSchu_EG wait_timer: no timer
2015-09-22_15:22:16 di_SoSchu_OG wait_timer: 22.09.2015 16:02:16 cmd_2 Sensor_Licht_Sued
2015-09-22_15:22:16 di_SoSchu_EG wait_timer: 22.09.2015 16:02:16 cmd_3 Sensor_Licht_Sued
2015-09-22_15:18:56 di_SoSchu_OG wait_timer: no timer
2015-09-22_15:17:46 di_SoSchu_OG wait_timer: 22.09.2015 15:57:46 cmd_2 Helligkeit_Twilight
2015-09-22_15:14:56 di_SoSchu_OG wait_timer: no timer
2015-09-22_15:14:56 di_SoSchu_EG wait_timer: no timer
2015-09-22_15:14:15 di_SoSchu_OG wait_timer: 22.09.2015 15:54:15 cmd_2 Sensor_Licht_Sued
2015-09-22_15:14:15 di_SoSchu_EG wait_timer: 22.09.2015 15:54:15 cmd_3 Sensor_Licht_Sued
2015-09-22_15:12:56 di_SoSchu_OG wait_timer: no timer
2015-09-22_15:12:43 di_SoSchu_EG wait_timer: no timer
2015-09-22_15:12:16 di_SoSchu_OG wait_timer: 22.09.2015 15:52:16 cmd_2 Sensor_Licht_Sued
2015-09-22_15:12:16 di_SoSchu_EG wait_timer: 22.09.2015 15:52:16 cmd_3 Sensor_Licht_Sued
2015-09-22_15:10:56 di_SoSchu_OG wait_timer: no timer
2015-09-22_15:10:56 di_SoSchu_EG wait_timer: no timer
2015-09-22_15:10:15 di_SoSchu_OG wait_timer: 22.09.2015 15:50:15 cmd_2 Sensor_Licht_Sued
2015-09-22_15:10:15 di_SoSchu_EG wait_timer: 22.09.2015 15:50:15 cmd_3 Sensor_Licht_Sued
2015-09-22_15:08:56 di_SoSchu_OG wait_timer: no timer
2015-09-22_15:07:40 di_SoSchu_OG wait_timer: 22.09.2015 15:47:40 cmd_2 Helligkeit_Twilight
2015-09-22_15:06:56 di_SoSchu_OG wait_timer: no timer
2015-09-22_15:06:56 di_SoSchu_EG wait_timer: no timer
2015-09-22_15:06:15 di_SoSchu_OG wait_timer: 22.09.2015 15:46:15 cmd_2 Sensor_Licht_Sued
2015-09-22_15:06:15 di_SoSchu_EG wait_timer: 22.09.2015 15:46:15 cmd_3 Sensor_Licht_Sued
2015-09-22_15:02:56 di_SoSchu_OG wait_timer: no timer
2015-09-22_15:02:37 di_SoSchu_OG wait_timer: 22.09.2015 15:42:37 cmd_2 Helligkeit_Twilight
2015-09-22_14:58:56 di_SoSchu_OG wait_timer: no timer
2015-09-22_14:57:34 di_SoSchu_OG wait_timer: 22.09.2015 15:37:34 cmd_2 Helligkeit_Twilight
2015-09-22_14:52:56 di_SoSchu_OG wait_timer: no timer
2015-09-22_14:52:31 di_SoSchu_OG wait_timer: 22.09.2015 15:32:31 cmd_2 Helligkeit_Twilight
2015-09-22_14:48:56 di_SoSchu_OG wait_timer: no timer
2015-09-22_14:47:28 di_SoSchu_OG wait_timer: 22.09.2015 15:27:28 cmd_2 Helligkeit_Twilight
2015-09-22_14:42:56 di_SoSchu_OG wait_timer: no timer
2015-09-22_14:42:25 di_SoSchu_OG wait_timer: 22.09.2015 15:22:25 cmd_2 Helligkeit_Twilight
2015-09-22_14:38:56 di_SoSchu_OG wait_timer: no timer
2015-09-22_14:37:22 di_SoSchu_OG wait_timer: 22.09.2015 15:17:22 cmd_2 Helligkeit_Twilight
2015-09-22_14:32:56 di_SoSchu_OG wait_timer: no timer
2015-09-22_14:32:19 di_SoSchu_OG wait_timer: 22.09.2015 15:12:19 cmd_2 Helligkeit_Twilight
2015-09-22_14:28:48 di_SoSchu_OG wait_timer: no timer
2015-09-22_14:27:16 di_SoSchu_OG wait_timer: 22.09.2015 15:07:16 cmd_2 Helligkeit_Twilight
2015-09-22_14:22:48 di_SoSchu_OG wait_timer: no timer
2015-09-22_14:22:13 di_SoSchu_OG wait_timer: 22.09.2015 15:02:13 cmd_2 Helligkeit_Twilight
2015-09-22_14:20:48 di_SoSchu_OG wait_timer: no timer
2015-09-22_14:20:48 di_SoSchu_EG wait_timer: no timer
2015-09-22_14:20:15 di_SoSchu_OG wait_timer: 22.09.2015 15:00:15 cmd_2 Sensor_Licht_Sued
2015-09-22_14:20:15 di_SoSchu_EG wait_timer: 22.09.2015 15:00:15 cmd_3 Sensor_Licht_Sued
2015-09-22_14:18:48 di_SoSchu_OG wait_timer: no timer
2015-09-22_14:17:10 di_SoSchu_OG wait_timer: 22.09.2015 14:57:10 cmd_2 Helligkeit_Twilight
2015-09-22_14:12:48 di_SoSchu_OG wait_timer: no timer
2015-09-22_14:12:48 di_SoSchu_EG wait_timer: no timer
2015-09-22_14:12:15 di_SoSchu_EG wait_timer: 22.09.2015 14:52:15 cmd_3 Sensor_Licht_Sued
2015-09-22_14:12:07 di_SoSchu_OG wait_timer: 22.09.2015 14:52:07 cmd_2 Helligkeit_Twilight
2015-09-22_14:10:48 di_SoSchu_OG wait_timer: no timer
2015-09-22_14:10:48 di_SoSchu_EG wait_timer: no timer
2015-09-22_14:10:16 di_SoSchu_OG wait_timer: 22.09.2015 14:50:16 cmd_2 Sensor_Licht_Sued
2015-09-22_14:10:16 di_SoSchu_EG wait_timer: 22.09.2015 14:50:16 cmd_3 Sensor_Licht_Sued
2015-09-22_14:08:48 di_SoSchu_OG wait_timer: no timer
2015-09-22_14:07:04 di_SoSchu_OG wait_timer: 22.09.2015 14:47:04 cmd_2 Helligkeit_Twilight
2015-09-22_14:02:48 di_SoSchu_OG wait_timer: no timer
2015-09-22_14:02:48 di_SoSchu_EG wait_timer: no timer
2015-09-22_14:02:15 di_SoSchu_EG wait_timer: 22.09.2015 14:42:15 cmd_3 Sensor_Licht_Sued
2015-09-22_14:02:01 di_SoSchu_OG wait_timer: 22.09.2015 14:42:01 cmd_2 Helligkeit_Twilight
2015-09-22_14:00:48 di_SoSchu_OG wait_timer: no timer
2015-09-22_14:00:48 di_SoSchu_EG wait_timer: no timer
2015-09-22_14:00:16 di_SoSchu_OG wait_timer: 22.09.2015 14:40:16 cmd_2 Sensor_Licht_Sued
2015-09-22_14:00:16 di_SoSchu_EG wait_timer: 22.09.2015 14:40:16 cmd_3 Sensor_Licht_Sued
2015-09-22_13:48:48 di_SoSchu_OG wait_timer: no timer
2015-09-22_13:46:52 di_SoSchu_OG wait_timer: 22.09.2015 14:26:52 cmd_2 Helligkeit_Twilight
2015-09-22_13:46:48 di_SoSchu_OG wait_timer: no timer
2015-09-22_13:46:48 di_SoSchu_EG wait_timer: no timer
2015-09-22_13:46:15 di_SoSchu_OG wait_timer: 22.09.2015 14:26:15 cmd_2 Sensor_Licht_Sued
2015-09-22_13:46:15 di_SoSchu_EG wait_timer: 22.09.2015 14:26:15 cmd_3 Sensor_Licht_Sued
2015-09-22_13:42:34 di_SoSchu_OG wait_timer: no timer
2015-09-22_13:42:34 di_SoSchu_EG wait_timer: no timer
2015-09-22_13:42:16 di_SoSchu_EG wait_timer: 22.09.2015 14:22:16 cmd_3 Sensor_Licht_Sued
2015-09-22_13:41:49 di_SoSchu_OG wait_timer: 22.09.2015 14:21:49 cmd_2 Helligkeit_Twilight
2015-09-22_13:40:34 di_SoSchu_OG wait_timer: no timer
2015-09-22_13:40:34 di_SoSchu_EG wait_timer: no timer
2015-09-22_13:40:17 di_SoSchu_OG wait_timer: 22.09.2015 14:20:17 cmd_2 Sensor_Licht_Sued
2015-09-22_13:40:17 di_SoSchu_EG wait_timer: 22.09.2015 14:20:17 cmd_3 Sensor_Licht_Sued
2015-09-22_13:38:34 di_SoSchu_OG wait_timer: no timer
2015-09-22_13:38:34 di_SoSchu_EG wait_timer: no timer
2015-09-22_13:38:15 di_SoSchu_EG wait_timer: 22.09.2015 14:18:15 cmd_3 Sensor_Licht_Sued
2015-09-22_13:36:45 di_SoSchu_OG wait_timer: 22.09.2015 14:16:45 cmd_2 Helligkeit_Twilight
2015-09-22_13:36:34 di_SoSchu_OG wait_timer: no timer
2015-09-22_13:36:34 di_SoSchu_EG wait_timer: no timer
2015-09-22_13:36:16 di_SoSchu_OG wait_timer: 22.09.2015 14:16:16 cmd_2 Sensor_Licht_Sued
2015-09-22_13:36:16 di_SoSchu_EG wait_timer: 22.09.2015 14:16:16 cmd_3 Sensor_Licht_Sued
2015-09-22_13:34:34 di_SoSchu_OG wait_timer: no timer
2015-09-22_13:34:34 di_SoSchu_EG wait_timer: no timer
2015-09-22_13:34:16 di_SoSchu_OG wait_timer: 22.09.2015 14:14:16 cmd_2 Sensor_Licht_Sued
2015-09-22_13:34:16 di_SoSchu_EG wait_timer: 22.09.2015 14:14:16 cmd_3 Sensor_Licht_Sued
2015-09-22_13:32:34 di_SoSchu_OG wait_timer: no timer
2015-09-22_13:32:34 di_SoSchu_EG wait_timer: no timer
2015-09-22_13:32:15 di_SoSchu_EG wait_timer: 22.09.2015 14:12:15 cmd_3 Sensor_Licht_Sued
2015-09-22_13:31:42 di_SoSchu_OG wait_timer: 22.09.2015 14:11:42 cmd_2 Helligkeit_Twilight
2015-09-22_13:30:34 di_SoSchu_OG wait_timer: no timer
2015-09-22_13:30:34 di_SoSchu_EG wait_timer: no timer
2015-09-22_13:30:15 di_SoSchu_OG wait_timer: 22.09.2015 14:10:15 cmd_2 Sensor_Licht_Sued
2015-09-22_13:30:15 di_SoSchu_EG wait_timer: 22.09.2015 14:10:15 cmd_3 Sensor_Licht_Sued
2015-09-22_13:28:34 di_SoSchu_OG wait_timer: no timer
2015-09-22_13:28:34 di_SoSchu_EG wait_timer: no timer
2015-09-22_13:28:15 di_SoSchu_OG wait_timer: 22.09.2015 14:08:15 cmd_2 Sensor_Licht_Sued
2015-09-22_13:28:15 di_SoSchu_EG wait_timer: 22.09.2015 14:08:15 cmd_3 Sensor_Licht_Sued
2015-09-22_12:54:16 di_SoSchu_OG cmd_4
2015-09-22_12:54:16 di_SoSchu_OG cmd_event: Sensor_Licht_Sued
2015-09-22_12:54:16 di_SoSchu_OG cmd_nr: 4
2015-09-22_12:54:16 di_SoSchu_EG cmd_4
2015-09-22_12:54:16 di_SoSchu_EG cmd_event: Sensor_Licht_Sued
2015-09-22_12:54:16 di_SoSchu_EG cmd_nr: 4
2015-09-22_12:53:17 di_SoSchu_OG cmd_1
2015-09-22_12:53:17 di_SoSchu_OG cmd_event: Sensor_Licht_Sued
2015-09-22_12:53:17 di_SoSchu_OG cmd_nr: 1
2015-09-22_12:53:17 di_Push_Beschattung_OG cmd_1
2015-09-22_12:53:17 di_Push_Beschattung_OG cmd_event: Beschattung_OG
2015-09-22_12:53:17 di_Push_Beschattung_OG cmd_nr: 1
2015-09-22_12:53:16 Beschattung_OG on


Meiner Ansicht nach hat das DOIF um 12:53 richtigerweise ausgelöst, es hätte allerdings bereits um 1328 Uhr mit dem Waittimer von 2400 sec starten sollen und schlussendlich die Beschattung um 1408 Uhr aufheben müssen.

Hier die Werte des Sensors:

2015-09-22_17:48:15 Sensor_Licht_Sued 383
2015-09-22_17:40:15 Sensor_Licht_Sued 408
2015-09-22_17:32:15 Sensor_Licht_Sued 327
2015-09-22_17:16:15 Sensor_Licht_Sued 242
2015-09-22_17:14:15 Sensor_Licht_Sued 270
2015-09-22_17:10:15 Sensor_Licht_Sued 400
2015-09-22_16:48:15 Sensor_Licht_Sued 1014
2015-09-22_16:46:15 Sensor_Licht_Sued 1436
2015-09-22_16:22:15 Sensor_Licht_Sued 2602
2015-09-22_16:18:15 Sensor_Licht_Sued 2526
2015-09-22_16:14:15 Sensor_Licht_Sued 2946
2015-09-22_16:12:16 Sensor_Licht_Sued 3033
2015-09-22_16:06:16 Sensor_Licht_Sued 5235
2015-09-22_15:44:16 Sensor_Licht_Sued 3316
2015-09-22_15:34:15 Sensor_Licht_Sued 2853
2015-09-22_15:32:15 Sensor_Licht_Sued 2731
2015-09-22_15:28:16 Sensor_Licht_Sued 2515
2015-09-22_15:24:15 Sensor_Licht_Sued 2897
2015-09-22_15:22:16 Sensor_Licht_Sued 3175
2015-09-22_15:14:15 Sensor_Licht_Sued 3320
2015-09-22_15:12:16 Sensor_Licht_Sued 3290
2015-09-22_15:10:15 Sensor_Licht_Sued 3184
2015-09-22_15:06:15 Sensor_Licht_Sued 2750
2015-09-22_14:20:15 Sensor_Licht_Sued 3524
2015-09-22_14:12:15 Sensor_Licht_Sued 3698
2015-09-22_14:10:16 Sensor_Licht_Sued 4580
2015-09-22_14:02:15 Sensor_Licht_Sued 6317
2015-09-22_14:00:16 Sensor_Licht_Sued 8721
2015-09-22_13:58:16 Sensor_Licht_Sued 12265
2015-09-22_13:56:17 Sensor_Licht_Sued 12002
2015-09-22_13:54:16 Sensor_Licht_Sued 11547
2015-09-22_13:52:15 Sensor_Licht_Sued 12580
2015-09-22_13:50:15 Sensor_Licht_Sued 11715
2015-09-22_13:46:15 Sensor_Licht_Sued 8070
2015-09-22_13:42:16 Sensor_Licht_Sued 7715
2015-09-22_13:40:17 Sensor_Licht_Sued 6871
2015-09-22_13:38:15 Sensor_Licht_Sued 6306
2015-09-22_13:36:16 Sensor_Licht_Sued 5789
2015-09-22_13:34:16 Sensor_Licht_Sued 5950
2015-09-22_13:32:15 Sensor_Licht_Sued 6413
2015-09-22_13:30:15 Sensor_Licht_Sued 7720
2015-09-22_13:28:15 Sensor_Licht_Sued 8525
2015-09-22_13:26:15 Sensor_Licht_Sued 13275
2015-09-22_13:24:15 Sensor_Licht_Sued 11070
2015-09-22_13:22:16 Sensor_Licht_Sued 14519
2015-09-22_13:20:15 Sensor_Licht_Sued 26362
2015-09-22_13:18:16 Sensor_Licht_Sued 48619
2015-09-22_13:16:16 Sensor_Licht_Sued 39037
2015-09-22_13:14:16 Sensor_Licht_Sued 47112
2015-09-22_13:12:15 Sensor_Licht_Sued 44532
2015-09-22_13:10:16 Sensor_Licht_Sued 41364
2015-09-22_13:08:16 Sensor_Licht_Sued 28090
2015-09-22_13:06:16 Sensor_Licht_Sued 18864
2015-09-22_13:04:16 Sensor_Licht_Sued 12936
2015-09-22_13:02:16 Sensor_Licht_Sued 10595
2015-09-22_13:00:16 Sensor_Licht_Sued 12430
2015-09-22_12:58:16 Sensor_Licht_Sued 13803
2015-09-22_12:56:16 Sensor_Licht_Sued 17080
2015-09-22_12:54:16 Sensor_Licht_Sued 31285
2015-09-22_12:52:16 Sensor_Licht_Sued 25750
2015-09-22_12:50:16 Sensor_Licht_Sued 26220
2015-09-22_12:48:16 Sensor_Licht_Sued 36460
2015-09-22_12:46:16 Sensor_Licht_Sued 24220
2015-09-22_12:44:16 Sensor_Licht_Sued 25456
2015-09-22_12:42:16 Sensor_Licht_Sued 39101
2015-09-22_12:40:16 Sensor_Licht_Sued 36313
2015-09-22_12:38:16 Sensor_Licht_Sued 32035


Daher frage ich mich, warum das Wait Kommando sofort wieder aufgehoben wird???

Danke für die Hilfe

mumpitz

Damian

Der Waittimer wird zurückgesetzt, wenn in der Wartezeit eine andere Bedingung zuschlägt. Das kannst du an den e_...- Readings sehen. Evtl. kannst du diese Trigger mit einem Fragezeichen als reine Abfrage definieren.

Gruß

Damian
Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

Amenophis86

Das erklärt auch das Problem meines DOIF:


([Schicht] eq "Nachtdienst")
(set Schicht Frei1)
DOELSEIF ([Schicht] eq "Frei1")
(set Schicht Frei)

wait 86500;86500
do always


Das Problem ist, bei mir könnte ich nicht mit einem Fragezeichen arbeiten um ein Triggern zu verhindern. Muss es wohl oder übel in das hier ändern:


([Schicht] eq "Nachtdienst")
(set Schicht Frei1) (set Schicht Frei)

wait 86500,86500
do always
Aktuell dabei unser neues Haus mit KNX am einrichten. Im nächsten Schritt dann KNX mit FHEM verbinden. Allein zwei Dinge sind dabei selten: Zeit und Geld...