Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. JavaScript
  5. sprechender Device-Name statt ID

NEWS

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    11
    1
    532

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    24
    1
    1.7k

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    9.6k

sprechender Device-Name statt ID

Geplant Angeheftet Gesperrt Verschoben JavaScript
10 Beiträge 4 Kommentatoren 1.9k Aufrufe 2 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • R Offline
    R Offline
    radioman
    schrieb am zuletzt editiert von
    #1

    Kann man mit JavaScript die Device-Namen auslesen und Datenpunkte nur bestimmter Devices - über deren sprechenden Namen - ansprechen?
    Ich würde gern im Log die sprechenden Namen (rot eingerahmt) statt der IDs (blau eingerahmt) ausgeben und auch im Script verwenden können.
    Screenshot1.JPG

    Derzeit mache ich es von hinten durch die Brust über geschachtelten Schleifen mittels

    $('deconz.0.lights.*.ct').each(function (id) {
         let idstring = id.replace("ct","");
         if (getState(idstring+"xy").val) {
    

    indem ich erst alle Devices suche, die einen bestimmten Datenpunkt enthalten (z.b. alle, die eine Farbtemperatureinstellung zulassen = alle Hue-Lampen), um dann über einen zweiten Datenpunkt die wieder rauszuwerfen die ich nicht brauche (z.B. alle, die eine Farbeinstellung zulassen werfe ich wieder raus, um schlussendlich an die Ambilight-Lampen ohne die Color-Lampen zu kommen).

    Wo wir gerade dabei sind: wie kann man eigentlich die Schriftgröße in der ioBroker Objects Ansicht ändern? Bei mir werden die Buchstaben der Namen (komischerweise nur bei diesen) immer unten abgeschnitten - siehe Screenshot oben. Es scheint so, dass (nur) die Namen einen größeren Abstand zu ihrer jeweiligen Zeilengrenze oben einhalten müssen und deshalb nach unten versetzt sind.

    paul53P 1 Antwort Letzte Antwort
    0
    • R radioman

      Kann man mit JavaScript die Device-Namen auslesen und Datenpunkte nur bestimmter Devices - über deren sprechenden Namen - ansprechen?
      Ich würde gern im Log die sprechenden Namen (rot eingerahmt) statt der IDs (blau eingerahmt) ausgeben und auch im Script verwenden können.
      Screenshot1.JPG

      Derzeit mache ich es von hinten durch die Brust über geschachtelten Schleifen mittels

      $('deconz.0.lights.*.ct').each(function (id) {
           let idstring = id.replace("ct","");
           if (getState(idstring+"xy").val) {
      

      indem ich erst alle Devices suche, die einen bestimmten Datenpunkt enthalten (z.b. alle, die eine Farbtemperatureinstellung zulassen = alle Hue-Lampen), um dann über einen zweiten Datenpunkt die wieder rauszuwerfen die ich nicht brauche (z.B. alle, die eine Farbeinstellung zulassen werfe ich wieder raus, um schlussendlich an die Ambilight-Lampen ohne die Color-Lampen zu kommen).

      Wo wir gerade dabei sind: wie kann man eigentlich die Schriftgröße in der ioBroker Objects Ansicht ändern? Bei mir werden die Buchstaben der Namen (komischerweise nur bei diesen) immer unten abgeschnitten - siehe Screenshot oben. Es scheint so, dass (nur) die Namen einen größeren Abstand zu ihrer jeweiligen Zeilengrenze oben einhalten müssen und deshalb nach unten versetzt sind.

      paul53P Offline
      paul53P Offline
      paul53
      schrieb am zuletzt editiert von
      #2

      @radioman sagte:

      mit JavaScript die Device-Namen auslesen

      Siehe hier

      Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
      Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

      R 1 Antwort Letzte Antwort
      0
      • paul53P paul53

        @radioman sagte:

        mit JavaScript die Device-Namen auslesen

        Siehe hier

        R Offline
        R Offline
        radioman
        schrieb am zuletzt editiert von
        #3

        Dankeschön @paul53 - klappt damit wunderbar:

        $('deconz.0.lights.*.bri').each(function (id) {
            id = id.substring(0, id.lastIndexOf('.'));
            console.log("Name: " + getObject(id).common.name);
            id = id.substring(0, id.lastIndexOf('.'));
            console.log("Gruppe: " + getObject(id).common.name);
        

        Noch eleganter wäre natürlich, wenn ich sogar gleich auf das Lampenmodell zugreifen könnte - gibt es da auch etwas?:
        Screenshot2.JPG

        HomoranH Jey CeeJ 2 Antworten Letzte Antwort
        0
        • R radioman

          Dankeschön @paul53 - klappt damit wunderbar:

          $('deconz.0.lights.*.bri').each(function (id) {
              id = id.substring(0, id.lastIndexOf('.'));
              console.log("Name: " + getObject(id).common.name);
              id = id.substring(0, id.lastIndexOf('.'));
              console.log("Gruppe: " + getObject(id).common.name);
          

          Noch eleganter wäre natürlich, wenn ich sogar gleich auf das Lampenmodell zugreifen könnte - gibt es da auch etwas?:
          Screenshot2.JPG

          HomoranH Nicht stören
          HomoranH Nicht stören
          Homoran
          Global Moderator Administrators
          schrieb am zuletzt editiert von
          #4

          @radioman sagte in sprechender Device-Name statt ID:

          wenn ich sogar gleich auf das Lampenmodell zugreifen könnte - gibt es da auch etwas?:

          wie sieht denn dazu der State unter Objekten aus?

          kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

          Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

          der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

          1 Antwort Letzte Antwort
          0
          • R radioman

            Dankeschön @paul53 - klappt damit wunderbar:

            $('deconz.0.lights.*.bri').each(function (id) {
                id = id.substring(0, id.lastIndexOf('.'));
                console.log("Name: " + getObject(id).common.name);
                id = id.substring(0, id.lastIndexOf('.'));
                console.log("Gruppe: " + getObject(id).common.name);
            

            Noch eleganter wäre natürlich, wenn ich sogar gleich auf das Lampenmodell zugreifen könnte - gibt es da auch etwas?:
            Screenshot2.JPG

            Jey CeeJ Online
            Jey CeeJ Online
            Jey Cee
            Developer
            schrieb am zuletzt editiert von
            #5

            @radioman

            native.modelid
            

            statt

            common.name
            

            Persönlicher Support
            Spenden -> paypal.me/J3YC33

            R 1 Antwort Letzte Antwort
            0
            • Jey CeeJ Jey Cee

              @radioman

              native.modelid
              

              statt

              common.name
              
              R Offline
              R Offline
              radioman
              schrieb am zuletzt editiert von
              #6

              @Jey-Cee said in sprechender Device-Name statt ID:

              native.modelid

              Super - Ihr seid klasse (& schnell). Besten Dank.

              Es ist sicherlich etwas naiv von mir, über native.manufacturer gleich noch an den Hersteller rankommen zu wollen, oder?

              $('deconz.0.lights.*.bri').each(function (id) {
                  id = id.substring(0, id.lastIndexOf('.'));
                  console.log("Name: " + getObject(id).common.name);
                  console.log("Name2: " + getObject(id).native.modelid);
                  console.log("Name4: " + getObject(id).native.manufacturer);
                  console.log("Name3: " + getObject(id).native);
                  id = id.substring(0, id.lastIndexOf('.'));
                  console.log("Gruppe: " + getObject(id).common.name);
              

              Aber der jetzige Log davon, bringt mich auch schon viel weiter:

              16:03:10.464 info javascript.0 (1573) script.js.common.Licht_Dimmer: Name: OZ_Decke2
              16:03:10.464 info javascript.0 (1573) script.js.common.Licht_Dimmer: Name2: LCA001
              16:03:10.465 info javascript.0 (1573) script.js.common.Licht_Dimmer: Name4: undefined
              16:03:10.466 info javascript.0 (1573) script.js.common.Licht_Dimmer: Name3: [object Object]
              16:03:10.467 info javascript.0 (1573) script.js.common.Licht_Dimmer: Gruppe: Lights

              Jey CeeJ 1 Antwort Letzte Antwort
              0
              • R radioman

                @Jey-Cee said in sprechender Device-Name statt ID:

                native.modelid

                Super - Ihr seid klasse (& schnell). Besten Dank.

                Es ist sicherlich etwas naiv von mir, über native.manufacturer gleich noch an den Hersteller rankommen zu wollen, oder?

                $('deconz.0.lights.*.bri').each(function (id) {
                    id = id.substring(0, id.lastIndexOf('.'));
                    console.log("Name: " + getObject(id).common.name);
                    console.log("Name2: " + getObject(id).native.modelid);
                    console.log("Name4: " + getObject(id).native.manufacturer);
                    console.log("Name3: " + getObject(id).native);
                    id = id.substring(0, id.lastIndexOf('.'));
                    console.log("Gruppe: " + getObject(id).common.name);
                

                Aber der jetzige Log davon, bringt mich auch schon viel weiter:

                16:03:10.464 info javascript.0 (1573) script.js.common.Licht_Dimmer: Name: OZ_Decke2
                16:03:10.464 info javascript.0 (1573) script.js.common.Licht_Dimmer: Name2: LCA001
                16:03:10.465 info javascript.0 (1573) script.js.common.Licht_Dimmer: Name4: undefined
                16:03:10.466 info javascript.0 (1573) script.js.common.Licht_Dimmer: Name3: [object Object]
                16:03:10.467 info javascript.0 (1573) script.js.common.Licht_Dimmer: Gruppe: Lights

                Jey CeeJ Online
                Jey CeeJ Online
                Jey Cee
                Developer
                schrieb am zuletzt editiert von
                #7

                @radioman sagte in sprechender Device-Name statt ID:

                Es ist sicherlich etwas naiv von mir, über native.manufacturer gleich noch an den Hersteller rankommen zu wollen, oder?

                native.manufacturername
                

                Persönlicher Support
                Spenden -> paypal.me/J3YC33

                R 1 Antwort Letzte Antwort
                0
                • Jey CeeJ Jey Cee

                  @radioman sagte in sprechender Device-Name statt ID:

                  Es ist sicherlich etwas naiv von mir, über native.manufacturer gleich noch an den Hersteller rankommen zu wollen, oder?

                  native.manufacturername
                  
                  R Offline
                  R Offline
                  radioman
                  schrieb am zuletzt editiert von
                  #8

                  Vielen Dank, @Jey-Cee - Dein Insiderwissen beim deconz Adapter ist Top! ;-)

                  Aber wenn ich wieder einmal wie die Ochs vorm Tor stehe: woher bekomme ich solche Infos, was ein Adapter alles bereitstellt? Ich habe ja nur geraten, dass wenn "Model ID" übersetzt "modelid" heißt dann "Manufacturer" "manufacturer" heißen könnte. Auf "manufacturername" bin ich leider nicht gekommen. In für mich verständlichen Dokus hatte ich nichts gefunden und auch wenn ich jetzt nach native* suche finde ich nichts baruchbares.

                  Das mit *.common.name hatte ich zwar vorher über die Suchfunktion des Forums auch gefunden und auch in der Doku mich belesen, aber scheinbar einen Fehler drin gehabt, denn ich bekam darüber nur die names der Datenpunkte selber raus.

                  Jey CeeJ 1 Antwort Letzte Antwort
                  0
                  • R radioman

                    Vielen Dank, @Jey-Cee - Dein Insiderwissen beim deconz Adapter ist Top! ;-)

                    Aber wenn ich wieder einmal wie die Ochs vorm Tor stehe: woher bekomme ich solche Infos, was ein Adapter alles bereitstellt? Ich habe ja nur geraten, dass wenn "Model ID" übersetzt "modelid" heißt dann "Manufacturer" "manufacturer" heißen könnte. Auf "manufacturername" bin ich leider nicht gekommen. In für mich verständlichen Dokus hatte ich nichts gefunden und auch wenn ich jetzt nach native* suche finde ich nichts baruchbares.

                    Das mit *.common.name hatte ich zwar vorher über die Suchfunktion des Forums auch gefunden und auch in der Doku mich belesen, aber scheinbar einen Fehler drin gehabt, denn ich bekam darüber nur die names der Datenpunkte selber raus.

                    Jey CeeJ Online
                    Jey CeeJ Online
                    Jey Cee
                    Developer
                    schrieb am zuletzt editiert von Jey Cee
                    #9

                    @radioman schau mal hier: https://www.youtube.com/watch?v=fyDuxaJelRM

                    EDIT: Hier habe ich auch noch was dazu geschrieben: https://forum.iobroker.net/topic/36837/das-volle-potential-der-objekte-nutzen

                    Persönlicher Support
                    Spenden -> paypal.me/J3YC33

                    R 1 Antwort Letzte Antwort
                    0
                    • Jey CeeJ Jey Cee

                      @radioman schau mal hier: https://www.youtube.com/watch?v=fyDuxaJelRM

                      EDIT: Hier habe ich auch noch was dazu geschrieben: https://forum.iobroker.net/topic/36837/das-volle-potential-der-objekte-nutzen

                      R Offline
                      R Offline
                      radioman
                      schrieb am zuletzt editiert von
                      #10

                      @Jey-Cee said in sprechender Device-Name statt ID:

                      https://forum.iobroker.net/topic/36837/das-volle-potential-der-objekte-nutzen

                      Top, hatte ich noch nicht auf dem Schirm - vielen Dank!

                      1 Antwort Letzte Antwort
                      0
                      Antworten
                      • In einem neuen Thema antworten
                      Anmelden zum Antworten
                      • Älteste zuerst
                      • Neuste zuerst
                      • Meiste Stimmen


                      Support us

                      ioBroker
                      Community Adapters
                      Donate

                      744

                      Online

                      32.5k

                      Benutzer

                      81.8k

                      Themen

                      1.3m

                      Beiträge
                      Community
                      Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                      ioBroker Community 2014-2025
                      logo
                      • Anmelden

                      • Du hast noch kein Konto? Registrieren

                      • Anmelden oder registrieren, um zu suchen
                      • Erster Beitrag
                        Letzter Beitrag
                      0
                      • Home
                      • Aktuell
                      • Tags
                      • Ungelesen 0
                      • Kategorien
                      • Unreplied
                      • Beliebt
                      • GitHub
                      • Docu
                      • Hilfe