#gelöst# Tägliches DOIF speichert nicht

Begonnen von Helmi55, 17 Mai 2021, 07:49:07

Vorheriges Thema - Nächstes Thema

Helmi55

Hallo ich verwende für meine Poolsteuerung zwei DOIFs welche die Zeitabstände (event-min-interval...) bei Tag und Nacht umstellen.
Hat bis zum Ende der Badesaison 2020 funktioniert. Heuer habe ich immer nach dem Ausführen des DOIFs das rote Fragezeichen bei "Save config"
Hier die 2 DOIFs
defmod di_TagSensoren DOIF ([07:01:00-19:00:00] and [PoolMaster] eq "on") (attr PoolSensor event-min-interval temperature:60,save, attr SolarSensor event-min-interval temperature:30,save) DOELSE
attr di_TagSensoren alias di_TagSensoren
attr di_TagSensoren room Steuerung


defmod di_NachtSensoren DOIF ([19:01:00-07:00:00] and [PoolMaster] eq "on") (attr PoolSensor event-min-interval temperature:600,save, attr SolarSensor event-min-interval temperature:600,save) DOELSE
attr di_NachtSensoren alias di_NachtSensoren
attr di_NachtSensoren room Steuerung


Warum wird der "save" Befehl nicht mehr ausgeführt?

Danke für eure Hilfe
Helmut
System1 fhem 6.1 auf RPi 4B mit 4GB, HMUSBConfig, DS9490R-1Wire, Busware USB 868, Pool-Solarsteuerung mit FHEM. System2 fhem 6.1 auf RPi 4B mit 4GB (Bullseye) mit Busware USB 868 und 433 und HMUARTLGW für Haussteuerung

https://www.flickr.com/photos/canonhelmi/

MadMax-FHEM

FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

Otto123

Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

yersinia

Könnte am fehlenden Leerzeichen liegen - dadurch könnte dies als Attribut-Zuordnung mitgezählt werden. Versuche es mal mit Leerzeichen vor save:
defmod di_TagSensoren DOIF ([07:01:00-19:00:00] and [PoolMaster] eq "on") (attr PoolSensor event-min-interval temperature:60, save, attr SolarSensor event-min-interval temperature:30, save) DOELSE
attr di_TagSensoren alias di_TagSensoren
attr di_TagSensoren room Steuerung


defmod di_NachtSensoren DOIF ([19:01:00-07:00:00] and [PoolMaster] eq "on") (attr PoolSensor event-min-interval temperature:600, save, attr SolarSensor event-min-interval temperature:600, save) DOELSE
attr di_NachtSensoren alias di_NachtSensoren
attr di_NachtSensoren room Steuerung


Im Übrigen, würde ein save und ein DOIF nicht reichen?
defmod di_TagSensoren DOIF ([07:01:00-19:00:00]\
and [PoolMaster] eq "on")\
(attr PoolSensor event-min-interval temperature:60,\
attr SolarSensor event-min-interval temperature:30,\
save)\
DOELSEIF ([19:01:00-07:00:00]\
and [PoolMaster] eq "on")\
(attr PoolSensor event-min-interval temperature:600,\
attr SolarSensor event-min-interval temperature:600,\
save)\
DOELSE
attr di_TagSensoren alias di_TagSensoren
attr di_TagSensoren room Steuerung
viele Grüße, yersinia
----
FHEM 6.3 (SVN) on RPi 4B with RasPi OS Bullseye (perl 5.32.1) | 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

Helmi55

Guten Morgen an alle
Ja autosave war nicht auf 1 - Danke
@ yersina DAs ist natürlich die schönere Art. Die werde ich umsetzen
Schönen Tag
Helmut
System1 fhem 6.1 auf RPi 4B mit 4GB, HMUSBConfig, DS9490R-1Wire, Busware USB 868, Pool-Solarsteuerung mit FHEM. System2 fhem 6.1 auf RPi 4B mit 4GB (Bullseye) mit Busware USB 868 und 433 und HMUARTLGW für Haussteuerung

https://www.flickr.com/photos/canonhelmi/

Helmi55

