Was triggert (fälschlich) mein DOIF?

Begonnen von cbl, 22 Dezember 2016, 14:13:57

Vorheriges Thema - Nächstes Thema

cbl

Hallo,

seit ein paar Tagen gehen meine Rolladen zu unschönen Zeiten am Mittag runter. Um dem Problem auf die Schliche zu kommen, logge ich etwas umfangreicher mit.
Im Logfile sehe ich

2016-12-22_12:03:12 st.twilight twilight_weather: 100
2016-12-22_12:03:12 dummy.Tageslicht dunkel
2016-12-22_12:03:12 doif.licht.draussen cmd_nr: 1
2016-12-22_12:03:12 doif.licht.draussen cmd: 1
2016-12-22_12:03:12 doif.licht.draussen cmd_event: st.twilight
2016-12-22_12:03:12 doif.licht.draussen cmd_1
2016-12-22_12:08:12 st.twilight twilight_weather: 100


Twilight ist so definiert:
def st.twilight Twilight xx.xxxx yy.yyyy zzzzz
attr st.twilight event-on-change-reading twilight,twilight_weather
attr st.twilight event-on-update-reading twilight,twilight_weather
attr st.twilight room Wetter


Das DOIF sieht so aus:
def doif.licht.draussen DOIF ([st.twilight:twilight_weather] le 34 and [?12:00-23:59]) \
(set dummy.Tageslicht dunkel) \
\
DOELSEIF \
  ([[st.twilight:sr_weather]] and [?04:00-11:59]) \
   (set dummy.Tageslicht hell) \
   \
DOELSEIF \
  ([st.twilight:twilight_weather] ge 50 and [?04:00-11:59]) \
   (set dummy.Tageslicht hell)
attr doif.licht.draussen always_hidden true
attr doif.licht.draussen room Wetter


Weshalb schaltet das DOIF um 12:03 Uhr trotz des unveränderten Status 100 bei twilight_weather auf
"dunkel"?

Was übersehe ich?

Ich freue mich über jeden Hinweis.

Gruß
Christian

Beta-User

Dringende Vermutung: Du machst einen string-Vergleich statt eines Werte-Vergleichs ("le" bzw. "ge" statt "<=" bzw. ">=").

Damit ist 100 kleiner als 34...
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: ZigBee2mqtt, MiLight@ESP-GW, BT@OpenMQTTGw | ZWave | SIGNALduino | MapleCUN | RHASSPY
svn: u.a Weekday-&RandomTimer, Twilight,  div. attrTemplate-files, MySensors

cbl

Gmpf.

Danke für die verdammt schnelle Antwort.  Das dürfte es sein.