Hallo zusammen !
Nach langem Lesen habe ich für folgendes Problem eine "Lösung" gefunden die ich hier zur Diskussion stellen möchte um vielleicht etwas Besseres oder Effizienteres zu lernen.
Problem: ich möchte meine WZ-Stehlampen um 5:00 einschalten und bei einem Sonnenstand 2,5° über dem Horizont wieder abschalten. Im Winter keine Hexerei und ein Einzeiler, im Juni, wenn die Sonne vor 5:00 aufgeht könnte es ein Problem geben. Nach Notify und anderen Versuchen habe ich nun eine "Lösung" mit "AT" gebastelt
define at_morgen.WZ.StehlampenOnOff at *05:00 a b
Das "a b" ersetze ich dann im DEF so
*05:00:00 {
my $tageslicht = isday("HORIZON=2.5");
my $sunrise = sunrise("HORIZON=2.5");
if ($tageslicht == 0) {
fhem ("set HueBridge_HUEGroup1 rgb 5C461A");
fhem ("set HueBridge_HUEGroup1 on-till $sunrise")
}
}
Ob das wirklich funktioniert werde ich morgen sehen, das ich noch keine Erfahrung mir sunrise habe (bin vor Sonnenaufgang noch nicht aufgestanden und hab probiert ;)). Es wäre mir auch lieber, wenn ich die Variablen $tageslicht und $sunrise nicht verwenden müßte, hab aber keine Lösung gefunden da ich - wenn ich sie direkt einsetze - beim Speichern immer einen Syntaxfehler bekomme.
Freue mich über alle Verbesserungs- und Optimierungsvorschläge
Danke
Josef
Ein einfaches at um 05:00:00 mit
set HueBridge_HUEGroup1 on-till {sunrise("HORIZON=2,5")}
sollte im Normalfall reichen. Wenn um 05:00 der Zeitpunkt sunrise Horizion bereits erreicht ist, wird nicht eingeschaltet. Hier nochmal nachlesen (https://forum.fhem.de/index.php?topic=32964.0) und das Wiki zum Thema Sunrise_EL bemühen.
Allerdings ist HUE bei mir manchmal unwillig, dem Befehl on-till {sunrise_abs(+1600)} zu folgen.
Rückmeldung: hat funktioniert. HORIZON=2.5 ist vllt ein bisschen spät, morgen probiere ich REAL.
@Brice: danke. Hab mir zwar übers WE die Augen wund gelesen, doch lese ich gerne nochmal nach !