FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: DeeSPe am 22 August 2016, 13:42:17

Titel: [gelöst] Verschiebung von stündlichem at (zur vollen Stunde) nach FHEM Neustart
Beitrag von: DeeSPe am 22 August 2016, 13:42:17
Hallo,

ich habe ein at definiert welches sich stündlich zur vollen Stunde wiederholen soll (schaltet meinen HouseMode abhängig von der Stunde):
define at_hourly at +*01:00:00 {meinFunktion()}

Mit einem weiteren at setzte ich das dann genau auf die volle Stunde:
define at_hourly_set at *08:00:00 modify at_hourly +*01:00:00; set at_hourly execNow

Nun ist aber das Problem dass bei jedem FHEM Neustart das at mit "+*01:00:00" neu definiert wird ab dem Moment wo FHEM startet.
Also Neustart um 7:50, dann steht die Ausführung des stündlichen at auf 8:50.

Gern würde ich mir das zweite at (welches das erste auf die volle Stunde setzt) sparen wollen.
Gibt es eine Möglichkeit so ein stündlich wiederholendes at genau auf die volle Stunde zu legen ohne dass es sich durch Neustart verschiebt? Ich möchte ungern für jede Stunde in der sich der HouseMode ändern könnte ein eigenes at schreiben, möchte aber gerne den Funktionsaufruf immer genau zur vollen Stunde.

Danke.

Gruß
Dan
Titel: Antw:Verschiebung von stündlichem at (zur vollen Stunde) nach FHEM Neustart
Beitrag von: kumue am 22 August 2016, 13:48:47
ist das nicht was für alignTime ?

commandref für at

Zitat
alignTime
Nur für relative Definitionen: Stellt den Zeitpunkt der Ausführung des Befehls so, dass er auch zur alignTime ausgeführt wird. Dieses Argument ist ein timespec. Siehe oben fü die Definition
Beispiel:

    # Stelle sicher das es gongt wenn eine neue Stunde beginnt.
    define at2 at +*01:00 set Chime on-for-timer 1
    attr at2 alignTime 00:00
Titel: Antw:Verschiebung von stündlichem at (zur vollen Stunde) nach FHEM Neustart
Beitrag von: DeeSPe am 22 August 2016, 13:50:12
Zitat von: kumue am 22 August 2016, 13:48:47
ist das nicht was für alignTime ?

commandref für at


Hatte es gerade selber gefunden!
Vielleicht hätte ich in der Commandref doch bei at bis zum Ende lesen sollen.

Das Zauberwort heißt: attr at_hourly alignTime 00:00

Gruß
Dan
Titel: Antw:Verschiebung von stündlichem at (zur vollen Stunde) nach FHEM Neustart
Beitrag von: Icinger am 22 August 2016, 13:51:10
Dafür gibts doch im at sowieso das Attribut alignTime:

Zitat
alignTime
Nur für relative Definitionen: Stellt den Zeitpunkt der Ausführung des Befehls so, dass er auch zur alignTime ausgeführt wird. Dieses Argument ist ein timespec. Siehe oben fü die Definition
Beispiel:

    # Stelle sicher das es gongt wenn eine neue Stunde beginnt.
    define at2 at +*01:00 set Chime on-for-timer 1
    attr at2 alignTime 00:00

lg, Stefan
Titel: Antw:[gelöst] Verschiebung von stündlichem at (zur vollen Stunde) nach FHEM Neustart
Beitrag von: DeeSPe am 22 August 2016, 13:53:28
Vielen Dank für Eure Hinweise.
War echt zu blöd in der commandref zum at bis zum Ende zu lesen.

Gruß
Dan