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

    • Monatsrückblick - April 2025

    • Minor js-controller 7.0.7 Update in latest repo

    • Save The Date: ioBroker@Smart Living Forum Solingen, 14.06.

    Fragen / Antworten rund um die neue Alias Funktion

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

      Die alias-Funktion oder die Datenpunkte finde ich bei mir nicht.
      Ich habe begonnen mir eine Struktur mit linkeddevices aufzubauen und habe jetzt zwei Fragen:

      1. Was ist der Unterschied zwischen den beiden Funktionen?
      2. Werden beide nebeneinander existieren oder eine abgelöst und eingestellt?

      Die Funktionalität ist genial aber Ich würde mir ungern die Arbeit zwei mal machen ....

      Viele Grüsse
      Stefan

      apollon77 1 Reply Last reply Reply Quote 0
      • P
        Phil85 last edited by

        Wirklich geile Sache mit dem Alias 😉
        Meine Struktur sieht bis jetztb wie folgt aus
        95f1042c-fc52-4a3f-a710-60a4493d017d-grafik.png

        1 Reply Last reply Reply Quote 1
        • P
          Phil85 last edited by

          In Skripten aber hauptsächlich in Views welche raumübergreifend kopiert werden,
          suche ich einfach nur noch den Zimmer Namen und ersetze ihn mit einem Anderen.
          Und schon passt der View mit allen sämtlichen Datenpunkten 😉

          1 Reply Last reply Reply Quote 0
          • apollon77
            apollon77 @Stefan_1969 last edited by

            @Stefan_1969 Alias ist die direkt im js-controller (seit 2.0 neu) integrierte Form. Linkeddevices wird von einem Adapter gemanaged der auch immer laufen muss. Es gibt aktuell keine Pläne linkeddevices abzuklemmen oder so, also kannst Du das weiterhin nutzen - frisst halt mehr Ressourcen weil der Adapter alles handelt

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

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

              Die Frage ist ja eigentlich, warum iot unbedingt ein native Part braucht um die id für smartName zu aktzeptieren..?

              Sagen wir es so: Ein State-Objekt ohne "native" ist an sich ungültig, auch wenn native leer ist. Den genauen Grund warum iot auf native zugreift weiss ich gerade nicht und müsste ich nachsehen ...

              1 Reply Last reply Reply Quote 0
              • S
                Stefan_1969 @apollon77 last edited by

                @apollon77 vielen Dank! Die Info hat mir ein Licht aufgehen lassen 😊
                Nun ist auch mir der Unterschied klar 👍

                1 Reply Last reply Reply Quote 0
                • K
                  K_o_bold @apollon77 last edited by

                  @apollon77 ,

                  die Objekte wurden mit dem Skript von @paul53 angelegt. Also per Admin..

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

                    @K_o_bold sagte:

                    Also per Admin.

                    Also per Javascript.

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

                    Ein State-Objekt ohne "native" ist an sich ungültig, auch wenn native leer ist.

                    Bei mir wird immer native mit einem leeren Objekt automatisch erzeugt.

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

                      @paul53
                      Bist du dir 100% sicher? Wie gesagt, der admin fügt das leere native ein, auch wenn es in der Objekt DB nicht steht. Wenn man dann auf speichern klickt, ohne was zu ändern, ist es da. Wenn nicht, dann fehlt es weiterhin und iot möchte weiterhin nicht mit dem Datenpunkt arbeiten. Probier das mal aus. Bei mir ist es 100% so, auch jetzt noch.

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

                        @Garfonso sagte:

                        admin fügt das leere native ein, auch wenn es in der Objekt DB nicht steht.

                        Da habe ich mich offensichtlich von Admin täuschen lassen.

                        1 Reply Last reply Reply Quote 0
                        • K
                          K_o_bold last edited by

                          Wie zeichnet man denn am besten die Daten der alias auf, für Grafana History Adapter usw.?
                          Nur den Datenpunkt des Alias aufzeichnen oder wie unten im Bild, das Alias Objekt angeben:

                          e2694895-285b-4ed3-a8f5-3664f61194f6-image.png

                          apollon77 1 Reply Last reply Reply Quote 0
                          • apollon77
                            apollon77 @K_o_bold last edited by

                            @K_o_bold es geht faktisch beides. In meinen Augen sollte man bei allem neuen das sinnvolle aufzeichnen - also ggf direkt den alias wert.

                            Der „alias“ im History Adapter ist nichts anderes wie das umbiegen der Speicherung auf einen anderen Namen wenn man mal IDs ändern muss und alte Daten behalten will.

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

                              Mit dem alias Adapter bin ich nach den ersten Startschwierigkeiten (fallen über den Bug in der extendObject Methode) sehr zufrieden.

                              Ich hätte da aber noch einen Wunsch, der dem Handling vom HM-IP und deren virtuellen Kanälen geschuldet ist.
                              ich würde verzückt lächeln, wenn ich nicht nur eine read und write funktion für einen Alias angeben könnte, sonden für read und write getrennte alias-IDs.
                              Grund.
                              bespielsweise einen Schaltaktor HM-IP-BSL
                              Kanal 3 enthält den zustand des aktors, z.b. au (true) oder aus (false)
                              kanal 4 ist einer der virtuellen Kanäle zu schalten.

                              Den Zustand würde ich nun gerne aus Kanal 3 auslesen können (read) aber ein Schreben auf Kanal 4 ausführen können (write)

                              geht das jetzt schon ? wenn ja, würde mich der trick interessieren. Wenn nein, ist das ein Wunsch zu Weihnachten ^^

                              gruss, Black

                              In diesem Moment lässt sich dieser Alias Datenpunkt perfekt in Widgets angeben. Mein Wrapper Script arbeitet bei HMIP auch mit 2 getrennen Datenpunkten für read und write, der alias.0 gefällt mir aber besser und da würde ich auch druchgängig drauf wechseln wenn alles geht.

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

                                @Blackmike sagte:

                                Kanal 3 enthält den zustand des aktors, z.b. au (true) oder aus (false)
                                kanal 4 ist einer der virtuellen Kanäle zu schalten.

                                Da wirst Du um ein Skript nicht herum kommen, denn das kann eine allgemein gehaltene Alias-Funktion nicht leisten: Eine Richtung kann Alias automatisch, die andere Richtung dann per Skript.

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

                                  Ich denke zu Weihnachten wird das nix. Das ist recht komplex. Aber leg doch mal ein issue im js-Controller an.

                                  Blackmike 1 Reply Last reply Reply Quote 0
                                  • Blackmike
                                    Blackmike @apollon77 last edited by

                                    @apollon77
                                    mach ich gerne, wenns auf deutsch geht... nur wo find ich den jscontroller auf github für das issue ?

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

                                      @Blackmike sagte:

                                      wo find ich den jscontroller auf github für das issue ?

                                      Hier.

                                      1 Reply Last reply Reply Quote 0
                                      • apollon77
                                        apollon77 @Blackmike last edited by

                                        @Blackmike Klar geht Deutsch auch

                                        Blackmike 1 Reply Last reply Reply Quote 0
                                        • Blackmike
                                          Blackmike @apollon77 last edited by

                                          @apollon77 thnx,.. Done

                                          1 Reply Last reply Reply Quote 0
                                          • A
                                            AggroRalf Developer last edited by

                                            Hi zusammen,

                                            ginge sowas mit der Alias-Funktion auch:

                                            {
                                              "_id": "alias.0.Network.Devices.Server.home.MemoryLoad",
                                              "type": "state",
                                              "common": {
                                                "name": "Server home Memory Usage",
                                                "role": "",
                                                "type": "number",
                                                "read": true,
                                                "write": false,
                                                "desc": "Server home Memory Usage",
                                                "min": 0,
                                                "max": 100,
                                                "def": 0,
                                                "unit": "%",
                                                "alias": {
                                                  "id": "info.0.sysinfo.memory.info.active",
                                                  "read": "val / getState('info.0.sysinfo.memory.info.total').val * 100"
                                                }
                                              },
                                              "native": {},
                                              "from": "system.adapter.admin.0",
                                              "user": "system.user.admin",
                                              "ts": 1577562127481,
                                              "acl": {
                                                "object": 1636,
                                                "state": 1636,
                                                "owner": "system.user.admin",
                                                "ownerGroup": "system.group.administrator"
                                              }
                                            }
                                            

                                            Bekomme im Log einen Fehler hierzu:

                                            (8123) Invalid read function for undefined: val / getState('info.0.sysinfo.memory.info.total').val * 100 => ReferenceError: getState is not defined
                                            

                                            Kann man überhaupt andere Felder zur Berechnung referenzieren ?

                                            Vielen Dank und viele Grüße

                                            Ralf

                                            paul53 apollon77 2 Replies 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

                                            683
                                            Online

                                            31.6k
                                            Users

                                            79.4k
                                            Topics

                                            1.3m
                                            Posts

                                            alias js-controller
                                            85
                                            610
                                            126724
                                            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