AT an einem bestimmten Wochentag ausführen: Unterschied zwischen den Versionen

Aus FHEMWiki
K (Minuten dem Beispiel angepasst)
K (Wikifiziert)
Zeile 1: Zeile 1:
'''AT'''
'''[[at]]'''
<ins>Zielvorgabe:</ins>
<ins>Zielvorgabe:</ins>


An jedem Mittwoch um 21:00 Uhr soll ein Schaltaktor (hier das FHEM-Gerät "Signallampe") einen Verbraucher ein- und 5 Minuten später wieder ausschalten.
An jedem Mittwoch um 21:00 Uhr soll ein Schaltaktor (hier das FHEM-Gerät "Signallampe") einen Verbraucher ein- und fünf Minuten später wieder ausschalten.


'''Vorbemerkung zu den Wochentagen:''' Wochenbeginn ist in Perl der Sonntag, welcher mit 0 definiert ist, also ist 3 = Mittwoch, 4 = Donnerstag usw.
'''Vorbemerkung zu den Wochentagen:''' Wochenbeginn ist in Perl der Sonntag, welcher mit 0 definiert ist, also ist 3 = Mittwoch, 4 = Donnerstag usw.


Der Befehl für die ''fhem.cfg'' lautet dazu wie folgt:
Der Befehl für die [[Konfiguration]] dazu lautet (als Einzeiler, kein Zeilenumbruch) wie folgt:
 
Einzeiler (kein expliziter Zeilenumbruch):


:<code><nowiki>define Licht4An at *21:00:00 { if ($wday == 3) { fhem (&quot;set Signallampe on&quot;);; fhem (&quot;define Licht4Aus at +00:05:00 set Signallampe off &quot;) } }</nowiki></code>
:<code><nowiki>define Licht4An at *21:00:00 { if ($wday == 3) { fhem (&quot;set Signallampe on&quot;);; fhem (&quot;define Licht4Aus at +00:05:00 set Signallampe off &quot;) } }</nowiki></code>


Mehrzeiler:
Mehrzeiler:
  <nowiki>define Licht4An at *21:00:00 {\
  <nowiki>define Licht4An at *21:00:00 {\
  if ($wday == 3) {\
  if ($wday == 3) {\

Version vom 23. Mai 2014, 12:13 Uhr

at Zielvorgabe:

An jedem Mittwoch um 21:00 Uhr soll ein Schaltaktor (hier das FHEM-Gerät "Signallampe") einen Verbraucher ein- und fünf Minuten später wieder ausschalten.

Vorbemerkung zu den Wochentagen: Wochenbeginn ist in Perl der Sonntag, welcher mit 0 definiert ist, also ist 3 = Mittwoch, 4 = Donnerstag usw.

Der Befehl für die Konfiguration dazu lautet (als Einzeiler, kein Zeilenumbruch) wie folgt:

define Licht4An at *21:00:00 { if ($wday == 3) { fhem ("set Signallampe on");; fhem ("define Licht4Aus at +00:05:00 set Signallampe off ") } }

Mehrzeiler:

define Licht4An at *21:00:00 {\
 if ($wday == 3) {\
  fhem ("set Signallampe on");;\
  fhem ("define Licht4Aus at +00:05:00 set Signallampe off ")\
 }\
}

Im Detail:

  • define Licht4An => lege ein neues Objekt Licht4An und ...
  • at *21:00:00 => ... prüfe immer um 21:00 Uhr ...
  • if ($wday == 3) => ... ob der 3. Wochentag ist, wenn ja dann ...
  • fhem ("set Signallampe on");; => ... soll FHEM die Signallampe einschalten und ...
  • fhem ("define Licht4Aus => noch ein Objekt Licht4Aus anlegen ...
  • at +00:05:00 => ... welches in 5 Minuten ...
  • set Signallampe off") => ... die Signallampe wieder ausschaltet.

Das Objekt Licht4Aus wird in der FHEM-Weboberfläche nur in den knapp 5 Minuten sichtbar, wo die Signallampe eingeschaltet ist, also bitte nicht wundern, dass nur Licht4An in der Übersicht auftaucht.