Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Fragen / Antworten rund um die neue Alias Funktion

    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

    Fragen / Antworten rund um die neue Alias Funktion

    This topic has been deleted. Only users with topic management privileges can see it.
    • B
      bommel_030 @PackElend last edited by

      @packelend
      alias.0.ShellyWaveShutter hast du als Channel definiert, darunter gehen nur states. Wenn du daraus nen "folder" bzw. "device" machst (im Expertenmodus) kannst du auch "Unterordner" anlegen. Ein device kann mehrere channels haben, aber ein channel nur states.

      PackElend 1 Reply Last reply Reply Quote 1
      • PackElend
        PackElend @bommel_030 last edited by

        @bommel_030 OK, aber das kann ich nur im Objektbaum machen?
        Im Alias-Manager geht dies nicht?

        PackElend Codierknecht 2 Replies Last reply Reply Quote 0
        • PackElend
          PackElend @PackElend last edited by

          @packelend said in Fragen / Antworten rund um die neue Alias Funktion:

          @bommel_030 OK, aber das kann ich nur im Objektbaum machen?
          Im Alias-Manager geht dies nicht?

          1 Reply Last reply Reply Quote 0
          • Codierknecht
            Codierknecht Developer Most Active @PackElend last edited by

            @packelend sagte in Fragen / Antworten rund um die neue Alias Funktion:

            das kann ich nur im Objektbaum machen?
            Im Alias-Manager geht dies nicht?

            Meine ganz persönliche Meinung?
            Vergiss den Alias-Manager. Mit der "Hand am Arm" im Objektbaum hast Du deutlich mehr Kontrolle und bist wesentlich flexibler.
            Den Alias-Manager habe ich mir auch mal angeschaut und schnell festgestellt, dass der Dinge völlig anders anlegt als ich mir das gedacht hatte. Das würde meiner eigenen Logik völlig zuwider laufen Also habe ich den schnell wieder rausgeworfen. Ein Adapter der Dinge völlig anders macht als ich mir das denke, nützt mir nix.

            Gut möglich, dass andere das völlig anders sehen. Darum ja: Meine ganz persönliche Meinung.

            PackElend 1 Reply Last reply Reply Quote 1
            • PackElend
              PackElend @Codierknecht last edited by

              @codierknecht said in Fragen / Antworten rund um die neue Alias Funktion:

              Gut möglich, dass andere das völlig anders sehen. Darum ja: Meine ganz persönliche Meinung.

              Danke dafür 👍

              Wie machst du das, wenn du ein Geräte tauschen musst?
              Sowie die Standardkonfiguration für ein Gerät ändern möchtest?
              (ich habe 11 Shelly Wave Shutter, sowie 11 Smart Fenstergriffe)

              Codierknecht 1 Reply Last reply Reply Quote -1
              • Codierknecht
                Codierknecht Developer Most Active @PackElend last edited by

                @packelend
                Dann packe ich alles von Hand an.
                Natürlich: Ist ein bisschen Arbeit. Aber ich habe gerne selbst die Kontrolle.
                "Blackboxes" (gerne aus Redmond) kenne ich aus dem beruflichen Umfeld. Sowas gefällt mir einfach nicht.

                1 Reply Last reply Reply Quote 4
                • Garfonso
                  Garfonso Developer @PackElend last edited by

                  @packelend said in Fragen / Antworten rund um die neue Alias Funktion:

                  kannst du mir mal nen Screenshot schicken?

                  Wenn du meinst, dass dir das hilft:
                  alias-order-geräte.png

                  @packelend said in Fragen / Antworten rund um die neue Alias Funktion:

                  ist das irgendwo dokumentiert, was dieser erwartet?

                  Ja. Hier sehr technisch: https://github.com/ioBroker/ioBroker.type-detector/blob/master/DEVICES.md

                  Du kannst aber auch schauen, was im "Geräte" Tab so passiert. Damit kannst du auch Alias-Geräte zusammenklicken. Bzw., wenn du, was manuell angelegt hast, siehst du da, was die automatische Geräte-Erkennung daraus gemacht hat und welche States vielleicht noch fehlen / falsch zugeordnet sind.

                  PackElend 1 Reply Last reply Reply Quote 0
                  • PackElend
                    PackElend @Garfonso last edited by

                    @garfonso said in Fragen / Antworten rund um die neue Alias Funktion:

                    Wenn du meinst, dass dir das hilft:

                    um deine Struktur zu verstehen sehr 🙂 , ein bild sagt manchmal mehr als tausend worte

                    @garfonso said in Fragen / Antworten rund um die neue Alias Funktion:

                    Du kannst aber auch schauen, was im "Geräte" Tab so passiert

                    wir reden hierüber https://www.iobroker.net/#en/adapters/adapterref/iobroker.devices/README.md?
                    Ich habe ihn jetzt installiert aber damit noch nicht beschäftigt

                    0384023a-250c-4643-88cf-255ea56f7dca-image.png

                    Garfonso 1 Reply Last reply Reply Quote 1
                    • Garfonso
                      Garfonso Developer @PackElend last edited by Garfonso

                      @packelend
                      ja, genau, den devices-adapter.

                      Da tauchen bei "native Geräte" die Geräte auf, die er in deinem Objektbaum schon erkennt (aber nur, wenn die auch Raum & Funktion zugewiesen haben) und ansonsten kannst du damit auch deine Struktur in alias anlegen / pflegen. Also neue Geräte, die du damit zusammen klickst kommen alle in alias.0 (ggf. mit Ordner als Pfad usw.).

                      1 Reply Last reply Reply Quote 0
                      • PackElend
                        PackElend last edited by

                        @garfonso said in Fragen / Antworten rund um die neue Alias Funktion:

                        Da tauchen bei "native Geräte" die Geräte auf, die er in deinem Objektbaum schon erkennt (aber nur, wenn die auch Raum & Funktion zugewiesen haben) un

                        gibt es das irgendwo integriert erklärt, ich finde immer nur einzelerklärungen aber weniger, wenn ich das in diesem adapter mache, passiert das im anderem adapter...
                        selbst hier ist es immer sehr spezifisch: https://forum.iobroker.net/topic/6398/anleitungen-und-links

                        @garfonso said in Fragen / Antworten rund um die neue Alias Funktion:

                        (aber nur, wenn die auch Raum & Funktion zugewiesen haben)

                        wie ist das gemeint, ansatzweise ist es hier erwähnt denke ich https://github.com/ioBroker/ioBroker.lovelace/blob/master/docs/de/automatic_entities.md und https://forum.iobroker.net/topic/73203/lovelace-devices-etc/18?_=1737637915713
                        warum muss ich auch die räume berücksichtigen?

                        Garfonso 1 Reply Last reply Reply Quote 0
                        • Garfonso
                          Garfonso Developer @PackElend last edited by

                          @packelend said in Fragen / Antworten rund um die neue Alias Funktion:

                          wenn ich das in diesem adapter mache, passiert das im anderem adapter

                          Naja, es gibt eine handvoll Adapter, die den type-detector und dessen Ergebnisse verwenden (können). Das sind leider noch relativ wenige. Aber hauptsächlich sind es Adapter, die irgendwas mit Geräten anfangen können, also Visualisierungen (lovelace, materialize), die daraus was automatisch basteln (können) oder so Dinge, wie iot (der automatisch z.B. Alexa Geräte anlegt).
                          Ob es da irgendwo eine Liste gibt, weiß ich nicht.

                          @packelend said in Fragen / Antworten rund um die neue Alias Funktion:

                          warum muss ich auch die räume berücksichtigen?

                          Sieh es als filter. ioBroker Installationen haben oft zigtausende Objekte. Der type-detector (bzw. die Adapter, die ihn nutzen) guckt sich davon aber nur die an, wo der User manuell Raum & Funktion vergeben hat. Bei manchen Adaptern wird daraus auch der Gerätename generiert (z.B. iot -> Licht Raum XY usw.). Wenn du die beiden Enums nicht nutzen magst (wobei ich das persönlich empfehle, kann man selbst dann auch in Skripten verwenden, um z.B. alle Lichter in Raum XY zu bekommen oder so, ich muss einige meiner Skripte bei neuen Geräten nicht mehr anfassen, wenn ich Raum & Funktion korrekt vergebe), dann leg halt dummies an und vergib die (ich hab auch einen Raum "überall", da kommen Dinge, rein, die sich bewegen können und keinen festen Raum haben oder Wetter oder so).

                          Aber ich glaube, wir schweifen hier langsam etwas vom Thema ab. 😉
                          Trotzdem glaube ich, dass deine Erfahrungen wertvoll für die Dokumentation wären. Gab es da nicht nochmal eine Initiative @apollon77 ? Kann man sich da irgendwo melden?

                          1 Reply Last reply Reply Quote 0
                          • PackElend
                            PackElend last edited by

                            @garfonso said in Fragen / Antworten rund um die neue Alias Funktion:

                            Aber ich glaube, wir schweifen hier langsam etwas vom Thema ab.

                            aber ich komme dahinter was ich noch machen muss 😆

                            @garfonso said in Fragen / Antworten rund um die neue Alias Funktion:

                            Trotzdem glaube ich, dass deine Erfahrungen wertvoll für die Dokumentation wären.

                            https://forum.iobroker.net/topic/72906/jalousie-mit-dingz-shelly-wave-shutter-1-mal-iobroker
                            ich habe für mich mal angefangen, erfahrung ist noch zu lose um weiter zu machen
                            Bis auf den z-wave teil, dass könnte ich jetzt mal zusammenführen

                            1 Reply Last reply Reply Quote 1
                            • T
                              topsurfer @paul53 last edited by

                              @paul53

                              @paul53 said in Fragen / Antworten rund um die neue Alias Funktion:

                              @scotty89 sagte: String werten in eine Boolean wandeln
                              Lesekonvertierung:

                              Hallo,
                              das mit Lesekonvertierung verstehe ich langsam, ebenso das Parsen um bestimmte Werte aus einem JSON zu bekommen.

                              Jetzt brauch ich aber beides in einem 😉

                              Ich muss den Status des Kontakts "heraus parsen", und dann den Wert umwandeln ("true" soll "closed" ausgeben, "false" soll "open" ausgeben".

                              Konverter beim lesen sieht so aus (gibt halt: true/false zurück):
                              JSON.parse(val).contact

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

                                @topsurfer sagte: "true" soll "closed" ausgeben, "false" soll "open" ausgeben".

                                JSON.parse(val).contact ? 'closed' : 'open'
                                
                                T 1 Reply Last reply Reply Quote 0
                                • T
                                  topsurfer @paul53 last edited by

                                  @paul53 Thx again!

                                  1 Reply Last reply Reply Quote 0
                                  • G
                                    gutgut30 last edited by gutgut30

                                    Hi,

                                    ich habe nun endlich mal angefangen auf Aliase umzustellen. Ich habe hier jedoch einen State, den bekomme ich über ein Alias nicht mehr sinnvoll gesetzt. Ich übergebe eine Zahl, angeblich wird jedoch ein Objekt empfangen.

                                    "Object alias.0.Gastherme.Steuerung.Betriebsart is invalid: obj.common.min has an invalid type! Expected "number", received "object" This will throw an error up from js-controller version 7.0.0!"

                                    Übergebe ich wie bisher eine Zahl für den gewünschten Wert, dann erhalte ich ein null. Übergebe ich die Zahl als String, dann gehts, im Log erscheint jedoch natürlich ein Hinweis, dass eine Zahl erwartet worden ist.

                                    Am Script habe ich nur den DP vom Ursprung zum Alias geändert.

                                    Beide DP scheinen mir identisch konfiguriert.

                                    Der Ursprung:

                                    {
                                      "type": "state",
                                      "common": {
                                        "name": "Betriebsart (700)",
                                        "type": "number",
                                        "role": "value",
                                        "read": true,
                                        "write": true,
                                        "unit": "",
                                        "states": {
                                          "0": "Schutzbetrieb",
                                          "1": "Automatik",
                                          "2": "Reduziert",
                                          "3": "Komfort",
                                          "65535": "---"
                                        },
                                        "custom": {
                                          "history.0": {
                                            "enabled": true,
                                            "aliasId": "",
                                            "debounceTime": 0,
                                            "blockTime": 0,
                                            "changesOnly": true,
                                            "changesRelogInterval": 0,
                                            "changesMinDelta": 0,
                                            "ignoreBelowNumber": "",
                                            "disableSkippedValueLogging": false,
                                            "retention": 31536000,
                                            "customRetentionDuration": 365,
                                            "maxLength": 960,
                                            "enableDebugLogs": false,
                                            "chartStep": ""
                                          }
                                        }
                                      },
                                      "native": {
                                        "id": "700",
                                        "bsb": {
                                          "name": "Betriebsart",
                                          "dataType_name": "ENUM",
                                          "dataType_family": "ENUM",
                                          "destination": "0",
                                          "possibleValues": [
                                            {
                                              "enumValue": 65535,
                                              "desc": "---"
                                            },
                                            {
                                              "enumValue": 0,
                                              "desc": "Schutzbetrieb"
                                            },
                                            {
                                              "enumValue": 1,
                                              "desc": "Automatik"
                                            },
                                            {
                                              "enumValue": 2,
                                              "desc": "Reduziert"
                                            },
                                            {
                                              "enumValue": 3,
                                              "desc": "Komfort"
                                            }
                                          ],
                                          "isswitch": 0,
                                          "dataType": 1,
                                          "readonly": 0,
                                          "readwrite": 0,
                                          "unit": ""
                                        }
                                      },
                                      "_id": "bsblan.0.Betriebsart_(700)",
                                      "from": "system.adapter.admin.0",
                                      "user": "system.user.admin",
                                      "ts": 1739452181978
                                    }
                                    

                                    Der Alias:

                                    {
                                      "common": {
                                        "alias": {
                                          "id": "bsblan.0.Betriebsart_(700)",
                                          "read": "",
                                          "write": ""
                                        },
                                        "name": "Betriebsart",
                                        "role": "value",
                                        "type": "number",
                                        "unit": "",
                                        "min": "",
                                        "max": "",
                                        "read": true,
                                        "write": true,
                                        "states": {
                                          "0": "Schutzbetrieb",
                                          "1": "Automatik",
                                          "2": "Reduziert",
                                          "3": "Komfort",
                                          "65535": "---"
                                        },
                                        "custom": {
                                          "history.0": {
                                            "enabled": true,
                                            "aliasId": "",
                                            "debounceTime": 0,
                                            "blockTime": 0,
                                            "changesOnly": true,
                                            "changesRelogInterval": 0,
                                            "changesMinDelta": 0,
                                            "ignoreBelowNumber": "",
                                            "disableSkippedValueLogging": false,
                                            "retention": 31536000,
                                            "customRetentionDuration": 365,
                                            "maxLength": 960,
                                            "enableDebugLogs": false
                                          }
                                        }
                                      },
                                      "native": {},
                                      "type": "state",
                                      "from": "system.adapter.admin.0",
                                      "user": "system.user.admin",
                                      "ts": 1734278479428,
                                      "_id": "alias.0.Gastherme.Steuerung.Betriebsart"
                                    }
                                    

                                    Ich hab auch schon mal den Native-Block vom Original in den Alias kopiert, das hat aber nichts verändert. Auch ein "konvertiere Zahl zu Zahl" hat (wie erwartet) nichts verändert.

                                    Was mache ich falsch? Wieso glaubt der Alias ein Objekt zu empfangen?

                                    Update/Edit:
                                    Gefunden. Da scheint etwas bei Übernehmen der min/max Values nicht zu passen. Diese waren im Alias plötzlich auf null. Ich hab sie jetzt manuell gesetzt, damit klappt es.

                                        "min": 0,
                                        "max": 3,
                                    

                                    Gelöst durch finden eines seit Jahren offnen Bugs: https://github.com/iobroker-community-adapters/ioBroker.alias-manager/issues/36

                                    RP70DP created this issue in iobroker-community-adapters/ioBroker.alias-manager

                                    open invalid: obj.common.min has an invalid type! Expected "number", received "string" #36

                                    paul53 2 Replies Last reply Reply Quote 0
                                    • paul53
                                      paul53 @gutgut30 last edited by paul53

                                      @gutgut30 sagte: Wieso glaubt der Alias ein Objekt zu empfangen?

                                      Kann es sein, dass der Originalwert null sein kann? null ist ein Objekt.
                                      Lösche "min" und "max", denn das sind Leerstrings.

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

                                        @paul53 Habs gerade so ähnlich gelöst und mein Posting aktualisiert. Das war es. Danke

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

                                          @gutgut30 sagte: manuell gesetzt, damit klappt es.

                                          Das müssen Zahlen sein - keine Strings!

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

                                            @paul53 said in Fragen / Antworten rund um die neue Alias Funktion:

                                            Das müssen Zahlen sein - keine Strings!

                                            Du hast Recht. Hab es im Posting aktualisiert. ioBroker scheint es aber beim Speichern des DP auch selber zu korrigieren.

                                            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

                                            775
                                            Online

                                            31.9k
                                            Users

                                            80.1k
                                            Topics

                                            1.3m
                                            Posts

                                            alias js-controller
                                            87
                                            615
                                            141661
                                            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