đ Alias-Datenpunkte in ioBroker
Alias-Datenpunkte sind eine native Funktion von ioBroker und bilden eine Abstraktionsschicht zwischen Skripten bzw. Visualisierungen und den tatsÀchlichen GerÀte-Datenpunkten.
Vorwort:
Aliase sind eine Grundfunktion von ioBroker â dafĂŒr braucht man keinen Adapter.Es gibt auch die Adapter ioBroker.devices und ioBroker.alias-manager, die beide das interne Alias-System von ioBroker nutzen.
ioBroker.devices kann aus vorhandenen Datenpunkten anderer Adapter (z.B. Z-Wave, Zigbee usw.) virtuelle GerĂ€te erstellen und diese ĂŒber Aliase abstrahieren. Dabei werden passende GerĂ€tetypen anhand der vorhandenen Rollen und Strukturen vorgeschlagen.
ioBroker.alias-manager dient dagegen hauptsÀchlich dazu, Aliase komfortabel zu erstellen und zu verwalten.
Ich halte es lieber einfach und nutze nur das interne Alias-System von ioBroker, um die Alias-Datenpunkte anzulegen, die ich wirklich brauche. Bei sehr vielen Aliasen oder wenn man GerÀte stÀrker abstrahieren möchte, kann ioBroker.devices aber interessant sein.
Meine Skripte und Visualisierungen (VIS-2) greifen nur auf den Alias zu. Der dahinterliegende echte Datenpunkt kann geĂ€ndert werden, ohne dass Skripte oder VIS-2 angepasst werden mĂŒssen.
Das ist beim ersten Mal zwar mehr Arbeit, erleichtert aber zukĂŒnftige Ănderungen, wie z.B. einen GerĂ€tetausch oder die Nutzung eines neuen Adapters, erheblich.
Pro GerÀt werden nur die Standard-States angelegt. Das bedeutet, es werden nicht alle Datenpunkte aliasiert, sondern nur die tatsÀchlich verwendeten. Das ist eine saubere und langfristig wartbare Methode.
Beispiele:
- Relais:
currentValue,targetValue - Steckdose:
currentValue,targetValue,power - Dimmer:
currentValue,targetValue,duration - Sensoren:
temperature,humidity,value,batteryLevel
Praxisbeispiel
Vorbereitung fĂŒr die Umstellung von ioBroker.zwave2 auf ioBroker.zwavews
Der Adapter ioBroker.zwave2 wird nicht mehr weiterentwickelt. Als Nachfolger ist ioBroker.zwavews vorgesehen (Stand: Februar 2026). Dieser basiert auf zwave-js-ui und verbindet diese mit ioBroker. Dabei erstellt er entsprechende Datenpunkte fĂŒr die vorhandenen GerĂ€te in ioBroker.
Diese Anleitung dient als Beispiel und wurde als Vorbereitung fĂŒr die Umstellung von Z-Wave2 auf Z-Wave JS UI erstellt.
Das Verzeichnis und das GerĂ€t werden zunĂ€chst erstellt. Dadurch bleibt die Struktur einheitlich und die Alias-Datenpunkte sind ĂŒbersichtlicher. Meine Aliase sind nach GerĂ€tetypen strukturiert, zum Beispiel Z-Wave. Wenn du jedoch viele GerĂ€te pro Raum hast, kann es sinnvoll sein, eine andere Verzeichnisstruktur zu verwenden â etwa eine Sortierung nach RĂ€umen.
Namenskonvention
â ïž Tipp
Verwende niemals Leerstellen in Datenpunkten, um mögliche Probleme in Skripten zu vermeiden.
Beispiele:
â Wohnzimmer Licht
â Wohnzimmer_Licht
â WohnzimmerLicht
Alias ĂŒber die Admin-OberflĂ€che einrichten
Ăffne ioBroker Admin
1) Verzeichnis erstellen
Klicke auf: â â Neues Objekt hinzufĂŒgen (alias.0.Neues GerĂ€t)
- Erstelle ein Verzeichnis unter
alias.0 - Typ: Verzeichnis (folder)
- Name:
Z-Wave
2) GerÀt erstellen
Klicke im neu erstellten Ordner Z-Wave auf: â â Neues Objekt hinzufĂŒgen (alias.0.Z-Wave.Neues GerĂ€t)
- Erstelle ein GerÀt unter
alias.0.Z-Wave - Typ: GerÀt (device)
- Name:
Relais-Klingel
3) Alias-Pfad merken und Alias erstellen
Kopiere oder merke dir:
Z-Wave.Relais-Klingel
(ohne alias.0 am Anfang)
Gehe zu deinen Z-Wave Objekten, z.B. zwave2.0, suche die entsprechende Node und erstelle ein Alias dafĂŒr.
4) Alias erstellen und ID anpassen
Im KontextmenĂŒ von currentValue â Alias erstellen
Alles belassen, nur die Alias-ID ersetzen durch:
Z-Wave.Relais-Klingel.currentValue
Danach öffnet sich ein neues Fenster, in dem du das neue Objekt bearbeiten kannst.
In der Regel kann man hier abbrechen, da spÀtere Anpassungen jederzeit möglich sind.
Der Zustandstyp (z.B. boolean, lesbar/beschreibbar) wurde bei mir immer korrekt ĂŒbernommen.
5) Alias fĂŒr targetValue erstellen
Das Gleiche mache ich mit targetValue, also Alias-ID
Z-Wave.Relais-Klingel.targetValue erstellen.
Wiederholung fĂŒr weitere GerĂ€te
Die Schritte 2 bis 5 gehe ich anschlieĂend mit allen meinen GerĂ€ten der Reihe nach durch und erstelle die entsprechenden Alias-Datenpunkte.
Hinweis
Unter den jeweiligen Objekten, sowohl unter den Z-Wave Nodes als auch unter den Aliasen, steht ein Link, um schnell zwischen dem Alias und dem Node hin und her wechseln zu können.
Abschluss
So gehe ich alle meine GerÀte der Reihe nach durch und passe dann meine Skripte an, damit ich bei einer Umstellung die Skripte nicht wieder anpassen muss:
Alias-Datenpunkte in zwavews nach dem Umstieg von zwave2:
âš Bonus
Alias-StĂ€rken beim einfachen Austausch einer Komponente, ohne Scripts oder VIS anpassen zu mĂŒssen, liegen nicht nur in den eingebauten Konvertierungsfunktionen, sondern auch in der Möglichkeit, unterschiedliche IDs fĂŒr Lesen und Schreiben zu nutzen. Das erspart euch zusĂ€tzliche Datenpunkte und/oder ein Script (z.B. per Blockly).
đ Konvertierungsfunktionen bei Alias-Datenpunkten
Mit den Konvertierungsfunktionen im Alias in ioBroker kannst du Werte automatisch umrechnen:
- beim Lesen: Original â Alias
- beim Schreiben: Alias â Original
Grundprinzip
Du hast immer die Variable val.
Diese enthÀlt den aktuellen Wert, der gelesen oder geschrieben wird.
Beispiel 1: Prozent â Dimmerwert
GerĂ€t nutzt: 0â255
Alias soll: 0â100 %
Konverter beim Lesen:
val / 255 * 100
Konverter beim Schreiben:
val / 100 * 255
Beispiel 2: Boolean umkehren (invertiertes Relais)
Manche Relais arbeiten invertiert.
Konverter beim Lesen und Schreiben:
!val
Beispiel 3: TĂŒr- oder Fenstersensor
Beispielwerte vom GerÀt:
- TĂŒr auf =
22â solltruewerden - TĂŒr zu =
23â sollfalsewerden
Wichtig: Alias-Datentyp setzen
Typ:
boolean
Rolle:
sensor.door oder sensor.window
(alternativ: state)
Konverter beim Lesen:
val == 22
Bedeutung:
- Wert
22âtrue - alle anderen Werte â
false
đ Unterschiedliche IDs fĂŒr Lesen und Schreiben
Z-Wave (oder Àhnliche) GerÀte haben typischerweise:
currentValueâ Ist-Wert (read only)targetValueâ Soll-Wert (write)
Neue VIS-2 Widgets arbeiten nur noch mit einem einzigen State (Object ID) fĂŒr Lesen und Schreiben.
Hier zwei Möglichkeiten, das in VIS-2 umzusetzen:
Beispiel 1: VIS Button
(Object ID â currentValue; Steuer-ID â targetValue)
currentValue= Ist-Zustand (read only)targetValue= Soll-Wert
Beispiel 2: VIS-2 Socket
(nur eine Object ID, keine separate Steuer-ID vorhanden)
In diesem Fall kann im Alias einfach ein zusÀtzlicher Datenpunkt angelegt werden.
Aktiviere dazu im targetValue die Option:
âUnterschiedliche IDs fĂŒr Lesen und Schreibenâ
Beispiel
-
Alias Read State:
zwavews.0.nodeID_025.Binary_Switch.currentValue -
Alias Write State:
zwavews.0.nodeID_025.Binary_Switch.targetValue




