ioBroker: Neue Entwicklungen im April 2024

ioBroker: Neue Entwicklungen im April 2024

26. April 2024 11 Von Moritz Heusinger

Hallo zusammen,

nach langer Pause auf diesem Blog, habe ich mich entschlossen wieder etwas regelmäßiger Content zu veröffentlichen. Speziell möchte ich gerne jeden letzten Freitag im Monat einen Blogbeitrag über die aktuellen Entwicklungen im ioBroker Umfeld schreiben. Da ich vermutlich einer der aktivsten Entwickler im ioBroker Umfeld bin und auch häufig Einblicke bekomme welche nicht auf allen Kommunikationskanälen nach außen kommuniziert werden - ist es mir hoffentlich möglich sowohl für ioBroker Nutzer als auch Entwickler die eine oder andere interessante Neuigkeit jeden Monat vorstellen zu können.

Disclaimer

An dieser Stelle ein kleiner Disclaimer, dass meistens noch deutlich mehr passiert ist als die Dinge die ich hier aufführe. Aufgrund der Masse an Entwicklern entstehen ständig neue Adapter und Adapter werden weiterentwickelt, was ich nicht immer mitbekomme oder ich auch aufgrund der Masse filtern möchte. Für solche Neuerungen möchte ich gerne auch auf den ioBroker-internen Blog auf verweisen.

Überblick

ioBroker Visu App mit Geofence

Die ioBroker Visu App hat im April ein großes Update gemacht. So ist es nun möglich eine Anwesenheitserkennung direkt über die App vorzunehmen. Hierfür wird lediglich eine ioBroker Assistentenlizenz benötigt, welche nach meiner Einschätzung die meisten Nutzer für Alexa/Google Home etc. bereits besitzen, die 20 kostenlosen Anfragen ohne Bezahllizenz auch mit dem neuen Feature genutzt werden um zu testen ob es für die Einsatzzwecke geeignet ist.

In der App können beliebig viele Geofences erstellt werden - um z. B. zu überwachen ob man daheim ist oder evtl. an einem anderen Standort von Interesse. So kann die Tür automatisch verriegelt werden oder vergessene Lichter automatisch ausgeschaltet werden wenn alle Bewohner das Haus verlassen haben.

Das Feature wird derzeit sehr aktiv getestet und die letzten Fehler ausgebügelt. Weitere Informationen findet ihr im Forumsthread.

Einen kleinen Ausblick bzgl. der App, da nun die Datenübertragung im Hintergrund und über die iot-Cloud ermöglicht wird, ist es zukünftig auch geplant z. B. die Übertragung des Batteriestands im Hintergrund zu ermöglichen um euch noch mehr Freiraum bei euren Automatisierungen zu geben. Auch wurde beim App-Umbau ein Menü eingeführt wo ihr nun zwischen den Projekten und Geofence Einstellungen wählen könnt, langfristig werden hier mehr Menüpunkte dazu kommen und euch die App z. B. bei der Verbindung von Matter Geräten mit eurem ioBroker unterstützen.

Admin Messages & Onboarding Menu

Es ist euch vielleicht schon aufgefallen, dass der Admin Adapter in den neueren Versionen ein neues Symbol für Benachrichtigungen anzeigt.

Bisher hat der Admin nur Systembenachrichtigungen angezeigt, welche sich auf einen speziellen Host beziehen und diese entsprechend im Tab Hosts verfügbar gemacht. Hier liegt der Fokus auf spezifischen Problemen eines Hosts, z. B. zu wenig Arbeitsspeicher verfügbar, Probleme mit der Datenbank und weitere Probleme aus dieser Kategorie. Der neue zentrale Ort für Benachrichtigungen hingegen ist für alle weiteren Informationen gedacht. Zum Beispiel sendet euch der Awtrix-Light Adapter eine Benachrichtigung wenn es ein Firmware Update für euer Gerät gibt.

Auch der Admin Adapter selbst benachrichtigt euch wenn es neue Adapter Updates gibt. Jetzt denkt ihr vielleicht - was soll denn das, das sehe ich doch sowieso wenn ich den Admin offen habe!

