Einfache Script-Beispiele

Zwei Lampen miteinander verknüpfen

Wenn wir das Licht im Esszimmer ein- und ausschalten, soll auch gleich das Licht im Korridor dasselbe tun. 


Das ist ein wirklich simples Skript: Wir setzen eine "subscription" auf die Eigenschaft "on" der Esszimmer-Lampe und reagieren auf Schaltvorgänge, indem wir der Korridorlampe denselben Status zuweisen.

Derartige Verknüpfungen werden so oft benötigt, dass es dafür eine Abkürzung gibt:

on("lightify.0.82EBC90000261884.on","lightify.0.DAF3C90000261884.on")

Dies tut exakt dasselbe: Bei jeder Änderung des Zustandes des ersten State-Objekts, wird das zweite in denselben Zustand versetzt.

Fernsehlicht einschalten, wenn der Fernseher an und die Sonne untergegangen ist.

Wir haben, wie am Anfang dieser Reihe erwähnt, Philips LivingColors-Lampen als Fernsehlichter. Die sollen sich jetzt automatisch einschalten, wenn wir nach Sonnenuntergang fernsehen.


Hier wird eine interessante Möglichkeit des ioBroker Script-Systems genutzt: 'isAstroDay()' liefert true zwischen Sonnenauf- und Untergang und false zwischen Unter- und Aufgang. Damit die Funktion das wissen kann, muss man ihr mitteilen, wo wir uns befinden. Vielleicht haben Sie sich bei der Instanzkonfiguration von 'javascript' schon gefragt, wozu die Angaben von 'latitude' und 'longitude' nötig sind. Genau hierfür. Geben Sie die Zahlen so ein, wie sie etwa google maps liefert, also z.B. 55.1234 und 8.1123.
Also: Wir prüfen alle 10 Minuten, ob die Sonne schon untergegangen ist. Wenn ja, dann prüfen wir, ob der Fernseher eingeschaltet ist. Wenn ja, dann schalten wir die Hue-Lampen ein, falls sie nicht schon an waren. Wenn der Fernseher aus ist, dann schalten wir auch die Hue-Lampen aus.

Wie immer dauert es jeweils einige Zeit, bis das Script mitkriegt, dass der Fernseher ein- oder ausgeschaltet wurde.

Eine etwas elegantere Methode mit Subscriptions statt regelmässiger Abfrage zeige ich in einem späteren Teil.

Hier noch etwas ganz einfaches:

Aussenlicht bei Sonnenuntergang bis 23:30 Uhr einschalten



Ich denke, das ist nun auch ohne weitere Erläuterungen verständlich.


zum ersten Teil - zum vorherigen Teil - zum nächsten Teil

Kommentare

Beliebte Posts aus diesem Blog

von Schedules und Triggern

myStrom WiFi Button an ioBroker anbinden