Hallo @yersina
Guten Morgen - habe jetzt deine Version eingesetzt.
Sie funktioniert bringt aber eine Fehlermeldung
Internals:
   CFGFN     
   DEF        ([07:01:00-19:00:00]
and [PoolMaster] eq "on")
(attr PoolSensor event-min-interval temperature:60,
attr SolarSensor event-min-interval temperature:30,
save)
DOELSEIF ([19:01:00-07:00:00]
and [PoolMaster] eq "on")
(attr PoolSensor event-min-interval temperature:600,
attr SolarSensor event-min-interval temperature:600,
save)
DOELSE
   FUUID      60a4b093-f33f-b033-6dad-d4019de5338647bd
   MODEL      FHEM
   NAME       di_TagSensoren
   NOTIFYDEV  PoolMaster,global
   NR         8938
   NTFY_ORDER 50-di_TagSensoren
   STATE      cmd_1
   TYPE       DOIF
   READINGS:
     2021-05-20 07:01:00   cmd             1
     2021-05-20 07:01:00   cmd_event       timer_1
     2021-05-20 07:01:00   cmd_nr          1
     2021-05-20 07:01:00   error            save: Wrote configuration to fhem.cfg
     2021-05-19 08:30:46   mode            enabled
     2021-05-20 07:01:00   state           cmd_1
     2021-05-19 19:00:00   timer_01_c01    20.05.2021 07:01:00
     2021-05-19 19:00:00   timer_02_c01    20.05.2021 19:00:00
     2021-05-20 07:00:00   timer_03_c02    20.05.2021 19:01:00
     2021-05-20 07:00:00   timer_04_c02    21.05.2021 07:00:00
   Regex:
     accu:
     collect:
     cond:
       PoolMaster:
         0:
           &STATE     ^PoolMaster$
         1:
           &STATE     ^PoolMaster$
   attr:
     cmdState:
     wait:
     waitdel:
   condition:
     0          ::DOIF_time($hash,0,1,$wday,$hms) and ::InternalDoIf($hash,'PoolMaster','STATE') eq "on"
     1          ::DOIF_time($hash,2,3,$wday,$hms) and ::InternalDoIf($hash,'PoolMaster','STATE') eq "on"
   days:
   do:
     0:
       0          attr PoolSensor event-min-interval temperature:60, attr SolarSensor event-min-interval temperature:30, save
     1:
       0          attr PoolSensor event-min-interval temperature:600, attr SolarSensor event-min-interval temperature:600, save
     2:
       0         
   helper:
     DEVFILTER  ^global$|^PoolMaster$
     NOTIFYDEV  global|PoolMaster
     event      timer_1
     globalinit 1
     last_timer 4
     sleeptimer -1
     timerdev   
     timerevent timer_1
     triggerDev
     DOIF_eventa:
       cmd_nr: 1
       cmd: 1
       cmd_event: timer_1
       error:  save: Wrote configuration to fhem.cfg
       cmd_1
     DOIF_eventas:
       cmd_nr: 1
       cmd: 1
       cmd_event: timer_1
       error:  save: Wrote configuration to fhem.cfg
       state: cmd_1
     timerevents:
       timer_1
     timereventsState:
       timer_1
     triggerEvents:
       timer_1
     triggerEventsState:
       timer_1
   internals:
     all         PoolMaster:STATE
   interval:
     0          -1
     1          0
     2          -1
     3          2
   intervalfunc:
   intervaltimer:
   localtime:
     0          1621486860
     1          1621530000
     2          1621530060
     3          1621573200
   realtime:
     0          07:01:00
     1          19:00:00
     2          19:01:00
     3          07:00:00
   time:
     0          07:01:00
     1          19:00:00
     2          19:01:00
     3          07:00:00
   timeCond:
     0          0
     1          0
     2          1
     3          1
   timer:
     0          0
     1          0
     2          0
     3          0
   timers:
     0           0  1
     1           2  3
   triggertime:
     1621530000:
       localtime  1621530000
       hash:
     1621530060:
       localtime  1621530060
       hash:
     1621573200:
       localtime  1621573200
       hash:
   uiState:
   uiTable:
Attributes:
   alias      di_TagSensoren
   room       Steuerung


Hab hier das List vom DOIF angehängt.
??
LG
Helmut
System1 fhem 6.1 auf RPi 4B mit 4GB, HMUSBConfig, DS9490R-1Wire, Busware USB 868, Pool-Solarsteuerung mit FHEM. System2 fhem 6.1 auf RPi 4B mit 4GB (Bullseye) mit Busware USB 868 und 433 und HMUARTLGW für Haussteuerung

https://www.flickr.com/photos/canonhelmi/

Damian

In diesem Fall ist es nur eine Info, weil save etwas zurückmeldet - das kannst du ignorieren.
Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

Helmi55

Danke - das wusste ich nicht.
Hätte mich auch gewundert denn die Werte im Sensor passen.

Schönen Tag
Helmut
System1 fhem 6.1 auf RPi 4B mit 4GB, HMUSBConfig, DS9490R-1Wire, Busware USB 868, Pool-Solarsteuerung mit FHEM. System2 fhem 6.1 auf RPi 4B mit 4GB (Bullseye) mit Busware USB 868 und 433 und HMUARTLGW für Haussteuerung

https://www.flickr.com/photos/canonhelmi/

Damian

mit z.B.

{$attr{PoolSensor}{event-min-interval}="temperature:60"}

kann man ein Attribut temporär ändern ohne save, ohne dass ein Fragezeichen erscheint
Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

Helmi55

Danke
Aber jetzt erscheint kein Fragezeichen mehr. Das war anscheinend durch den fehlenden Abstand nach dem","
System1 fhem 6.1 auf RPi 4B mit 4GB, HMUSBConfig, DS9490R-1Wire, Busware USB 868, Pool-Solarsteuerung mit FHEM. System2 fhem 6.1 auf RPi 4B mit 4GB (Bullseye) mit Busware USB 868 und 433 und HMUARTLGW für Haussteuerung

https://www.flickr.com/photos/canonhelmi/