FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: xray am 13 August 2023, 14:28:43

Titel: [gelöst] Zufälligkeit bei sunrise_abs/sunset_abs bei eingeschränkten Zeiten erzeugen
Beitrag von: xray am 13 August 2023, 14:28:43
Hallo zusammen,

ich würde gerne meine Rolläden ein wenig zufälliger steuern, was ja generell kein großes Problem darstellt:
{sunrise_abs("REAL",int(rand(18)))}
Nunmehr würde ich gerne die Schaltung z.B. am Wochenende gerne ein wenig einschränken, so dass die Rolläden nicht vor 8:30 Uhr und spätestens um 09:30 Uhr hochfahren - z.B. mittels
{sunrise_abs("REAL",int(rand(18)),"08:30","09:30")}
Ist der berechnete Sonnenaufgang aber vor 08:30 Uhr, dann fahren alle Rolläden pünktlich um 08:30 Uhr nach oben.
Vermutlich berechnet {sunrise_abs("REAL")} im Sommer z.B. 06:30 Uhr und würde dann laut voherigem Code int(rand(18)) addieren. Damit ist man aber ja immer noch weit vor 08:30 Uhr.

Kennt jemand eine Möglichkeit, die zufällige Zahl auf den Output von {sunrise_abs("REAL","08:30","09:30")} im Nachgang zu addieren? Das hätte zumindest zur Folge, dass nicht alle Rollläden zur gleichen Sekunde geschaltet werden.

Viele Grüße

Marc
Titel: Aw: Zufälligkeit bei sunrise_abs/sunset_abs bei eingeschränkten Zeiten erzeugen
Beitrag von: Damian am 13 August 2023, 19:35:11
siehe: https://fhem.de/commandref_DE.html#DOIF_Zeitsteuerung_mit_Zeitberechnung
Titel: Aw: Zufälligkeit bei sunrise_abs/sunset_abs bei eingeschränkten Zeiten erzeugen
Beitrag von: xray am 13 August 2023, 20:54:03
Zitat von: Damian am 13 August 2023, 19:35:11siehe: https://fhem.de/commandref_DE.html#DOIF_Zeitsteuerung_mit_Zeitberechnung

Besten Dank! Ich hatte zuvor in der Commandref nachgesehen und auch den zitierten Eintrag gesehen.

Allerdings bekomme ich bei
{[({sunset()}+900+int(rand(600)))]}den Output
ARRAY(0x6a160e8)
bzw. bei
{({sunset()}+900+int(rand(600)))}den Output
103049136
Auf mein Beispiel oben angewendet müsste ich ja eigentlich
{{sunset_abs("REAL","18:30","21:30")}+int(rand(60))}nehmen können. Das liefert mir random Zahlen bis 60 zurück.
Titel: Aw: Zufälligkeit bei sunrise_abs/sunset_abs bei eingeschränkten Zeiten erzeugen
Beitrag von: xray am 13 August 2023, 21:24:54
Hab es mittels
*{time_random_offset(sunrise_abs(0,"08:30","09:30"),150)}gelöst.

Funktion hier gefunden: https://carsten.familie-schumann.info/blog/2015/01/fhem-zufaellige-zeit-offsets/

Grüße

Marc