Hier möchte ich gerne nochmal darauf hinweisen, dass Notifications ein zentraler Bestandteil des ioBroker Administrationserlebnisses und auch Nutzererlebnisses sein sollen. Ihr könnt euch diese nicht nur im Admin anzeigen lassen sondern auch mit unterschiedlichsten Kommunikationsadaptern wie z. B. Telegram oder E-Mail zusenden lassen. Hierzu müsst ihr ledliglich den Notification Manager Adapter installieren und könnt diesen konfigurieren.

Für Entwickler ist es sicher interessant wie man solche Notificaitons selbst generieren kann. Hier möchte ich gerne auf die folgenden Ressourcen hinweisen - ein mal die Dokumentation des Features und als Beispiel den Awtrix Light Adapter mit der Definition und der Erstellung einer Benachrichtigung.

Eine weitere Neuerung im Admin betrifft euch nur bei einer Ersteinrichtung eines ioBrokers. In der Vergangenheit hatten neue Nutzer häufig den Eindruck komplett alleine gelassen zu werden nach dem der Wizard inklusive Discovery durch war. Der neue Tab soll hier nun auch Adapter anbieten, welche nichts direkt mit Geräten zu tun haben die durch Discovery gefunden werden können. Hier gibt es nun im Wizard einen zusätzlichen Punkt Adapter, welche genau solche Adapter anbietet und diese in ihrer Nutzung beschreibt.

Um die Nutzer nicht zu fluten mit einer Gesamtauswahl an Adaptern wird sich hier auf Adapter fokussiert, die auf sehr vielen Systemen zu finden sind und hardwareunabhängig beötigt werden.
In Zukunft soll der Onboarding Prozess durch den Admin-Adapter weiter vereinfacht werden und auch erste Schritte zur Erstellung von einfachen Logiken aufgezeigt werden.

Neue Blockly Blöcke

In diesem Thema stecke ich selbst nicht so drin, jedoch weiß ich, dass für die meisten ioBroker Nutzer Blockly die Programmiersprache zur Realisierung ihrer Lösungen ist.
Daher finde ich es schön, dass dank Matthias Kleine viele neue Blockly Bausteine ihren Weg in den javascript Adapter gefunden haben. Diese ermöglichen nun die bessere Interaktion mit Objekten, die Erstellung von Http-Requets und Möglichkeiten zum Lesen und Schreiben von Dateien.

Nähere Informationen findet ihr hier und hier.

Community Events

Wie einige von euch evtl. bereits mit bekommen haben hat letztes Jahr seit langer Zeit eine Vor-Ort Veranstaltung mit ioBroker in Solingen stattgefunden.

Auch dieses Jahr wird ioBroker wieder auf dem Smart Living Forum in Solingen vertreten sein, welches voraussichtlich am 28.09.2024 stattfinden wird. Letztes Jahr haben bereits einige die Chance ergriffen ein Teil des Teams hinter ioBroker zu treffen und sich auszutauschen. Ebenso wird es wieder spannende Vorträge rund um das Thema Smart Home und Smart City geben. Die Veranstaltung ist kostenfrei.

Zusätzlich wird ioBroker selbst dieses Jahr ein Event zum 10-jährigen Bestehen von ioBroker ebenfalls in Solingen organisieren. Dieses Treffen wird am 9.11.2024 stattfinden und wird einen ganzen Tag lang spannende Vorträge rund um das Thema Smart Home mit ioBroker enthalten. Hier werdet ihr zeitnah Tickets erwerben können, welche euch neben dem Eintritt auch Vollverpflegung mit Essen und Getränken während der Veranstaltung sichern. Nähere Informationen folgen hoffentlich im nächsten Monat.

Version 6 des js-controllers in aktiver Entwicklung

Neben der App habe ich selbst diesen Monat einige Stunden in den js-controller gesteckt, welcher sich dadurch bald Version 6 annähert. Aus User-Sicht wird der Controller wie immer sehr auf Stabilität fokussiert sein, was auch dadurch ermöglicht ist, dass 90 % der über 160 JavaScript Dateien nun in TypeScript geschrieben sind.

