Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Alias best practices - Wie kann man es besser machen?

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    Alias best practices - Wie kann man es besser machen?

    This topic has been deleted. Only users with topic management privileges can see it.
    • ldittmar
      ldittmar Developer last edited by ldittmar

      Hallo Leute. Ich starte jetzt eine Studie über die Nutzung von Alias im ioBroker. Wie handhabt ihr das? Das wäre echt interessant und vielleicht könnten wir ein paar Ideen sammeln, wie man etwas diesbezüglich besser machen kann.

      Ich habe bei mir inzwischen alles auf Alias umgebaut, denn das ist echt eine super tolle Lösung für viele Probleme der Hausautomatisierung... Für alle die nicht wissen was man mit Alias machen kann: Man erstellt eine Verlinkung zu einem Datenpunkt im ioBroker her und arbeitet dann nur noch mit der Verlinkung und nicht mit dem echten Datenpunkt. Warum sollte man nur noch so arbeiten? Es gibt viele Gründe:

      • ListenpunktNehmen wir an, ein Lichtschalter geht kaputt und man ersetzt diesen. Durch das Ersetzen des Gerätes, bekommt dieser eine neue ID. Diese ID müsste in jede Visualisierung oder Skript ersetzt werden. Beim Alias müsste lediglich die Verlinkung aktualisiert werden und alles läuft auf Anhieb.
      • Vereinheitlichung der Daten - Beim Verlinken, hat man auch die Möglichkeit Daten zu ändern, so dass es überall gleich funktioniert. Als Beispiel nehmen wir die Datenpunkte "available=true" und "unreach=false" - Beide Datenpunkte beschreiben die aktuelle Verfügbarkeit eines Gerätes, aber leider haben beide verschiedene Werte für die gleiche Aussage. Mit Alias kann man alle Datenpunkte die gleiche ID geben: z.B. "ERREICHBAR" und den Wert von unreach einfach negieren. Also ERREICHBAR = !unreach
      • Mit Alias muss man nicht einzelne Datenpunkte irgendwo suchen. Sie befinden sich ALLE unter alias.0 und darunter ist man Frei eine eigene Struktur aufzubauen. Zum Beispiel alle Lichter in einem Ordner - Dabei ist es total egal, ob das Licht eine HUE Lampe, ein Homematic Aktor oder eine WLAN Lampe ist. Alle sind dort auffindbar.
      • Die Verlinkungen können nach angepasst werden, indem man eine Einheit vergibt ober mögliche Texte Übersetzt.

      Jetzt zum eigentlichen Thema: Wie nutze ICH die Alias Funktion?

      Ich habe mir mit dem Device Adapter eine Ordnerstruktur erstellt, denn mir ist kein anderer Weg bekannt, einem Objekt vom Typ "folder" zu erstellen.

      25-05-_2020_09-31-24.png
      25-05-_2020_09-30-40.png

      Darunter habe ich dann die einzelnen Geräte als "channel". Was sind Geräte für mich? Als Gerät definiere ich nicht umbedingt einem Sensor. Zum Beispiel habe ich Briefkasten als ein Gerät. Im Briefkasten habe ich ein Bewegungssensor (wurd ein Brief eingeworfen) und ein Türsensor (wurde Briefkasten geleert) eingebaut. Dazu kommen noch Datenpunkte, die vom Skript befüllt werden. Leider kann unter alias.0 NUR Alias DPs rein, so dass ich gezwungen bin ein DT außerhalb zu erstellen und diesen da rein zu verlinken.

      25-05-_2020_10-07-45.png

      Rollen und Räume pflege ich auch NUR unter Alias und bevor ich mit neue Geräte arbeite, ertelle ich immer eine Verknüpfung. Ist zwar anfangs mehr Arbeit, aber es ist erstens alles viel geordneter und einheitlicher und zweitens kann ich notfalls alles schnell umswitschen, ohne irgendwelche IDs überall ändern zu müssen.

      Was wünsche ich mir, damit die Arbeit damit einfacher wird?

      • Die Möglichkeit "folder" direkt über Admin zu erstellen (https://github.com/ioBroker/ioBroker.admin/issues/577)
      • Die Möglichkeit ein Alias eines Datenpunktes über die Admin Oberfläche zu erstellen (https://github.com/ioBroker/ioBroker.admin/issues/558)
      • Den Device Adapter etwas flexibler zu gestallten, damit man Geräte wie "Briefkasten" erstellen kann (https://github.com/ioBroker/ioBroker.devices/issues/18)
      • Wäre schön, wenn man auch ein nicht Alias DP unter Alias speichern könnte, dann musste man nicht ein extra DP erstellen um Skript gesteuerte DPs im Gerät zu haben (https://github.com/ioBroker/ioBroker.js-controller/issues/906)
      • Im Device Adapter auch Enums/Aufzählungen anlegen zu können, denn manchmal fehlen welche und man muss das Anlegen eines Gerätes abbrechen, damit man diese anlegen kann. (https://github.com/ioBroker/ioBroker.devices/issues/20)
      • Im Device Adapter die Möglichkeit mehrere Räume/Funktionen auszuwählen (Mein Wohnzimmer hat als Räume Wohnzimmer und Erdgeschoss) (https://github.com/ioBroker/ioBroker.devices/issues/20)
      • Im Device Adapter die Möglichkeit einzelne DPs andere Funktionen/Räume zuzuordnen (LOWBAT soll als einziges die Funktion Batterie haben) (https://github.com/ioBroker/ioBroker.devices/issues/20)
      • Eine Möglichkeit die Datenstruktur zu verändern, ohne die ID anpassen zu müssen. (https://github.com/ioBroker/ioBroker.js-controller/issues/905)

      Soviel zu mir... wie ist es bei euch? Alias muss auch unbedingt Anwenderfreundlicher werden. Hat jemand dafür Ideen?

      ldittmar81 created this issue in ioBroker/ioBroker.admin

      closed Create folder on admin objects #577

      Apollon77 created this issue in ioBroker/ioBroker.admin

      closed Add Basic Alias Settings editor to Object editor #558

      sbormann created this issue in ioBroker/ioBroker.devices

      closed Allow adding more states to device #18

      ldittmar81 created this issue in ioBroker/ioBroker.js-controller

      closed Nicht Alias DP unter alias.0 erstellen #906

      ldittmar81 created this issue in ioBroker/ioBroker.devices

      closed Add new enums and choose multliple enums #20

      ldittmar81 created this issue in ioBroker/ioBroker.devices

      closed Add new enums and choose multliple enums #20

      ldittmar81 created this issue in ioBroker/ioBroker.devices

      closed Add new enums and choose multliple enums #20

      ldittmar81 created this issue in ioBroker/ioBroker.js-controller

      open Ordnerstruktur änderbar ohne ID zu ändern #905

      paul53 BBTown 2 Replies Last reply Reply Quote 3
      • paul53
        paul53 @ldittmar last edited by paul53

        @ldittmar sagte:

        wie ist es bei euch?

        Ich verwende das Script im untersten Spoiler.
        Bei mir würde die Alias-ID für LOWBAT des Einwurf-Sensors so aussehen: alias.0.Vorhof.Briefkasten.Einwurf.LOWBAT.

        @ldittmar sagte in Alias best practices - Wie kann man es besser machen?:

        Die Möglichkeit "folder" direkt über Admin zu erstellen

        Man kann auch "Gerät"(device) verwenden. Es geht ja nur um eine sinnvolle Struktur unter Einhaltung der Reihenfolge (parent - child) meta.device.channel.state, wobei die Objekte vom Typ "device" und "channel" auch weggelassen werden können.

        ldittmar 1 Reply Last reply Reply Quote 0
        • ldittmar
          ldittmar Developer @paul53 last edited by ldittmar

          @paul53 sagte in Alias best practices - Wie kann man es besser machen?:

          @ldittmar sagte:

          wie ist es bei euch?

          Ich verwende das Script im untersten Spoiler.
          Bei mir würde die Alias-ID für LOWBAT des Einwurf-Sensors so aussehen: alias.0.Vorhof.Briefkasten.Einwurf.LOWBAT.

          @ldittmar sagte in Alias best practices - Wie kann man es besser machen?:

          Die Möglichkeit "folder" direkt über Admin zu erstellen

          Man kann auch "Gerät"(device) verwenden. Es geht ja nur um eine sinnvolle Struktur unter Einhaltung der Reihenfolge (parent - child) meta.device.channel.state, wobei die Objekte vom Typ "device" und "channel" auch weggelassen werden können.

          Du hast aber damit ein kleines Problem: Wenn du ein DP anlegst - alias.0.Vorhof.Briefkasten.Einwurf.LOWBAT - dann wird ein DP mit der ID "Vorhof.Briefkasten.Einwurf.LOWBAT" angelegt -> in der Ordnerstruktur sieht es zunächst alles schön aus, aber es gibt kein Ordner Vorhof, Briefkasten oder Einwurf. Das merkst du bei den Objekten daran, dass du bei den "Ordnern" keine Möglichkeit hast es zu bearbeiten oder löschen. (Bleistift und Mülleimer rechts fehlen) Deswegen wurde noch ein Typ "folder" hinzugefügt.
          "device" und "channel" kommen halt aus der Homematic Welt. Meine Struktur bräuchte aber kein Channel, denn ich Arbeite auf Device-Ebene. Es ist aber so, dass die States unter Channel sein sollen.

          Ich habe die ersten Alias über den Device Adapter angelegt. Leider ist der Adapter nicht so flexibel. Die neuen Lege ich so an, dass ich einfach ein DP bearbeite und die ID entsprechend ändere. Wenn die ID geändert wird, wird eine Kopie des Objektes an der Stelle erzeugt und damit arbeite ich dann.

          paul53 1 Reply Last reply Reply Quote 0
          • paul53
            paul53 @ldittmar last edited by paul53

            @ldittmar sagte:

            aber es gibt kein Ordner Vorhof, Briefkasten oder Einwurf

            Ordner gibt es schon, aber keine Objekte zu den Ordnern. Wenn ich Objekte "device" und "channel" haben möchte, erzeuge ich sie manuell im Tab "Objekte".

            @ldittmar sagte in Alias best practices - Wie kann man es besser machen?:

            "device" und "channel" kommen halt aus der Homematic Welt.

            Ja, ioBroker ist aus der Erfahrung mit HomeMatic entstanden. Deshalb die erwähnte Reihenfolge parent - child.

            1 Reply Last reply Reply Quote 0
            • C
              CruziX last edited by CruziX

              Ich habe ein Skript in dem ich mir alle Alias Werte anlege.
              Dazu nutze ich eine von mir erweiterte Version von Paul.
              diese Version erstellt auch für die zwischen Ordner einen Datenpunkt mit einem bestimmten Typ (weiß gerade nicht mehr welcher), damit auch diesen Datenpunkte Rollen etc. zugeordnet werden können.

              Der Vorteil wie ich finde, wenn ein neues Gerät hinzukommt und ich bereits eines der gleichen Art habe z.B. Fensterkontakt, kann ich mir die Codezeilen zum erstellen der dafür passenden Aliaswerte einfach duplizieren und den Quellpfad zum neuen Gerät anpassen.

              ldittmar 1 Reply Last reply Reply Quote 0
              • BBTown
                BBTown @ldittmar last edited by

                @ldittmar
                ich würde mir auch wünschen einen Alias aus einem Datenpunkt heraus anlegen zu können.
                Alleine die ID zu suchen, diese in den Zwischenablage zu legen, manuell einen alias erstellen, die ID dort hineinkopieren, macht das alles sehr, sehr holprig.

                Mitunter habe ich mir auch schon eine "Massenanlage von Aliase" gewünscht, doch hier ändern sich quasi täglich meine Wünsche, wie dieses arbeiten müßte, daher stelle ich mir das schwer vor 😎

                Vielleicht könnte man in Adaptern, die ja üblicherweise eigene Datenpunkte anlegen, die gleichzeitige Anlage von Aliase mit ermöglichen lassen?

                ldittmar paul53 2 Replies Last reply Reply Quote 0
                • ldittmar
                  ldittmar Developer @BBTown last edited by

                  @BBTown sagte in Alias best practices - Wie kann man es besser machen?:

                  @ldittmar
                  ich würde mir auch wünschen einen Alias aus einem Datenpunkt heraus anlegen zu können.
                  Alleine die ID zu suchen, diese in den Zwischenablage zu legen, manuell einen alias erstellen, die ID dort hineinkopieren, macht das alles sehr, sehr holprig.

                  Ja... und vor allem sehr Fehleranfällig. Hab schon einmal aus versehen die falsche ID rein kopiert.

                  Mitunter habe ich mir auch schon eine "Massenanlage von Aliase" gewünscht, doch hier ändern sich quasi täglich meine Wünsche, wie dieses arbeiten müßte, daher stelle ich mir das schwer vor 😎

                  Dafür ist der Devices Adapter da. Er muss nur etwas flexibler werden. Damit lässt sich gleichzeitig mehrere Aliase zu einem Gerät anlegen. Ich nutze es oft, aber wie gesagt: mir fehlt die Flexibilität.

                  Vielleicht könnte man in Adaptern, die ja üblicherweise eigene Datenpunkte anlegen, die gleichzeitige Anlage von Aliase mit ermöglichen lassen?

                  Nee... Ich persönlich lege nicht alle DPs als Alias an, denn einige interessieren mich nicht oder ich mache aus mehrere Sensoren ein Gerät (bsp.: Briefkasten). Die Adaptern sollten da. meiner Meinung nach, nichts machen.

                  BBTown 1 Reply Last reply Reply Quote 0
                  • ldittmar
                    ldittmar Developer @CruziX last edited by

                    @CruziX sagte in Alias best practices - Wie kann man es besser machen?:

                    Ich habe ein Skript in dem ich mir alle Alias Werte anlege.
                    Dazu nutze ich eine von mir erweiterte Version von Paul.
                    diese Version erstellt auch für die zwischen Ordner einen Datenpunkt mit einem bestimmten Typ (weiß gerade nicht mehr welcher), damit auch diesen Datenpunkte Rollen etc. zugeordnet werden können.

                    Der Vorteil wie ich finde, wenn ein neues Gerät hinzukommt und ich bereits eines der gleichen Art habe z.B. Fensterkontakt, kann ich mir die Codezeilen zum erstellen der dafür passenden Aliaswerte einfach duplizieren und den Quellpfad zum neuen Gerät anpassen.

                    Das mit dem Skript ist zwar super und echt cool, aber leider nicht für die breite Masse geeignet. Es muss definitiv einfacher für die User werden.

                    1 Reply Last reply Reply Quote 0
                    • BBTown
                      BBTown @ldittmar last edited by BBTown

                      @ldittmar sagte in Alias best practices - Wie kann man es besser machen?:

                      Nee... Ich persönlich lege nicht alle DPs als Alias an, denn einige interessieren mich nicht oder ich mache aus mehrere Sensoren ein Gerät (bsp.: Briefkasten). Die Adaptern sollten da. meiner Meinung nach, nichts machen.

                      Mein Gedankengang war eher, dass das Löschen nicht benötigter Aliase womöglich einfacher/schneller ginge als das nachträgliche hinzufügen?!? 😎
                      Womöglich in den Adaptern als Option "Alias anlegen ja/nein"?

                      1 Reply Last reply Reply Quote 0
                      • paul53
                        paul53 @BBTown last edited by paul53

                        @BBTown sagte:

                        ich würde mir auch wünschen einen Alias aus einem Datenpunkt heraus anlegen zu können.

                        @Scrounger is jemand, der in Lage ist, einen passenden Adapter zu erstellen, da sein Adapter ioBroker.linkeddevices mit diesem Prinzip arbeitet. Allerdings werden dort alle custom-Eigenschaften beim Original-Datenpunkt erstellt, was im Falle von Alias nicht sein soll. Es müsste also mit Suche über alle Alias-Datenpunkte gearbeitet werden.
                        Vielleicht kann jemand @Scrounger zu dem Adapter überreden ?

                        @ldittmar sagte in Alias best practices - Wie kann man es besser machen?:

                        Die Adaptern sollten da. meiner Meinung nach, nichts machen.

                        Bin da ganz Deiner Meinung.

                        ldittmar 1 Reply Last reply Reply Quote 0
                        • ldittmar
                          ldittmar Developer @paul53 last edited by

                          @paul53 sagte in Alias best practices - Wie kann man es besser machen?:

                          @BBTown sagte:

                          ich würde mir auch wünschen einen Alias aus einem Datenpunkt heraus anlegen zu können.

                          @Scrounger is jemand, der in Lage ist, einen passenden Adapter zu erstellen, da sein Adapter ioBroker.linkeddevices mit diesem Prinzip arbeitet. Allerdings werden dort alle custom-Eigenschaften beim Original-Datenpunkt erstellt, was im Falle von Alias nicht sein soll. Es müsste also mit Suche über alle Alias-Datenpunkte gearbeitet werden.
                          Vielleicht kann jemand @Scrounger zu dem Adapter überreden ?

                          Mit Admin 5 wird da was kommen. Linkeddevices ist ein guter Beispiel wie sowas aussehen könnte. Mal sehen was da passieren wird. Ich habe in meinem ersten Post die Github Issues verlinkt...

                          1 Reply Last reply Reply Quote 0
                          • arteck
                            arteck Developer Most Active last edited by

                            ich habe auch alles auf alias umgestellt.. und bin genau so wie @ldittmar in die Falle getappt..mit dem Script .. dass ich keine Räume angelegt bekommen habe ... Danke an dich hier für die hilfestellung

                            mit dem Device Adapter ist das schon ok .. nur sollte man die Objekte nicht extra umbenenen "müssen"..ich verwende lieber die orginalen Datenpunktnamen .. in Scripten kann man sich dann den Datenpunkt zusammenparsen..

                            ldittmar 1 Reply Last reply Reply Quote 0
                            • ldittmar
                              ldittmar Developer @arteck last edited by

                              @arteck sagte in Alias best practices - Wie kann man es besser machen?:

                              ich habe auch alles auf alias umgestellt.. und bin genau so wie @ldittmar in die Falle getappt..mit dem Script .. dass ich keine Räume angelegt bekommen habe ... Danke an dich hier für die hilfestellung

                              Gern geschehen... also noch für die, die das Problem haben: Die "Ordner" können ganz einfach nachträglich erstellt werden.

                              mit dem Device Adapter ist das schon ok .. nur sollte man die Objekte nicht extra umbenenen "müssen"..ich verwende lieber die orginalen Datenpunktnamen .. in Scripten kann man sich dann den Datenpunkt zusammenparsen..

                              Das mache ich zum Beispiel nicht. Ich möchte die Geräte vereinheitlichen. Mir ist es also egal ob ein Licht aus Homematic, Hue, tradfri, Zigbee, ZWave usw... kommt. Ich kann alle gleich ansprechen, weil alle die gleiche StateIDs haben.

                              paul53 1 Reply Last reply Reply Quote 0
                              • paul53
                                paul53 @ldittmar last edited by paul53

                                @ldittmar sagte:

                                Ich kann alle gleich ansprechen, weil alle die gleiche StateIDs haben.

                                Ja, das ist ein wesentlicher Aspekt, der für die Verwendung von Alias spricht.

                                @ldittmar sagte in Alias best practices - Wie kann man es besser machen?:

                                Die "Ordner" können ganz einfach nachträglich erstellt werden.

                                Meinst Du, dass aus Ordnern einfach Objekte gemacht werden können ? Ja, das ist leicht möglich, indem man ein Objekt mit der ID eines bestehenden Ordners erzeugt, was sowohl im Tab "Objekte" als auch mit einem Script funktioniert.

                                ldittmar C 2 Replies Last reply Reply Quote 1
                                • ldittmar
                                  ldittmar Developer @paul53 last edited by

                                  @paul53 sagte in Alias best practices - Wie kann man es besser machen?:

                                  Meinst Du, dass aus Ordnern einfach Objekte gemacht werden können ? Ja, das ist leicht möglich, indem man ein Objekt mit der ID eines bestehenden Ordners erzeugt, was sowohl im Tab "Objekte" wie auch mit einem Script funktioniert.

                                  Jepp... genau das. Am Anfang habe ich auch gedacht man müsste alles neu anlegen. Es ist also nicht alles verloren und man kann die Ordnerstruktur nachträglich erstellen.

                                  C 1 Reply Last reply Reply Quote 0
                                  • C
                                    CruziX @paul53 last edited by

                                    @paul53 sagte in Alias best practices - Wie kann man es besser machen?:

                                    @ldittmar sagte:

                                    Ich kann alle gleich ansprechen, weil alle die gleiche StateIDs haben.

                                    Ja, das ist ein wesentlicher Aspekt, der für die Verwendung von Alias spricht.

                                    @ldittmar sagte in Alias best practices - Wie kann man es besser machen?:

                                    Die "Ordner" können ganz einfach nachträglich erstellt werden.

                                    Meinst Du, dass aus Ordnern einfach Objekte gemacht werden können ? Ja, das ist leicht möglich, indem man ein Objekt mit der ID eines bestehenden Ordners erzeugt, was sowohl im Tab "Objekte" als auch mit einem Script funktioniert.

                                    Also quasi einen Alias der als Quelldatenpunkt einen anderen Ordner hat?
                                    Ich hab jetzt nochmal nachgesehen und ich hab einfach einen Datenpunkt mit dem Attribut "type": "meta.folder" erstellt. Somit fungiert er als Ordner und braucht keine Verknüpfung

                                    1 Reply Last reply Reply Quote 0
                                    • C
                                      CruziX @ldittmar last edited by

                                      @ldittmar Bei meinem Skript kann ich sogar eine Variable auf true setzen und dann werden alle bereits bestehenden Alias Werte auf diese Ordnerfunktion konvertiert 😁

                                      1 Reply Last reply Reply Quote 0
                                      • bahnuhr
                                        bahnuhr Forum Testing Most Active last edited by

                                        @ldittmar

                                        Ich muss mal blöd fragen.
                                        In #1 sieht man
                                        7904cf98-ed92-4e7a-9511-e10adfd31120-image.png
                                        Objekte ?

                                        Diesen Punkt habe ich nicht. Wo kommt dieser her?

                                        Weiterhin fehlt mir der Punkt alias.0
                                        a79ab73e-f83e-4622-bb86-c081142b42a7-image.png

                                        Wann wird dieser angezeigt?

                                        mfg

                                        crunchip liv-in-sky 2 Replies Last reply Reply Quote 0
                                        • crunchip
                                          crunchip Forum Testing Most Active @bahnuhr last edited by crunchip

                                          @bahnuhr sagte in Alias best practices - Wie kann man es besser machen?:

                                          Wann wird dieser angezeigt?

                                          Bei Einführung des alias, siehe https://forum.iobroker.net/post/315709
                                          Glaub mit aktuellem js-controller, sollte jedoch ein Ordner mit einem Beispiel state angelegt sein
                                          Haken vllt nicht gesetzt?
                                          Screenshot_20200724-083726_Chrome.jpg

                                          1 Reply Last reply Reply Quote 0
                                          • liv-in-sky
                                            liv-in-sky @bahnuhr last edited by

                                            @bahnuhr

                                            die objecte bekommst du nach der installation des adapters hier:

                                            Image 2.png

                                            da kannst du das dann auswählen

                                            bahnuhr 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate
                                            FAQ Cloud / IOT
                                            HowTo: Node.js-Update
                                            HowTo: Backup/Restore
                                            Downloads
                                            BLOG

                                            653
                                            Online

                                            31.8k
                                            Users

                                            80.0k
                                            Topics

                                            1.3m
                                            Posts

                                            alias best practices
                                            12
                                            67
                                            9247
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo