Skip to content
  • Home
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • 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

  • Default (No Skin)
  • No Skin
Collapse
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. JavaScript
  5. "select" aus "defaultSendTo" befüllen - jsonConfig.json

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    17
    1
    3.7k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    1.2k

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.5k

"select" aus "defaultSendTo" befüllen - jsonConfig.json

Scheduled Pinned Locked Moved JavaScript
javascript
5 Posts 2 Posters 443 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • jrbwhJ Offline
    jrbwhJ Offline
    jrbwh
    wrote on last edited by
    #1

    Ich habe ein Problem bei der Adapterentwicklung mit select-Feldern in jsonConfig.json und komme nicht weiter.

    Beim Start des Adapters wird eine Liste von Geräten mit zugehörigen Adressen per "defaultSendTo" an jsonConfig.json gesendet. Das funktioniert. Nun möchte ich die Geräte in einem "select" Feld zur Auswahl anbieten. Die jsonConfig.json sieht im Moment so aus:

                            {
                                "type": "select",
                                "attr": "select_dev",
                                "width": "10% ",
                                "title": "Select device",
                                "options": [{"label": "Device 1", "value": "0x680" },
                                            {"label": "Device 2", "value": "0x6A1" },
                                            {"label": "Device 3", "value": "0x6C0" }],
                                "default": "",
                                "newLine": false
                            },
                            {
                                "type": "staticText",
                                "attr": "dev_addr",
                                "width": "5% ",
                                "title": "Address",
                                "tooltip": "Device Address to send requests to.",
                                "text": "${data.select_dev}",
                                "newLine": false
                            },
    

    Das wird so dargestellt:
    00a40e16-9a8c-4488-8b15-45b8a543a185-image.png

    Jetzt sollen statt "Device 1" usw. die Geräte aus den "defaultSendTo" Daten erscheinen. Auch die Anzahl der Geräte kann sich natürlich ändern. Trotz viel Probierens ist es mir nicht gelungen, dynamische Daten irgendeiner Art in die select-Auswahl zu bekommen. Und die strukturierten Daten aus "defaultSendTo" schon gar nicht.

    Weiß jemand, wie das geht?

    T 1 Reply Last reply
    0
    • jrbwhJ jrbwh

      Ich habe ein Problem bei der Adapterentwicklung mit select-Feldern in jsonConfig.json und komme nicht weiter.

      Beim Start des Adapters wird eine Liste von Geräten mit zugehörigen Adressen per "defaultSendTo" an jsonConfig.json gesendet. Das funktioniert. Nun möchte ich die Geräte in einem "select" Feld zur Auswahl anbieten. Die jsonConfig.json sieht im Moment so aus:

                              {
                                  "type": "select",
                                  "attr": "select_dev",
                                  "width": "10% ",
                                  "title": "Select device",
                                  "options": [{"label": "Device 1", "value": "0x680" },
                                              {"label": "Device 2", "value": "0x6A1" },
                                              {"label": "Device 3", "value": "0x6C0" }],
                                  "default": "",
                                  "newLine": false
                              },
                              {
                                  "type": "staticText",
                                  "attr": "dev_addr",
                                  "width": "5% ",
                                  "title": "Address",
                                  "tooltip": "Device Address to send requests to.",
                                  "text": "${data.select_dev}",
                                  "newLine": false
                              },
      

      Das wird so dargestellt:
      00a40e16-9a8c-4488-8b15-45b8a543a185-image.png

      Jetzt sollen statt "Device 1" usw. die Geräte aus den "defaultSendTo" Daten erscheinen. Auch die Anzahl der Geräte kann sich natürlich ändern. Trotz viel Probierens ist es mir nicht gelungen, dynamische Daten irgendeiner Art in die select-Auswahl zu bekommen. Und die strukturierten Daten aus "defaultSendTo" schon gar nicht.

      Weiß jemand, wie das geht?

      T Do not disturb
      T Do not disturb
      ticaki
      wrote on last edited by ticaki
      #2

      @jrbwh

      benutze selectSendTo

                          "type": "selectSendTo",
                          "command": "filterType",
                          "jsonData": "{ \"service\": \"dwdService\" }",
                          "manual": false,
                          "multiple": true,
                          "xs": 12,
                          "sm": 12,
                          "md": 8,
                          "lg": 4,
                          "label": "TypeFilter",
                          "tooltip": "TypeFilter",
                          "newLine": true
      

      wenn du im starter developer channel telegram bist, kannste auch einfach da fragen.

      https://www.iobroker.dev

      Weather-Warnings Espresense NSPanel-Lovelace-ui Tagesschau

      Spenden

      1 Reply Last reply
      0
      • jrbwhJ Offline
        jrbwhJ Offline
        jrbwh
        wrote on last edited by
        #3

        @ticaki Danke für die schnelle Rückmeldung. selectSendTo habe ich mir auch schon angeschaut, bin aber nicht klar gekommen. Ok, ich schaue es mir nochmal an, vielleicht platzt dann der Knoten.

        Bei telegram bin ich (noch) nicht. Die Anzahl der Informationskanäle ist echt ein bisschen unübersichtlich ;-)

        Schöne Grüße
        Jürgen

        T 1 Reply Last reply
        0
        • jrbwhJ jrbwh

          @ticaki Danke für die schnelle Rückmeldung. selectSendTo habe ich mir auch schon angeschaut, bin aber nicht klar gekommen. Ok, ich schaue es mir nochmal an, vielleicht platzt dann der Knoten.

          Bei telegram bin ich (noch) nicht. Die Anzahl der Informationskanäle ist echt ein bisschen unübersichtlich ;-)

          Schöne Grüße
          Jürgen

          T Do not disturb
          T Do not disturb
          ticaki
          wrote on last edited by ticaki
          #4

          @jrbwh

          Jo, da bekommt am schnellsten die Richtung gezeigt ;) und dann darf man sich quer durch github lesen. Btw du kannst dir diesen demoadapter ansehen, der zeigt sehr viel:
          https://github.com/mcm1957/ioBroker.jsonconfig-demo

          Ich kenne mich recht gut mit der jsonconfig aus scheu dich nicht zu fragen.

          EDIT: zu dem obrigen jsonconfig.json teil stück gehört dieser Code in main. Na der ist zu kompliziert das hier passt:

                      case 'filterType': 
                              if (obj.callback) {
                                  const reply = [];
                                  const text = ['kein', 'leicht', 'mittel', 'schwer', 'extrem', 'gibts nicht'];
                                  for (const a in text) {
                                      if (Number(a) == 5) break;
                                      reply.push({
                                          label:  text[a as keyof typeof text],
                                          value: Number(a),
                                      });
                                  }
                                  //this.log.debug(obj.command + ': ' + JSON.stringify(reply));
                                  this.sendTo(obj.from, obj.command, reply, obj.callback);
                              }
                              break;
          

          Weather-Warnings Espresense NSPanel-Lovelace-ui Tagesschau

          Spenden

          jrbwhJ 1 Reply Last reply
          0
          • T ticaki

            @jrbwh

            Jo, da bekommt am schnellsten die Richtung gezeigt ;) und dann darf man sich quer durch github lesen. Btw du kannst dir diesen demoadapter ansehen, der zeigt sehr viel:
            https://github.com/mcm1957/ioBroker.jsonconfig-demo

            Ich kenne mich recht gut mit der jsonconfig aus scheu dich nicht zu fragen.

            EDIT: zu dem obrigen jsonconfig.json teil stück gehört dieser Code in main. Na der ist zu kompliziert das hier passt:

                        case 'filterType': 
                                if (obj.callback) {
                                    const reply = [];
                                    const text = ['kein', 'leicht', 'mittel', 'schwer', 'extrem', 'gibts nicht'];
                                    for (const a in text) {
                                        if (Number(a) == 5) break;
                                        reply.push({
                                            label:  text[a as keyof typeof text],
                                            value: Number(a),
                                        });
                                    }
                                    //this.log.debug(obj.command + ': ' + JSON.stringify(reply));
                                    this.sendTo(obj.from, obj.command, reply, obj.callback);
                                }
                                break;
            
            jrbwhJ Offline
            jrbwhJ Offline
            jrbwh
            wrote on last edited by
            #5

            @ticaki Klasse! Hab's jetzt geschafft, das Beispiel aus der Adapter-Doku (Serielle Ports abfragen und senden) nachzuvollziehen. Läuft nun in meiner Config.
            Jetzt muss ich es "nur noch" auf meine Device-Adresse umbauen.

            Herzlichen Dank für Deine Hilfe und Deine Infos. Brauche noch eine Weile, um alles zu verdauen. Dein Code-Beispiel habe ich noch nicht ganz verstanden, aber es ist auch schon spät ;-)

            Schöne Grüße
            Jürgen

            1 Reply Last reply
            0
            Reply
            • Reply as topic
            Log in to reply
            • Oldest to Newest
            • Newest to Oldest
            • Most Votes


            Support us

            ioBroker
            Community Adapters
            Donate

            699

            Online

            32.7k

            Users

            82.4k

            Topics

            1.3m

            Posts
            Community
            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
            ioBroker Community 2014-2025
            logo
            • Login

            • Don't have an account? Register

            • Login or register to search.
            • First post
              Last post
            0
            • Home
            • Recent
            • Tags
            • Unread 0
            • Categories
            • Unreplied
            • Popular
            • GitHub
            • Docu
            • Hilfe