DOIF verhält sich komisch seit Umzug auf Pi3 (Backup/resotre)

Begonnen von rretsiem, 24 März 2016, 20:14:09

Vorheriges Thema - Nächstes Thema

rretsiem

Hallo,

Seit wenigen Tagen bin ich auf einen Raspberry Pi3 umgezogen und habe per Backup und restore via "tax xfz ..." das FHEM directory "übertragen". Der Rest ist ein neues Jessie Raspbian Image.

Soweit läuft auch alles, allerdings verhalten sich einige DOIF merkwürdig welche ich in den Abfragen nicht geändert habe. Ich finde aber nicht den Grund. (Das Datum des Pi3 stimmt und wird via NTP synchronisiert, dass kann ich also ausschließen)

Ein Beispiel:


([16:00-00:00|8] and [rgr_Residents:presence] eq "present") (set WOZ.Strom.Media:FILTER=STATE!=on on) DOELSEIF
([08:00-01:00|7] and [rgr_Residents:presence] eq "present") (set WOZ.Strom.Media:FILTER=STATE!=on on) DOELSEIF
([?Urlaub.dummy] eq "ja" and [rgr_Residents:presence] eq "present") (set WOZ.Strom.Media:FILTER=STATE!=on on) DOELSE
(set WOZ.Strom.Media:FILTER=STATE!=off off)


Um Punkt 16 Uhr heute hat das DOIF aber in den ELSE Zweig gewechselt, obwohl rgr_Residents presence im state "present" war. Das DOIF hätte also eigentlich in den ersten IF Zweig schalten müssen, welches die letzten Wochen auch auf dem alten System immer geklappt hat.

Hier mal das komplette List.

Internals:
   DEF        ([16:00-00:00|8] and [rgr_Residents:presence] eq "present") (set WOZ.Strom.Media:FILTER=STATE!=on on) DOELSEIF
([08:00-01:00|7] and [rgr_Residents:presence] eq "present") (set WOZ.Strom.Media:FILTER=STATE!=on on) DOELSEIF
([?Urlaub.dummy] eq "ja" and [rgr_Residents:presence] eq "present") (set WOZ.Strom.Media:FILTER=STATE!=on on) DOELSE
(set WOZ.Strom.Media:FILTER=STATE!=off off)
   NAME       doif.WOZ.Strom.Media
   NR         237
   NTFY_ORDER 50-doif.WOZ.Strom.Media
   STATE      cmd_4
   TYPE       DOIF
   Readings:
     2016-03-24 04:35:01   Device          rgr_Residents
     2016-03-24 16:00:00   cmd_event       timer_1
     2016-03-24 16:00:00   cmd_nr          4
     2016-03-24 04:35:01   e_rgr_Residents_presence present
     2016-03-24 16:00:00   state           cmd_4
     2016-03-24 17:25:25   timer_1_c1      25.03.2016 16:00:00|8
     2016-03-24 17:25:25   timer_2_c1      25.03.2016 00:00:00|8
     2016-03-24 17:25:25   timer_3_c2      25.03.2016 08:00:00|7
     2016-03-24 17:25:25   timer_4_c2      25.03.2016 01:00:00|7
   Condition:
     0          DOIF_time($hash,$hash->{realtime}{0},$hash->{realtime}{1},$wday,$hms,"8") and ReadingValDoIf($hash,'rgr_Residents','presence','','',AttrVal($hash->{NAME},'notexist',undef)) eq "present"
     1          DOIF_time($hash,$hash->{realtime}{2},$hash->{realtime}{3},$wday,$hms,"7") and ReadingValDoIf($hash,'rgr_Residents','presence','','',AttrVal($hash->{NAME},'notexist',undef)) eq "present"
     2          InternalDoIf($hash,'Urlaub.dummy','STATE','','',AttrVal($hash->{NAME},'notexist',undef)) eq "ja" and ReadingValDoIf($hash,'rgr_Residents','presence','','',AttrVal($hash->{NAME},'notexist',undef)) eq "present"
   Days:
     0          8
     1          8
     2          7
     3          7
   Devices:
     0           rgr_Residents
     1           rgr_Residents
     2           rgr_Residents
     all         rgr_Residents
   Do:
     0:
       0          set WOZ.Strom.Media:FILTER=STATE!=on on
     1:
       0          set WOZ.Strom.Media:FILTER=STATE!=on on
     2:
       0          set WOZ.Strom.Media:FILTER=STATE!=on on
     3:
       0          set WOZ.Strom.Media:FILTER=STATE!=off off
   Helper:
     globalinit 1
     last_timer 4
     sleeptimer -1
   Internals:
     2           Urlaub.dummy:STATE
     all         Urlaub.dummy:STATE
   Interval:
     0          -1
     1          0
     2          -1
     3          2
   Itimer:
   Localtime:
     0          1458918000
     1          1458860400
     2          1458889200
     3          1458864000
   Readings:
     0           rgr_Residents:presence
     1           rgr_Residents:presence
     2           rgr_Residents:presence
     all         rgr_Residents:presence
   Realtime:
     0          16:00:00
     1          00:00:00
     2          08:00:00
     3          01:00:00
   Regexp:
     All:
   State:
   Time:
     0          16:00:00
     1          00:00:00
     2          08:00:00
     3          01: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:
     1458860400:
       localtime  1458860400
       Hash:
     1458864000:
       localtime  1458864000
       Hash:
     1458889200:
       localtime  1458889200
       Hash:
     1458918000:
       localtime  1458918000
       Hash:
Attributes:
   do         always
   room       Wohnzimmer


Ich kann auch noch weitere Beispiele liefern welche ebenfalls nicht mehr korrekt schalten.

Hilfe! 😀