Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Einsteigerfragen
    4. Automatisierung
    5. Gerätename aus Liste auslesen -Blockly

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Gerätename aus Liste auslesen -Blockly

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

      @paul53 sagte in Gerätename aus Liste auslesen -Blockly:

      Wenn der Objekt-Typ nicht geprüft wird, handelt es sich um den "Parentname".

      Stimmt auch wieder. Ist eindeutiger 👍

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

        @paul53
        Geht nicht:

        javascript.0 (886) script.js.Testscripte.Skript_1: Die Batterie in Zimmer alias.0.OG.xxx.xxx.LOWBAT muss ausgetauscht werden mit dem Kanal-Namen: [object Object]!
        
        paul53 Codierknecht 3 Replies Last reply Reply Quote 0
        • paul53
          paul53 @Bert 0 last edited by

          @bert-0
          Weshalb ist den Name ein Objekt? Ist er mehrsprachig?

          Was gibt der untere Debug-Block aus, wenn er ergänzt wird?

          Bild_2022-12-21_115213837.png

          B 2 Replies Last reply Reply Quote 0
          • Codierknecht
            Codierknecht Developer Most Active @Bert 0 last edited by

            @bert-0
            Aso bei mir funzt Paul's Blockly wunderbar:
            97603869-71e5-4fe7-a7be-a27acf019ff3-image.png

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

              @bert-0
              Wie sieht denn der Objektbaum an der Ecke aus?

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

                @paul53

                11:56:20.299	info	javascript.0 (886) script.js.Testscripte.Skript_1: getState(id=alias.0.OG.Schlafzimmer.Fenster_Schlafzimmer.LOWBAT, timerId=undefined) => {"val":true,"ack":true,"ts":xxxxxxxxx,"q":0,"from":"system.adapter.zigbee.0","user":"system.user.admin","lc":xxxxxxxxx}
                11:56:20.300	info	javascript.0 (886) script.js.Testscripte.Skript_1: getObject(id=alias.0.OG.Schlafzimmer.Fenster_Schlafzimmer, enumName=undefined) => {"_id":"alias.0.OG.Schlafzimmer.Fenster_Schlafzimmer","common":{"name":{"de":"Fenster Schlafzimmer"},"role":"window","icon":"","color":null},"native":{},"type":"channel","from":"system.adapter.admin.0","user":"system.user.admin","ts":xxxxxxxxx,"acl":{"object":1636,"owner":"system.user.admin","ownerGroup":"system.group.administrator"}}
                11:56:20.300	info	javascript.0 (886) script.js.Testscripte.Skript_1: Die Batterie in Zimmer alias.0.OG.Schlafzimmer.Fenster_Schlafzimmer.LOWBAT muss ausgetauscht werden mit dem Kanal-Namen: [object Object]!
                11:56:20.300	info	javascript.0 (886) script.js.Testscripte.Skript_1: getObject(id=alias.0.OG.Schlafzimmer.Fenster_Schlafzimmer, enumName=undefined) => {"_id":"alias.0.OG.Schlafzimmer.Fenster_Schlafzimmer","common":{"name":{"de":"Fenster Schlafzimmer"},"role":"window","icon":"","color":null},"native":{},"type":"channel","from":"system.adapter.admin.0","user":"system.user.admin","ts":xxxxxxxxx,"acl":{"object":1636,"owner":"system.user.admin","ownerGroup":"system.group.administrator"}}
                11:56:20.300	info	javascript.0 (886) script.js.Testscripte.Skript_1: {'de':'Fenster Schlafzimmer'}
                

                Was meinst du mit Name ein Objekt?

                Bert

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

                  @bert-0 sagte: Was meinst du mit Name ein Objekt?

                  Genau das:

                   {'de':'Fenster Schlafzimmer'}
                  

                  Dann hänge noch ein .de in der Funktion dran:

                  id = id.substring(0, id.lastIndexOf('.'));
                  if(existsObject(id)) return getObject(id).common.name.de;
                  

                  Funktioniert so aber nur, wenn es immer eine Objekt ist mit {de: 'Kanalname'}. Andernfalls muss der Typ geprüft werden.

                  id = id.substring(0, id.lastIndexOf('.'));
                  if(existsObject(id)) {
                      let pName = getObject(id).common.name;
                      if(typeof pName == 'object') return pName.de;
                      return pName;
                  }
                  
                  B 1 Reply Last reply Reply Quote 0
                  • B
                    Bert 0 @paul53 last edited by

                    @paul53
                    Danke dir, passt.👍

                    noch eine letzte Frage: Wie hast du die Funktion in Blockly eingefügt? Gibt es eine Möglichkeit von Javascript zurück zu Blockly?
                    Bert

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

                      @bert-0 sagte: Wie hast du die Funktion in Blockly eingefügt?

                      Verstehe die Frage nicht. Man sieht es hier. Das ist Blockly mit einem Block "JS-Funktion mit Ergebnis".

                      Bild_2022-12-21_131220409.png

                      Diese JS-Funktion benötigt man, da Blockly keinen "getObject(id)"-Block bietet.

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

                        @paul53 Ok sorry, bei mir hatte sich der Editor nicht geöffnet. geht jetzt.

                        Danke

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

                        Support us

                        ioBroker
                        Community Adapters
                        Donate

                        514
                        Online

                        31.7k
                        Users

                        79.7k
                        Topics

                        1.3m
                        Posts

                        3
                        20
                        1154
                        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