Hauptmenü

Was bedeutet diese Meldung?

Begonnen von maci, 04 Dezember 2017, 17:48:51

Vorheriges Thema - Nächstes Thema

maci

Hallo,

Bei einer meiner DOIFs kommt immer diese Meldung:
condition c02: Bareword "on" not allowed while "strict subs" in use at (eval 333250) line 1. Bareword "off" not allowed while "strict subs" in use at (eval 333250) line 1.

Hier noch das List meines DOIFs:
Internals:
   DEF        ([RolladenAutomatik_1OG] eq on and [{sunrise(+2377,"8:00","10:00")}|7] or [{sunrise(+577,"6:30","8:00")}|12345])
(set Fenster_gross pct 100)
DOELSEIF ([RolladenAutomatik_1OG] eq on and [Fenster_offen] eq off and [{sunset(-1500,"15:30","22:30")}])
(set Fenster_gross pct 0)
DOELSEIF ([RolladenAutomatik_1OG] eq on and [Fenster_offen] eq on and [{sunset(3600,"15:30","22:30")}])
(set Fenster_gross pct 0)
DOELSEIF ([RolladenAutomatik_1OG] eq on and [Fenster_offen] eq on and [Fenster_gross:pct] < 80)
(set Fenster_gross pct 100)
   NAME       di_Rolladen_CUL_HM_Fenster_gross
   NR         1129
   NTFY_ORDER 50-di_Rolladen_CUL_HM_Fenster_gross
   STATE      cmd_2
   TYPE       DOIF
   READINGS:
     2017-12-04 17:45:32   Device          Fenster_offen
     2017-12-04 17:01:35   cmd             2
     2017-12-04 17:01:35   cmd_event       set_cmd_2
     2017-12-04 17:01:35   cmd_nr          2
     2017-12-04 17:03:20   e_Fenster_gross_pct 90
     2017-12-04 17:45:32   e_Fenster_offen_STATE off
     2017-12-04 17:46:14   error           condition c03: Bareword "on" not allowed while "strict subs" in use at (eval 333335) line 1.
Bareword "on" not allowed while "strict subs" in use at (eval 333335) line 1.

     2017-12-04 17:01:35   state           cmd_2
     2017-12-04 16:55:57   timer_01_c01    05.12.2017 08:00:00|7
     2017-12-04 16:55:57   timer_02_c01    05.12.2017 07:11:15|12345
     2017-12-04 16:55:57   timer_03_c02    05.12.2017 16:20:58
     2017-12-04 17:46:14   timer_04_c03    05.12.2017 17:45:58
   condition:
     0          InternalDoIf($hash,'RolladenAutomatik_1OG','STATE') eq on and DOIF_time_once($hash,0,$wday,"7") or DOIF_time_once($hash,1,$wday,"12345")
     1          InternalDoIf($hash,'RolladenAutomatik_1OG','STATE') eq on and InternalDoIf($hash,'Fenster_offen','STATE') eq off and DOIF_time_once($hash,2,$wday)
     2          InternalDoIf($hash,'RolladenAutomatik_1OG','STATE') eq on and InternalDoIf($hash,'Fenster_offen','STATE') eq on and DOIF_time_once($hash,3,$wday)
     3          InternalDoIf($hash,'RolladenAutomatik_1OG','STATE') eq on and InternalDoIf($hash,'Fenster_offen','STATE') eq on and ReadingValDoIf($hash,'Fenster_gross','pct') < 80
   days:
     0          7
     1          12345
   devices:
     0           RolladenAutomatik_1OG
     1           RolladenAutomatik_1OG Fenster_offen
     2           RolladenAutomatik_1OG Fenster_offen
     3           RolladenAutomatik_1OG Fenster_offen Fenster_gross
     all         RolladenAutomatik_1OG Fenster_offen Fenster_gross
   do:
     0:
       0          set Fenster_gross pct 100
     1:
       0          set Fenster_gross pct 0
     2:
       0          set Fenster_gross pct 0
     3:
       0          set Fenster_gross pct 100
     4:
   helper:
     event      timer_4
     globalinit 1
     last_timer 4
     sleeptimer -1
     triggerDev
     triggerEvents:
       timer_4
     triggerEventsState:
       state: off
   internals:
     0           RolladenAutomatik_1OG:STATE
     1           RolladenAutomatik_1OG:STATE Fenster_offen:STATE
     2           RolladenAutomatik_1OG:STATE Fenster_offen:STATE
     3           RolladenAutomatik_1OG:STATE Fenster_offen:STATE
     all         RolladenAutomatik_1OG:STATE Fenster_offen:STATE
   interval:
   itimer:
   localtime:
     0          1512457200
     1          1512454275
     2          1512487258
     3          1512492358
   readings:
     3           Fenster_gross:pct
     all         Fenster_gross:pct
   realtime:
     0          08:00:00
     1          07:11:15
     2          16:20:58
     3          17:45:58
   regexp:
     0:
     1:
     2:
     3:
     all:
   state:
     STATE:
   time:
     0          {sunrise(+2377,"8:00","10:00")}
     1          {sunrise(+577,"6:30","8:00")}
     2          {sunset(-1500,"15:30","22:30")}
     3          {sunset(3600,"15:30","22:30")}
   timeCond:
     0          0
     1          0
     2          1
     3          2
   timer:
     0          0
     1          0
     2          0
     3          0
   timers:
     0           0  1
     1           2
     2           3
   trigger:
   triggertime:
     1512454275:
       localtime  1512454275
       hash:
     1512457200:
       localtime  1512457200
       hash:
     1512487258:
       localtime  1512487258
       hash:
     1512492358:
       localtime  1512492358
       hash:
Attributes:
   do         always
   room       CUL_HM


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

Damian

Seit wann vergleichst du mit eq Zeichenketten wie: on, off  ohne Anführungszeichen ;)
Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

maci

Uuups - da habe ich wohl einen fatalen Fehler gemacht  :-[

Danke für die rasche Hilfe
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