Ich habe den Eindruck, mit einem der letzten Updates von Twilight hat sich das Verhalten bei Verwendung der Funktion twilight() geändert. Bei der ersten Ausführung (eines "at") nach einem Fhem Shutdown/Restart wird immer der angegebene "min"-Wert verwendet. Spätere Ausführungen stimmen dann, auch ein editieren/modify der DEF des at führt offensichtlich zu korrekter Neuberechnung.
Folgendes kann ich zur Fehlerbestimmung beisteuern:
Verbose>5 des Fhem-Restart:
2015.01.06 13:05:39 3: [aidTL] got no weather info from yahoo. Error code: connect to http://weather.yahooapis.com:80 timed out
2015.01.06 13:05:39 5: [aidTL] setting Timer: aidTL_sr_astro 06.01.2015 06:21:11
2015.01.06 13:05:39 5: [aidTL] setting Timer: aidTL_ss_astro 06.01.2015 18:39:21
2015.01.06 13:05:39 5: [aidTL] setting Timer: aidTL_sr_naut 06.01.2015 06:59:11
2015.01.06 13:05:39 5: [aidTL] setting Timer: aidTL_ss_naut 06.01.2015 18:01:21
2015.01.06 13:05:39 5: [aidTL] setting Timer: aidTL_sr_civil 06.01.2015 07:38:55
2015.01.06 13:05:39 5: [aidTL] setting Timer: aidTL_ss_civil 06.01.2015 17:21:37
2015.01.06 13:05:39 5: [aidTL] setting Timer: aidTL_sr 06.01.2015 08:21:25
2015.01.06 13:05:39 5: [aidTL] setting Timer: aidTL_ss 06.01.2015 16:39:07
2015.01.06 13:05:39 5: [aidTL] setting Timer: aidTL_sr_indoor 06.01.2015 08:28:53
2015.01.06 13:05:39 5: [aidTL] setting Timer: aidTL_ss_indoor 06.01.2015 16:31:39
2015.01.06 13:05:39 5: [aidTL] setting Timer: aidTL_sr_weather 06.01.2015 08:21:25
2015.01.06 13:05:39 5: [aidTL] setting Timer: aidTL_ss_weather 06.01.2015 16:39:07
2015.01.06 13:05:39 5: [aidTL] setting Timer: aidTL_Midnight 07.01.2015 00:00:30
2015.01.06 13:05:39 5: [aidTL] setting Timer: aidTL_perlTime 06.01.2015 15:39:07
2015.01.06 13:05:39 3: [degTL] got no weather info from yahoo. Error code: connect to http://weather.yahooapis.com:80 timed out
2015.01.06 13:05:40 4: [aidTL] sr_astro state=1 light=1 nextEvent=sr_naut 06.01.2015 06:59:11 deg=-18.0°
2015.01.06 13:05:40 4: [aidTL] sr_naut state=2 light=2 nextEvent=sr_civil 06.01.2015 07:38:55 deg=-12.0°
2015.01.06 13:05:40 4: [aidTL] sr_civil state=3 light=3 nextEvent=sr 06.01.2015 08:21:25 deg=-6.0°
2015.01.06 13:05:40 4: [aidTL] sr state=4 light=4 nextEvent=sr_indoor 06.01.2015 08:28:53 deg=+0.0°
2015.01.06 13:05:40 4: [aidTL] sr_weather state=6 light=6 nextEvent=ss_weather 06.01.2015 16:39:07 deg=+0.0°
2015.01.06 13:05:40 4: [aidTL] sr_indoor state=5 light=5 nextEvent=sr_weather 06.01.2015 08:21:25 deg=+1.0°
Überraschend / seltsam hierbei: die "got no weather info from yahoo."-Meldung bezieht sich auf ein anderes Twilight-Objekt, für das nicht verbose=5 gesetzt ist. Das ist im Übrigen die einzige Meldung für dieses zweite Twilight Objekt.
Definition des "at":
Internals:
COMMAND set wz_Rollo_.* on
DEF *{twilight("aidTL","sr_indoor","7:29","9:01")} set wz_Rollo_.* on
NAME wz_Rollo.SR
NR 1370
NTM 07:29:00
PERIODIC yes
RELATIVE no
REP -1
STATE Next: 07:29:00
TIMESPEC {twilight("aidTL","sr_indoor","7:29","9:01")}
TRIGGERTIME 1420612140
TRIGGERTIME_FMT 2015-01-07 07:29:00
TYPE at
Attributes:
alias Sonnenaufgang
disable 0
group RolloAuf,RolloAutomatik
icon weather_sunrise
Wie aus dem Log ersichtlich, ist "Timer: aidTL_sr_indoor 06.01.2015 08:28:53", ich hätte also eine TRIGGERTIME von 8:28:53 erwartet. Stattdessen wird der "min"-Wert verwendet.
Fhem ist auf dem aktuellen Stand (von heute), Twilight ist
# $Id: 59_Twilight.pm 7402 2015-01-01 22:38:18Z dietmar63 $
Dietmar, kannst Du mit dieser Fehlerbeschreibung etwas anfangen?
Peter
Ich denke ja
eingecheckt:
59_Twilight: correction of issues when starting fhem wehn reading weatherdata in nonBlockingmode
hier kannst du nachlesen was passiert ist:
http://forum.fhem.de/index.php?topic=31049.new#new (http://forum.fhem.de/index.php?topic=31049.new#new)
Dietmar,
mit
# $Id: 59_Twilight.pm 7462 2015-01-06 17:13:36Z dietmar63 $
ist der Fehler behoben. Herzlichen Dank,
Peter
Hallo zusammen,
der Fehler scheint wieder da zu sein. Aktuell habe ich das Problem, dass bei jedem Neustart von FHEM der Min-Wert verwendet wird. Ist es möglich dass dieser Fehler wieder "eingebaut" ist? :-)
Ich versuche mal zu ergründen was ich damals gemacht habe.
Ich glaube die Probleme kommen eher daher, dass Yahoo die Wetterdaten nicht zuverlässig liefert
https://forum.fhem.de/index.php/topic,64231.msg569383.html#msg569383
(https://forum.fhem.de/index.php/topic,64231.msg569383.html#msg569383)
Sieh dir diesen thread an. Vermutlich gleiche Ursache
Danke für deine schnelle Antwort und den Tipp. Ich werde mal testen ob es damit zusammenhängt.
Bisher sieht es allerdings so aus als kämen die Wetterdaten zuverlässig. Es ist ja auch so, dass es eigentlich immer gut funktioniert - nur eben nicht wenn es einen Neustart gab oder die Config neu geladen wird. Direkt nach einem Neustart wird z.B. bei Notifys ein "Next: 06:00:00" angezeigt, was wieder die Min-Zeit darstellt.
glaub mir:
es liegt an unzuverlässigen Datenlieferungen von yahoo.