Ferien / Feiertage dauerhaft automatisch laden
-
direkt - kein Loxberry notwendig
-
einfache Lösung
-
kostenlos
-
Optional: Feiertage
Inhaltsverzeichnis
Die Lösung ist einfach
Ein kleiner Überblick
Kurz ausgeholt: Der Miniserver ist die Smart Home Zentrale des Loxone Systems. Bisher war es immer sehr mühevoll dem Miniserver die aktuellen Ferien bzw. Feiertage beizubringen. Man müsste jährlich immer wieder die neuen Daten einpflegen, was auf Dauer nicht wirklich smart war. Feiertage konnte man mit bordeigenen Mitteln nachbilden, was aber auch immer bei der Inbetriebnahme einiges an Aufwand bedeutete.
Mit der hier vorgestellten Lösung kommt nun eine dauerhaft automatische Möglichkeit hinzu. Wir nutzten dazu die API (Application Programming Interface) einer Webseite, die uns diese Information kostenlos zur Verfügung stellt.
Wie gehen Sie vor
Sie erstellen einen virtuellen Eingang, der mit der API Schnittstelle verbunden ist. Die API liefert uns immer die nächsten oder gerade aktuellen Ferien zurück. Mittels Befehlserkennung können Sie daraus das Startdatum extrahieren und dieses mit dem aktuellen Datum vergleichen und entsprechend die Betriebsart für Ferien setzten. Bei den Feiertagen ist das Vorgehen analog dazu, allerdings wird an einem Feiertag (Sonntag zählt da auch dazu), nicht das Datum gesendet, sondern eine „0“.
Voraussetzungen, damit das für Sie funktioniert
- Sie brauchen einen Miniserver Gen2 (Gen1 geht leider nicht)
- Sie brauchen unsere Vorlage
Loxone Config im Detail
Hier nicht erschrecken, es kommt jetzt eine Schritt für Schritt Anleitung, die etwas umfangreich ausschaut, aber eigentlich sehr einfach ist.
Wichtig ist, dass Sie hier ganz genau hinschauen. Es muss alles exakt so ausschauen. Kein Zeichen zu viel und kein Zeichen zu wenig.
Letztendlich geht es um folgende Schritte:
- Virtuelle Eingänge anlegen
- Virtuelle HTTP Eingangsbefehle hinzufügen
- Config
Virtuelle Eingänge anlegen
Erstellen Sie zwei neue Virtuelle HTTP Eingänge und fügen als Adresse folgende Server ein.
für Ferien: https://wannsindferien.celll.net/?api=1&bl=by
für Feiertage: https://istheutefeiertag.celll.net/?api=1&bl=by
Achten Sie zudem darauf, dass der Abfragezyklus nicht zu oft ist, ich habe hier 600s gewählt. Mit der Ergänzung bl=by wurde als Bundesland Bayern vorgewählt.
Weitere Infos bezüglich Bundesländer siehe hier.
Virtuelle HTTP Eingangsbefehle hinzufügen
Fügen Sie nun entsprechend „Virtuelle HTTP Eingang Befehle“ hinzu. Wir müssen dort jeweils die richtige Befehlserkennung eintragen.
Bei Feiertag gibt es nur eine Befehlserkennung:
\v
Bei den Ferien brauchen wir 3 Stück.
Ferienjahr
\i.\i\i.\i\v
Ferienmonat
\i.\i\v
Ferientag
\v
Configübersicht
Notwendige Bausteine
Die Befehlserkennung interpretiert, wie man hier im Beispiel sieht, Teile des Datums als Gleitkommazahl.
Beim Feiertag ist es das Datum 1.5.2023, woraus 1,5 wird.
Wenn ein tatsächlicher Feiertag ist (oder auch Sonntag), dann kommt 0 (Null) zurück, was wir in dem Statusbaustein abfragen und an den Betriebsmodus weiterreichen.
Bei den Ferien sind es die Pfingstferien, die am 30.5.2023 beginnen und am 9.6.2023 enden und folgende Gleitkommazahlen erzeugt werden.
Ferientag = 30,5
Ferienmonat = 5,2
Ferienjahr=2023,9
Damit wir die Nachkommastellen eliminieren können, nehmen wir den Baustein Ganzzahl. Die Ergebnisse werden dann mittels „Größer“ für Monat und Jahr und „Größer oder gleich“ für Tag zum Betriebsmodus „Freier Tag / Schulferien“ zusammengeführt.