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

    • 15. 05. Wartungsarbeiten am ioBroker Forum

    • Monatsrückblick - April 2025

    • Minor js-controller 7.0.7 Update in latest repo

    Fragen / Antworten rund um die neue Alias Funktion

    This topic has been deleted. Only users with topic management privileges can see it.
    • 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
                                        • paul53
                                          paul53 @AggroRalf last edited by

                                          @AggroRalf sagte:

                                            "read": "val / getState('info.0.sysinfo.memory.info.total').val * 100"                                                                                                                                                                            
                                          

                                          In common.alias.read kann nur natives Javascript verwendet werden, keine ioBroker-Erweiterungen.

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

                                            @AggroRalf Mach doch mal ein Feature Request dazu im js.controller GitHub

                                            A 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

                                            763
                                            Online

                                            31.6k
                                            Users

                                            79.4k
                                            Topics

                                            1.3m
                                            Posts

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