Zeitraumdefinitionen aus externen Uhrzeit Vorgaben

Begonnen von Burny4600, 30 Januar 2018, 21:19:33

Vorheriges Thema - Nächstes Thema

Burny4600

Ich möchte einen Zeitraum unter DOIF mit externen Zeit Definition definieren die in der Zeitdarstellung 00:00 erfolgen.

({[MAG-MUG]})
(set L_OG1_WZ_Aqua_Mond:FILTER=state!=on on)
DOELSE
(set L_OG1_WZ_Aqua_Mond:FILTER=state!=off off)

MAG ist Mondaufgang und MUG Monduntergang

Bei dieser DOIF Konfiguration bekomme ich folgende Fehlermeldung

timer_01_c01 error: Wrong timespec MAG: either HH:MM:SS or {perlcode}
timer_02_c01 error: Wrong timespec MUG: either HH:MM:SS or {perlcode}

Wie muss ich unter DOIF die {} Klammern setzten um den Fehler zu beheben?
LG Chris

Raspberry Pi 2-5, Bullseye Lite, Bookworm Lite
Schnittstellen: 1-Wire, FHEM2FEHEM, HM-MOD-UART, LAN, Modbus, MQTT, nanoCUL, RFXtrx433E, SIGNALduino, ser2net
Devices: APC, Eastron, FS20, IT, Homematic, MQTT, PV-(DEYE, EPEVER, FRONIUS), Resol-VBUS, S.USV, TEK603, WMR200, YouLess

Damian

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

Burny4600

Ursprünglich hatte ich diese Konfiguration.
Diese bringt im LOG eine andere Fehlermeldung.
2018.01.30 22:00:01.258 4: AquariumNachtlicht timer_01_c01 error: Wrong timespec Initialized: either HH:MM:SS or {perlcode}
2018.01.30 22:10:01.269 4: AquariumNachtlicht timer_02_c01 error: Wrong timespec Initialized: either HH:MM:SS or {perlcode}
LG Chris

Raspberry Pi 2-5, Bullseye Lite, Bookworm Lite
Schnittstellen: 1-Wire, FHEM2FEHEM, HM-MOD-UART, LAN, Modbus, MQTT, nanoCUL, RFXtrx433E, SIGNALduino, ser2net
Devices: APC, Eastron, FS20, IT, Homematic, MQTT, PV-(DEYE, EPEVER, FRONIUS), Resol-VBUS, S.USV, TEK603, WMR200, YouLess

Damian

Zitat von: Burny4600 am 30 Januar 2018, 22:14:17
Ursprünglich hatte ich diese Konfiguration.
Diese bringt im LOG eine andere Fehlermeldung.
2018.01.30 22:00:01.258 4: AquariumNachtlicht timer_01_c01 error: Wrong timespec Initialized: either HH:MM:SS or {perlcode}
2018.01.30 22:10:01.269 4: AquariumNachtlicht timer_02_c01 error: Wrong timespec Initialized: either HH:MM:SS or {perlcode}


Dann ist im Status des Devices MAG bzw. MUG keine Zeitangabe in der Form HH:MM oder HH:MM:SS drin.
Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

Burny4600

#4
Es sind eindeutige Uhrzeiten die von PROPLANTA übernommen werden.
https://www.proplanta.de/Wetter-Oesterreich/profi-wetter-at.php?SITEID=70&PLZ=Wels&STADT=Wels&WETTERaufrufen=stadt&Wtp=&SUCHE=Wetter&wT=
fc0_moonRise
fc0_moonSet


LIST AquariumNachtlicht
Internals:
   CFGFN      /media/hdd/fhem/myprogram/aquarium_rasp01.pm
   DEF        ([[MAG]-[MUG]])
