AT-Kommando nur alle x Tage, oder an jedem 1. Wochentag, 1. Monatstag...

Begonnen von wowogiengen, 03 Februar 2022, 19:03:00

Vorheriges Thema - Nächstes Thema

wowogiengen

Hallo,
wie kann ich es anstellen, das man ein at-device einrichtet, welches nur

  • einmal in der Woche
  • einmal im Monat
  • einmal im Jahr
[li]
[/li][/list]
ausgelöst wird?
Man könnter zwar auch das Kommando täglich ausführen und dann innerhalb des Kommandos abbrechen, wenn der Tag nicht passend ist...
aber das geht doch eleganter?


viele Grüße
Wolfgang

betateilchen

Indem man mit datespec arbeitet

<datespec> is either ISO8601 (YYYY-MM-DDTHH:MM:SS) or number of seconds since 1970 or {perlfunc()}

und dann im Ausführungsteil den nächsten Ausführungszeitpunkt berechnet, mit dem man dann wieder ein at anlegt.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

rudolfkoenig

Ich machs unelegant:
{ fhem "set lampe on" if($mday==3 && $month==2) }

https://fhem.de/commandref_modular.html#perl:
ZitatTo make date and time handling easier, the variables $sec, $min, $hour, $mday, $month, $year, $wday, $yday, $isdst are available in the perl oneliners

betateilchen

-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

Frank_Huber

Man kann das auch ganz unkompliziert mit DOIF lösen.
Wochentagssteuerung, ymd$, md$, alles da...

betateilchen

Zitat von: Frank_Huber am 03 Februar 2022, 20:43:11
Man kann das auch ganz unkompliziert mit %$§!& lösen.

Es war aber nach at gefragt, wo das genau so einfach geht.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

Frank_Huber


Benni

Zitat von: Frank_Huber am 03 Februar 2022, 20:50:02
Viele Wege führen nach Rom...

[Ironie]
Stimmt! Man könnte auch einen Cronjob einrichten, der dann in FHEM einen dummy toggelt auf den dann wiederum ein notify triggert.... das funktioniert bei Bedarf sogar remote!
[/Ironie]

... so viele Möglichkeiten! ;)

Dennoch war explizit nach at gefragt!

gb#




wowogiengen

Oh weh...

was hab ich hier losgetreten...
Ich denke betateilchens Antwort gefällt mir noch am Besten...
Wenn ich im at dann das neue at definiere, kann ich den alten Namen weiter verwenden, oder gibt das Ärger?

Ich hab übrigens keine Benachrichtigung bei neuen Antworten bekommen, obwohl ich das (nachträglich?) noch eingestellt hatte...

Viele Grüße
Wolfgang

betateilchen

Zitat von: wowogiengen am 04 Februar 2022, 19:06:41
Wenn ich im at dann das neue at definiere, kann ich den alten Namen weiter verwenden, oder gibt das Ärger?

Das kannst Du problemlos tun, da es sich jeweils um ein einmaliges at handelt.
Du musst nur daran denken, das neue device persistent zu machen (Konfiguration speichern)
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

Frank_Huber

Zitat von: wowogiengen am 04 Februar 2022, 19:06:41
Oh weh...
was hab ich hier losgetreten...
Kein Problem Wolfgang,
Mit der Reaktion hatte ich gerechnet. Man weiß ja irgendwann wer wie tickt. 😉
Ich wollte es dennoch erwähnen da es damit auch sehr einfach und komfortabel zu lösen ist.

Grüße
Frank