LoxBerry XL Scripts regelmäßig ausführen

Um dein LoxBerry XL automatisch zu regelmäßigen Intervallen auszuführen, listen wir hier einige Möglichkeiten auf.

Aufruf vom Miniserver aus mittels Bausteinen

Das ist die wahrscheinlich einfachste Variante, ohne viel mit dem Linux-System zu tun zu bekommen.

  • Erstelle, wie beschrieben, einen Virtuellen HTTP-Ausgang und Ausgangsbefehl mit deinem Script.
  • Verwende in der Loxone Config die Bausteine Impuls um, Impulsgeber, Schaltuhr oder die Impulse aus den Zeiten, um deinen Befehl regelmäßig aufzurufen.

Baustein "Impuls um", um einen Befehl zu einer gewissen Zeit abzusetzen.

Baustein "Impulsgeber", um Befehle in definierten Abständen abzusetzen.

Baustein "Schaltuhr", um z.B. einen Zeitplan festzulegen.

Zeiten, um Befehle z.B. zur vollen Stunde, bei Morgendämmerung, um Mitternacht oder jeden Monat ausführen zu lassen. Die Zeit Startimpuls wird ausgelöst, wenn der Miniserver neu startet.


 

Aufruf vom LoxBerry aus mittels Cron

Unter /opt/loxberry/system/cron gibt es vordefinierte Zeitpläne, an denen ein Script ausgeführt werden kann (z.B. cron.05min oder cron.hourly). 

Du kannst dein XL-Script in einen dieser Ordner verlinken (oder auch mehrere), um sie entsprechend dieses Zeitplans auszuführen:

ln -s /opt/loxberry/webfrontend/html/XL/user/de_bundesliga.php /opt/loxberry/system/cron/cron.daily/de_bundesliga

Bedeutung des Befehls:

  • ln -s erzeugt einen symbolischen Link (ein symbolischer Link ist praktisch sowas wie ein Hyperlink an einem Ort auf die Originaldatei an einem anderen Ort)
  • Als erster Pfad kommt der Ort des Original-Scripts, also der Pfad, wo die tatsächliche Datei liegt (im Beispiel /opt/loxberry/webfrontend/html/XL/user/de_bundesliga.php).
  • Als zweiter Pfad der Name des Links (im Beispiel /opt/loxberry/system/cron/cron.daily/de_bundesliga). Dieser Link zeigt auf das zuvor angegebene Original-Script.
  • Wichtig beim Namen des Links: Es darf dabei keine Dateierweiterung enthalten sein (der Link im Cron-Verzeichnis darf also nicht meinscript.php heißen, sondern meinscript).

Um den Link wieder zu entfernen:

unlink /opt/loxberry/system/cron/cron.daily/de_bundesliga

Pass dabei auf, dass du den Link löscht, und nicht dein eigentliches Script!

Danach dem Script und dem Job noch die richtigen Permissions geben, sonst wird es von Cron nicht ausgeführt:

chmod 755 /opt/loxberry/webfrontend/html/XL/user/de_bundesliga.php
chmod 755 /opt/loxberry/system/cron/cron.daily/de_bundesliga