(set L_OG1_WZ_Aqua_Mond:FILTER=state!=on on)
DOELSE
(set L_OG1_WZ_Aqua_Mond:FILTER=state!=off off)
   NAME       AquariumNachtlicht
   NR         4099
   NTFY_ORDER 50-AquariumNachtlicht
   STATE      initialized
   TYPE       DOIF
   READINGS:
     2018-01-30 22:10:53   cmd             0
     2018-01-30 22:10:53   mode            enabled
     2018-01-30 22:10:53   state           initialized
     2018-01-30 22:10:54   timer_01_c01    31.01.2018 14:43:00
     2018-01-30 22:10:54   timer_02_c01    31.01.2018 05:31:00
   Regex:
   condition:
     0          DOIF_time($hash,0,1,$wday,$hms)
   days:
   devices:
   do:
     0:
       0          set L_OG1_WZ_Aqua_Mond:FILTER=state!=on on
     1:
       0          set L_OG1_WZ_Aqua_Mond:FILTER=state!=off off
   helper:
     DOIF_Readings_events
     DOIF_eventas
     globalinit 1
     last_timer 2
     sleeptimer -1
   interval:
     0          -1
     1          0
   itimer:
     all         MAG MUG
   localtime:
     0          1517406180
     1          1517373060
   realtime:
     0          14:43:00
     1          05:31:00
   time:
     0          [MAG]
     1          [MUG]
   timeCond:
     0          0
     1          0
   timer:
     0          0
     1          0
   timers:
     0           0  1
   triggertime:
     1517373060:
       localtime  1517373060
       hash:
     1517406180:
       localtime  1517406180
       hash:
   uiState:
   uiTable:
Attributes:
   alias      Aquarium Mondlicht
   devStateIcon EIN:light_downlight@cyan AUS:light_downlight@gray
   eventMap   cmd_1:EIN cmd_2:AUS
   group      Timer
   icon       light_downlight
   room       OG1-Kueche,OG1-Wohnzimmer,_Timer


Trotz richtiger Schreibweise ist immer dieser LOG Eintrag beim Bootvorgang vorhanden.
2018.01.31 08:43:06.629 4: AquariumNachtlicht timer_01_c01 error: Wrong timespec MAG: either HH:MM:SS or {perlcode}
2018.01.31 08:43:06.631 4: AquariumNachtlicht timer_02_c01 error: Wrong timespec MUG: either HH:MM:SS or {perlcode}


Es kann auch nicht daran liegen das aus dem WEB noch keine Daten vorhanden sind, denn im fhem.save stehen schon Werte für MAD und MUG.
setstate MAG 14:43
setstate MAG 2018-01-30 21:30:43 state 14:43
.........................
setstate MUG 05:31
setstate MUG 2018-01-30 21:30:43 state 05:31
LG Chris

Raspberry Pi 2-5, Bullseye Lite, Bookworm Lite
Schnittstellen: 1-Wire, FHEM2FEHEM, HM-MOD-UART, LAN, Modbus, MQTT, nanoCUL, RFXtrx433E, SIGNALduino, ser2net
Devices: APC, Eastron, FS20, IT, Homematic, MQTT, PV-(DEYE, EPEVER, FRONIUS), Resol-VBUS, S.USV, TEK603, WMR200, YouLess

Per


Damian

Zitat von: Burny4600 am 31 Januar 2018, 08:46:33

Es kann auch nicht daran liegen das aus dem WEB noch keine Daten vorhanden sind, denn im fhem.save stehen schon Werte für MAD und MUG.
setstate MAG 14:43
setstate MAG 2018-01-30 21:30:43 state 14:43
.........................
setstate MUG 05:31
setstate MUG 2018-01-30 21:30:43 state 05:31


So ist es wohl, die Readings sind offenbar kurz nach dem Hochfahren nicht oder nicht mit einer Uhrzeit belegt. DOIF merkt allerdings, wenn sie zum späteren Zeitpunkt korrekt belegt werden und setzt dann die richtigen Timer, wie im list zu sehen.
Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF