Rules in openHAB 2 erstellen

In diesem Beitrag zeige ich Dir, wie Du in openHAB 2 sogenannte “rules” erstellst. Das sind einfache wenn-dann Anfragen, mit denen Du viele Dinge umsetzen kannst.

Ohne “rules” ist ein Smart Home nicht smart. Regeln automatisieren bestimmte Abläufe und erleichtern damit erst den Alltag.

Der grundlegende Aufbau

Als erstes musst Du verstehen, wie die Regeln grundsätzlich aufgebaut sind. Hierzu mal ein kurzes Beispiel:

rule "Name"
when
    //Auslöser
then 
    //Anweisung
end

Am Anfang wird zuerst ein Name für die Regel festgelegt. Dieser sollte natürlich möglichst gut beschreiben, was die Regel macht, da es sonst wirklich, und ich spreche da leider aus Erfahrung ;-), seht schnell unübersichtlich wird.

In dem when-Teil wird der Auslöser für die Regel festgelegt. Das kann z.B. eine bestimmte Zeit oder ein Ereignis sein.

Unter then wird definiert, was passieren soll, wenn die Regel ausgelöst wird. Das kann bspw. eine Schaltung einer Lampe oder eine Nachricht an Dein Telefon via Telegram sein, so wie es in diesem Beitrag beschrieben ist.

Auslöser

Nun mal ein paar häufig genutzte Beispiele für Auslöser:

Hinweis: Fett gedruckte Großbuchstaben musst Du durch Deine Daten ersetzen, also z.B. ITEM durch eg_wz_licht.

NameBeschreibungCodeBeispiel
Befehl erhaltenLöst aus, wenn ein Item einen Befehl erhält.Item ITEM received command COMMANDItem eg_wz_licht received command ON
ÄndernWird ausgelöst, wenn ein Item seinen Wert oder Status zu dem zugeordneten Wert ändert. Wenn es bei jeder Änderung aktiviert werden soll, einfach den "to"-Teil oder "from"-Teil weglassen.Item ITEM changed from STATE to STATEItem eg_anwesenheit changed from ON to OFF
Zeit (Time-Cron)Wenn Du eine Regel zeitgesteuert starten möchtest, kannst Du sogenannte Time-Crons benutzen. Diese kannst Du z.B. auf der Website cronmaker.com generieren.Time cron "CRON"Time cron "0 20 8 ? * MON-DO *"
Channel-TriggerHiermit kannst Du z.B. auf das Astro Binding reagieren, wenn dieses z.B. den Sonnenaufgang meldet.Channel "CHANNEL" triggered EVENTChannel "astro:sun:zuhause:set'event" triggered START

Es gibt noch viele andere Trigger, allerdings findet man diese nur auf der englischen Dokumentation von openHAB.

Aktionen

Nachdem ein Trigger ausgelöst hat, wird der “then”-Teil der Regel ausgeführt. Hier kann man z.B. Nachrichten via Telegram senden, Items schalten oder Informationen abfragen. Es können Schleifen, Variablen und Abfragen benutzt werden.

Häufig verwendet man Befehle, wie z.B. eg_wz_licht.sendCommand(ON) oder lampe.state. Hier alle Befehle aufzulisten wäre unmöglich…schaue also einfach in der offiziellen openHAB Dokumentation auf englisch nach oder schreibe Deinen konkreten Anwendungsfall gerne in die Kommentare und ich werde versuchen, Dir die passende Regel erklären. Wenn Du noch weitere Beispiele für Regeln sehen möchtest, kannst Du sehr gerne z.B. meinen Beitrag zu einer automatischen Steuerung der Rollläden ansehen, in dem ich auch mehrere Regeln dazu erkläre.

Noch Fragen? Dann ab damit in die Kommentare! 😉

Jan

Jan

Ich bin Jan und ich freue mich, dass Du meinen Blog gefunden hast. Ich blogge in meiner Freizeit über Smart Home, 3D Druck und Technik und versuche, Dir mit meinen Beiträgen möglichst gut zu helfen.

Alle Beiträge ansehen von Jan →

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.