Zusätzlich wird der neue js-controller sich mehr um die Systemverwaltung kümmern. So erzeugt er unter Linux Notifications wenn es neue Betriebssytem Updates gibt. Ebenfalls wurde eine Schnittstelle geschaffen über die Betriebssytem Updates durchgeführt werden können. So kann ein Admin Adapter später diese Schnittstelle nutzen und z. B. Updates von Node.JS in der Oberfläche anzeigen und durchführen. Auch wenn nach einem Update ein Betriebssytem-Neustart nötig ist, wird euch der neue Controller darüber benachrichtigen.

Zusätzlich kommt ein Feature dass sich viele Nutzer seit längerem erhoffen. Automatische Adapter Updates, so kannst du in Zukunft definieren ob du z. B. automatisch auf neue Versionen von Adaptern aktualisieren möchtest. Dies lässt sich per Adapter konfigurieren und es kann entschieden werden welche Art von Updates automatisch durchgeführt werden (nur Fixes, Fixes + Features, auch Breaking Changes). Während man hier die freie Wahl hat wird im Admin deutlich gewarnt werden, wenn man auch Breaking Changes zulässt und auch wenn man das Feature auf dem Beta Channel nutzt. Dies folgt Getreu dem ioBroker Motto der maximalen Flexibilität, von der man profitieren kann wenn man weiß was man tut.

Wir sind immer sehr bestrebt mit der Zeit zu gehen und daher hat sich auch technsich neben der weieter fortgeschrittenen TypeScript Migration einiges geändert. Was hier für Entwickler interessant ist, ist dass der neue js-controller als ESM-Modul laufen wird. Dies bedeutet, dass auch Adapter in Zukunft als ESM-Module laufen können. Dies ist zwar technisch auch schon jetzt möglich, da diese als eigener Prozess laufen. Im Falle der Nutzung des Compact Modes hat dies allerdings zu Problemen geführt, was nun nicht mehr der Fall ist. Dies bedeutet, in Zukunft könnt ihr ESM Features nutzen wie Top-level await, müsst euch keine Sorgen mehr machen um ESM-only Dependencies und könnt alle anderen technischen Neuerungen genießen.

Und jeder der z. B. externe Node Module im javascript Adapter eingebunden hat, kennt aktuell das Problem - npm löscht diese bei jedem Adapter Update weg und es muss der javascript Adapter neugestartet werden. Mit Controller v6 können Adapter nun die API des Controllers nutzen und damit Node Module verwalten. Wir haben uns hier eine Strategie überlegt, wie wir das Problem umgehen können und zusätzlich bietet es den Vorteil, dass z. B. zwei javascript Instanzen das gleiche Paket als zusätzliches Node Modul in anderen Versionen angeben können. Dies war bislang nicht möglich.

Natürlich kommen noch viele weitere Features und Bug-Fixes. Seid gespannt!

Schlusswort

Wenn euch der Artikel gefallen hat freue ich mich über einen Kommentar.

Falls ihr das ioBroker Projekt unterstützen möchtet, denkt gerne darüber nach eine Cloud Lizenz zu erwerben - neben der Unterstützung des Projektes genießt ihr dadurch viele Vorteile wie eine unlimitierte Anzahl an Alexa & Google Home Anfragen, die Möglichkeit per Fernzugriff sicher auf euer System zuzugreifen, die Möglichkeit eure Anwesenheitssteuerung einfach mittels der ioBroker Visu App zu realisieren und zukünftig weitere Vorteile. Die Einnahmen durch Lizenzeverkäufe fließen maßgeblich zurück in das Projekt und fördern die aktive Weiterentwicklung und Wartung des ioBroker Ökosytems.

Ebenso könnt ihr diesen Blog und meine persönliche Arbeit gerne unterstützen indem ihr über meinen Amazon Affiliate Link einkauft oder mir eine Spende zukommen lasst.

Bis zum nächsten mal

Moritz