Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. Objektname auslesen und verwenden

    NEWS

    • Wir empfehlen: Node.js 22.x

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker goes Matter ... Matter Adapter in Stable

    Objektname auslesen und verwenden

    This topic has been deleted. Only users with topic management privileges can see it.
    • paul53
      paul53 @paddy2 last edited by

      @paddy2 sagte: den Namen als Wert auszulesen?

      JS-Funktion mit Ergebnis: parentName(id)

      mickym 1 Reply Last reply Reply Quote 0
      • mickym
        mickym Most Active @paul53 last edited by mickym

        @paul53 Das hilft auch nicht, wenn man die id über den Namen rausbekommen will, deswegen habe ich ja die JS-Funktion mit Ergebnis:

        getIdByName(name) genommen.

        Das kann man natürlich noch in den parentName einbinden - aber ich dachte mit der Liste ist sie flexibler durch die Hierarchien zu wandern.

        David G. 1 Reply Last reply Reply Quote 0
        • David G.
          David G. @mickym last edited by David G.

          @mickym

          Ich glaube, er möchte das gelb hervorgehobe auslesen wenn er einen DP eine Ebene tiefer auswählt.

          Das wäre ja Pauls Vorschlag. Den ich ähnlich auch schon nutze.

          Wie werden es nachher erfahren ^^.

          mickym 1 Reply Last reply Reply Quote 0
          • mickym
            mickym Most Active @David G. last edited by mickym

            @david-g Gut ich bin davon ausgegangen, dass

            Fentsterkontakt Büro Paddy OG ==> 000DA49A37143

            liefern soll und dass 000DA49A37143 in einen eigenen Datenpunkt geschrieben werden soll. Das Problem wird sowieso sein, dass der Ordner 000DA49A37143.1 gleich wie der übergeordnete Ordner heißt, dann funktioniert mein Script auch nicht. Der Ordner müsste eigentlich Fentsterkontakt Büro Paddy OG:1 heißen, sowie bei 2 auch. 😉

            Die Funktion getIdByName(name) gibt dann ein Array zurück und auch das muss man ja unterbinden, deshalb die Typprüfung, weil sonst kann man das übergeordnete Objekt ja nicht eindeutig identifizieren, weil Namen ja nicht eindeutig sein müssen.

            1 Reply Last reply Reply Quote 0
            • P
              paddy2 last edited by

              Euch allen vielen Dank für eure Hilfe!

              Nach zweiter Durchsicht war meine Beschreibung tatsächlich ein wenig verwirrend.

              Ich suche nach einer geeigneten Möglichkeit, am liebsten Mittels Blockly, den Wert "Namen" auszulesen.

              Anschliessend möchte ich diesen Wert in einen DP setzen.

              997ffa00-5a9a-4e79-b3a7-7a6360edec05-image.png

              Falls eine obengenannte Variante dies kann, werde ich mich daran versuchen...

              Am Ende der Übung soll die Sprachsteuerung die Öffnungen präzise bezeichnen können ohne das ich alle IFTTT einzeln bezeichnen muss...

              Danke euch!

              T 1 Reply Last reply Reply Quote 0
              • T
                TT-Tom @paddy2 last edited by TT-Tom

                @paddy2 dann kannst du das verwenden
                Bildschirmfoto 2023-04-18 um 09.17.46.png

                name kommt vom Triggerbaustein. Wenn du mehrere States über wachen willst, dann nimm statt Objekt ID den Selektor. habe ich weiter oben schon mal gezeigt.

                1 Reply Last reply Reply Quote 1
                • paul53
                  paul53 @paddy2 last edited by paul53

                  @paddy2 sagte: Objektname (übergeordneter Name) auslesen und anschliessend den Wert in einem Datenpunkt setzen.

                  Wenn es der gelb markierte Gerätename sein soll:

                  Blockly_temp.JPG

                  1 Reply Last reply Reply Quote 2
                  • P
                    paddy2 last edited by

                    @paul53 @TT-Tom
                    Weltklasse! Das nenn ich mal effiziente Hilfe 🙂

                    a517108c-434d-4888-9aa7-30da66f967d0-image.png

                    Hat einwandfrei geklappt!

                    Euch allen herzlichen Dank!

                    D 1 Reply Last reply Reply Quote 0
                    • D
                      dtp @paddy2 last edited by dtp

                      Ich würde mich hier gerne mit einer Frage einklinken. Ich finde den Befehle "getIdByName" sehr interessant, aber er liefert halt - wie oben schon erwähnt - dann ein Array, wenn der Name mehrmals existiert, was das z.B. bei der Nutzung des alexa2-Adapters vorkommen kann. So liefert mir z.B. die Abfrage

                      const triggerId = getIdByName('Büro Rollo links');
                      

                      das Resultat

                      ['tradfri.0.B-65542','alexa2.0.Smart-Home-Devices.280d2f90-4dc8-4474-9e5d-ca221f8fdfdb']
                      

                      De facto möchte ich aber nur den ersten Datenpunkt nutzen. Den würde mir ja dann

                      triggerId[0]
                      

                      liefern, aber wie kann ich sicherstellen, dass ich immer auf den Datenpunkt "tradfri..." zurückgreife? Die Reihenfolge könnte sich ja auch mal ändern, oder?

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

                        @dtp

                        if(triggerId[0].startsWith('tradfri')) id = triggerId[0];
                        else id = triggerId[1]
                        
                        1 Reply Last reply Reply Quote 0
                        • First post
                          Last post

                        Support us

                        ioBroker
                        Community Adapters
                        Donate

                        454
                        Online

                        32.0k
                        Users

                        80.4k
                        Topics

                        1.3m
                        Posts

                        6
                        15
                        1123
                        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