sunset/isday - und dazwischen?

Begonnen von pcbastler, 18 Oktober 2017, 20:29:35

Vorheriges Thema - Nächstes Thema

pcbastler

Hallo zusammen,
irgendwie sehe ich den Wald vor lauter Bäumen nicht :(
ich hab ein paar Randbedingungen für die Ambientebeleuchtung zum Fernsehen, aber in bestimmten Situationen geht das schief.
Als erstes ein at
*{sunset("HORIZON=2.0",0,"17:00","22:00")} IF ([SonyTV] eq "on") (set WZ_Licht_Sw on)
das schaltet bei laufendem TV und zunehmender Dunkelheit das Licht an.
Dann die Aktion beim Einschalten des TV ein notify
SonyTV:on.* IF (!isday()) (set WZ_Licht_Sw on)
Soweit alles ok, aber:
Beim Einschalten des TV zwischen dem sunset-Termin und dem von isday berechnetem Sonnenuntergang passiert natürlich nichts. ich habe jetzt hier im Forum den Hinweis auf localtime gefunden und glaube eine Änderung des notify in der Art IF(localtime> sunset ("HORIZON=2.0")) sollte das Problem beseitigen. Leider bin ich in der Perl-Syntax und den Eigenheiten der FHEM-Funktionen nicht wirklich fit :(
Kann mir hier jemand schnell auf die Sprünge helfen?

vielen Dank
Frank

betateilchen

#1
Zitat von: pcbastler am 18 Oktober 2017, 20:29:35
zwischen dem sunset-Termin und dem von isday berechnetem Sonnenuntergang

wieso sind das bei Dir eigentlich zwei unterschiedliche Zeitpunkte?


isday("HORIZON=2.0")


Zitat von: commandref
Optionally, for all functions you can set first argument which defines a horizon value

Doku lesen hilft öfters als man glaubt ;)
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

pcbastler

Gute Frage, woher bezieht isday den Zeitpunkt? global latitude ist korrekt gesetzt. Ich habe dann mit dem HORIZON-Parameter etwas experimentiert bis die "wahrgenommene" Dämmerung zum Licht anschalten motiviert.

betateilchen

Zitat von: pcbastler am 18 Oktober 2017, 20:49:22
Gute Frage, woher bezieht isday den Zeitpunkt?

aus der gleichen Berechnung wie auch sunset().
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

pcbastler

Zitat von: betateilchen am 18 Oktober 2017, 20:44:50

isday("HORIZON=2.0")


Doku lesen hilft öfters als man glaubt ;)

Da war wohl gerade ein Schmutzfleck auf der Brille ;)
Danke!