Hauptmenü

[gelöst] DOIF - wait

Begonnen von maci, 24 Mai 2020, 15:59:27

Vorheriges Thema - Nächstes Thema

maci

Ich habe auch eine Frage zu DOIF und wait. Habe es aber nicht zum Beitrag davor geschrieben, da es da ja um Zeilenumbüche geht.

main DOIF mit funktioniert nicht so, wie ich mir das eigentlich gedacht habe.
Hier mein List: Internals:
   DEF        ([09:58])
  (set NasSchalter on 1, set NasSchalter on 0, set DatensicherungNAS on-for-timer 2 )
DOELSEIF ([16:00]) (set NasSchalter off 0)
   FUUID      5ec00a13-f33f-418d-f5dd-0b81bb82371a206b
   MODEL      FHEM
   NAME       di_DS_NAS
   NOTIFYDEV  global
   NR         114
   NTFY_ORDER 50-di_DS_NAS
   STATE      cmd_1
   TYPE       DOIF
   VERSION    21224 2020-02-18 18:45:49
   READINGS:
     2020-05-24 09:58:00   cmd             1
     2020-05-24 09:58:00   cmd_event       timer_1
     2020-05-24 09:58:00   cmd_nr          1
     2020-05-23 21:06:52   mode            enabled
     2020-05-24 09:58:00   state           cmd_1
     2020-05-24 15:42:52   timer_01_c01    25.05.2020 09:58:00
     2020-05-24 15:42:52   timer_02_c02    24.05.2020 16:00:00
   Regex:
     accu:
   attr:
     wait:
       0:
         60
         60
         60
   condition:
     0          ::DOIF_time_once($hash,0,$wday)
     1          ::DOIF_time_once($hash,1,$wday)
   days:
   do:
     0:
       0          set NasSchalter on 1, set NasSchalter on 0, set DatensicherungNAS on-for-timer 2
     1:
       0          set NasSchalter off 0
     2:
   helper:
     DEVFILTER  ^global$
     NOTIFYDEV  global
     globalinit 1
     last_timer 2
     sleeptimer -1
   intervalfunc:
   localtime:
     0          1590393480
     1          1590328800
   perlblock:
   realtime:
     0          09:58:00
     1          16:00:00
   time:
     0          09:58:00
     1          16:00:00
   timeCond:
     0          0
     1          1
   timer:
     0          0
     1          0
   timers:
     0           0
     1           1
   triggertime:
     1590328800:
       localtime  1590328800
       hash:
     1590393480:
       localtime  1590393480
       hash:
   uiState:
   uiTable:
Attributes:
   DbLogExclude .*
   do         always
   group      NAS
   icon       general_an_fuer_zeit
   room       Relais
   sortby     9
   wait       60,60,60


Ich wollte damit eigentlich erreichen dass der Nasschalter (Shelly2.5)
Als erstes sollte das Festplattenrack hochgefahren werden, dann die NAS mit Strom versorget werden, als letztes die NAS eingeschaltet werden.
Doch lt. Log sieht es so aus:
...
2020-05-24_09:58:00 DatensicherungNAS on
2020-05-24_09:58:00 NasSchalter relay_0: on
2020-05-24_09:58:00 NasSchalter relay_1: on
2020-05-24_09:58:02 DatensicherungNAS off
...

Also keine Spur von 60 sec Pause. Nicht einmal die Reihenfolge passt.
Blicke irgendwie nicht mehr durch.

Fhem auf Dell Thinclient, Fhem auf Raspebrry Pi4,
UniPi Vers. 1.1 mit Raspberry Pi3, 1wire USB Adapter mit OWX
Netatmo Wetterstation + Regenmesser + Netatmo Thermostat
Homematic mit HMLan

yersinia

Diese set Befehle werden nacheinander abgearbeitet, ohne Pause:
(set NasSchalter on 1, set NasSchalter on 0, set DatensicherungNAS on-for-timer 2 )

Besser wäre:
([09:58])
     (set NasSchalter on 1)
     (set NasSchalter on 0)
     (set DatensicherungNAS on-for-timer 2)
DOELSEIF ([16:00])
     (set NasSchalter off 0)

dann klappt es auch mit dem wait:
attr di_DS_NAS wait 60,60,60:0
Siehe auch: https://fhem.de/commandref_DE.html#DOIF_wait
viele Grüße, yersinia
----
FHEM 6.4 (SVN) on RPi 4B with RasPi OS Bookworm (perl 5.36.0) | FTUI
nanoCUL->2x868(1x ser2net)@tsculfw, 1x433@Sduino | MQTT2 | Tasmota | ESPEasy
VCCU->14xSEC-SCo, 7xCC-RT-DN, 5xLC-Bl1PBU-FM, 3xTC-IT-WM-W-EU, 1xPB-2-WM55, 1xLC-Sw1PBU-FM, 1xES-PMSw1-Pl

maci

Danke, dann habe ich die commandref schlampig gelesen.
Habe es probiert, und es funktioniert
Fhem auf Dell Thinclient, Fhem auf Raspebrry Pi4,
UniPi Vers. 1.1 mit Raspberry Pi3, 1wire USB Adapter mit OWX
Netatmo Wetterstation + Regenmesser + Netatmo Thermostat
Homematic mit HMLan