Im ioBroker Skripte erstellen ist nach der Installation des Adapters „Script Engine“ möglich. Der Adapter ermöglicht es auf unterschiedliche Weise, Automatismen bzw. Logiken für deine Hausautomation zu erstellen. Es stehen mehrere Möglichkeiten (Editoren) der Programmierung zur Auswahl.
Für alle Editoren gilt das gleiche Prinzip: Benötigt wird ein Trigger – also eine Aktion – die den weiteren Programmablauf ausführt. Trigger können z.B. sein:
- Uhrzeiten (Zeitpläne, Zeitintervalle oder Astrozeiten…)
- Änderungen von Zuständen (Sensoren wie Bewegungsmelder etc.)
Im Folgenden zeige ich euch, wie die Editoren im ioBroker aussehen. Jeder Editor kann im Webbrowser bedient werden. In jedem Editor erstellen wir uns ein einfaches Programmier-Beispiel, welches die Funktionsweisen erläutert.
Nachdem der „Script Engine“- Adapter installiertist und die Instanz gestartet sowie ausgeführt
(grüner Punkt) wird, gibt es im ioBroker Navigationsmenü auf der linken Seite den Eintrag „Skripte„.
Ist der Navigationspunkt nicht aufgeführt, muss dieser erst über das nach unten zeigende Dreieck oben links in der Ecke, aktiviert werden.
Table of Contents
Rules – für Anfänger
Mit Rules kannst du einfache WENN-DANN-SONST Regeln erstellen. Dazu wird eine visuelle Oberfläche zur Verfügung gestellt mit der du einfach deine Regeln und Bedingungen mit Mausklicks auswählen bzw. erstellen kannst. Das Bild zeigt dir in der ersten Spalte den Trigger – in der zweiten Spalte die Bedingung und in der dritten Spalte die Aktion die ausgeführt werden soll.
Das Beispiel:
Ein Bewegungsmelder schickt bei Bewegungserkennung eine Telegram-Nachricht ans Smartphone.
Falls = Trigger Datenpunkt überwachen und bei Änderung weitermachen
Und = Abfrage, ob der Trigger-Datenpunkt gleich wahr ist
Dann = Sende Telegram-Nachricht mit Text „Bewegung erkannt“

Blockly – für Anfänger und Fortgeschrittene
Blockly ist ebenfalls ein visueller Code-Editor der für Anfänger und Fortgeschrittene geeignet ist. Hier werden Puzzleteile als Codeblöcke benutzt und können ganz einfach zusammengefügt bzw. verschachtelt werden. Der Funktionsumfang ist eigentlich ausreichend, um vieles in der Hausautomation abzudecken. Für kurze Programme eignet sich die Übersicht, Veranschaulichung und das Verständnis sehr gut. Bei längeren Programmabläufen wird es allerdings schnell unübersichtlich. Allerdings empfehle ich Blockly jedem Einsteiger! Ich selber nutze Blockly sehr gerne – anfangs auch ausschließlich.
Das Beispiel:
Analog zum Rules-Editor – der Trigger überwacht den Datenpunkt „presence“ vom Bewegungsmelder, WENN der Datenpunkt „true“ ist, DANN wird eine Nachricht per Telegram gesendet.

JavaScript – für Fortgeschrittene
ioBroker stellt ebenfalls einen Editor für reines Javascript zur Verfügung. Jeder der über JavaSkript-Kenntnisse verfügt kann darüber seine Programmier-Logiken einbinden sowie auf viele zusätzliche Module zugreifen. Die Zusatzmodule werden über NPM bereitgestellt. Diese Module müssen lediglich in den Adaptereinstellungen hinterlegt werden. ioBroker lädt diese automatisch im Hintergrund herunter und stellt sie bereit.
Hier nun das Beispiel als Javasript-Code:
on({id: 'deconz.0.Sensors.35.presence', change: "ne"}, async function (obj) {
var value = obj.state.val;
var oldValue = obj.oldState.val;
sendTo("telegram", "send", {
text: 'Ich bin ein Test'
});
});
TypeSkript (für Fortgeschrittene) folgt in Kürze