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. Entwicklung
  4. [Closed] REST-Ergebnis für Instanz-Vorbelegung

NEWS

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

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

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.4k

[Closed] REST-Ergebnis für Instanz-Vorbelegung

Geplant Angeheftet Gesperrt Verschoben Entwicklung
rest
6 Beiträge 2 Kommentatoren 572 Aufrufe
  • Ä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.
  • smaragdschlangeS Offline
    smaragdschlangeS Offline
    smaragdschlange
    schrieb am zuletzt editiert von smaragdschlange
    #1

    Hallo,

    ich habe einen (NUKI) Adapter gebaut, für den ich bei der Instanzerzeugung für einen der Eingabeparameter eine Auswahlliste erzeugen möchte. Die Werte der Auswahlliste sollen dynamisch über einen RESTful-Aufruf als JSON abgerufen werden*. Ich habe in den Anleitungen nicht gefunden, wie bzw. ob so etwas machbar ist.

    Kann mir jemand einen Tipp geben, an welcher Stelle ich ansetzen muss/kann um 1. die URL aufzurufen und 2. die empfangene Liste als Selekt-Werteliste im Parameterfeld der index_m.html anzubinden?

    *Es handelt sich bei der URL um die Bridge-Discovery URL von NUKI (https://api.nuki.io/discover/bridges). Nix Schlimmes ;)

    Wäre wirklich toll, wenn mir da jemand auf die Sprünge helfen könnte.

    Gruß,

    Sven

    Gruß,

    Sven

    1 Antwort Letzte Antwort
    0
    • Jey CeeJ Online
      Jey CeeJ Online
      Jey Cee
      Developer
      schrieb am zuletzt editiert von
      #2

      Zum Abrufen kannst du https://nodejs.org/api/http.html#http_http_get_options_callback verwenden.

      Um das ganze in die Config zu bekommen kannst du hier Spicken:

      https://github.com/Jey-Cee/ioBroker.eno … .html#L132

      https://github.com/Jey-Cee/ioBroker.eno … .html#L493

      https://github.com/Jey-Cee/ioBroker.eno … in.js#L552

      Ich hoffe das bringt dich weiter.

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

      1 Antwort Letzte Antwort
      0
      • smaragdschlangeS Offline
        smaragdschlangeS Offline
        smaragdschlange
        schrieb am zuletzt editiert von
        #3

        Vielen Dank Jey!

        Ich hatte bisher noch keine Zeit, Deine Lösung auszuprobieren, aber ich werde berichten, wenn ich dazu komme.

        Gruß,

        Sven

        Gruß,

        Sven

        1 Antwort Letzte Antwort
        0
        • smaragdschlangeS Offline
          smaragdschlangeS Offline
          smaragdschlange
          schrieb am zuletzt editiert von
          #4

          Hallo nochmal,

          danke Dir Jey Cee, die Links waren sehr hilfreich, und ich habe verstanden, wie ich eine Werteliste aufbauen und auch an den Adapter senden kann.

          Leider habe ich den HTTP-Aufruf bisher nicht hinbekommen. Es handelt sich bei der aufzurufenden URL um eine HTTPS-Adresse, die laut Doku der normale http.get nicht unterstützt wird. Deshalb hab ich zwei Ansätze versucht:
          <list type="1.">* Ich habe mit require("https") versucht, einen https.get auszuführen.
          <list type="2.">* Ich habe das Ganze über request versucht (was im Adapter selbst auch wunderbar funktioniert) und dazu ein require("request") eingefügt.
          Leider war beides erfolglos. Offenbar verursacht der Require-Befehl bereits einen Fehler und die HTML-Seite wird nicht vollständig aufgebaut.

          Da es mir bislang nicht gelungen ist, eine funktionierende Debugging-Umgebung hinzustellen :roll: , ist das für mich Trial-and-Error, ich erhalte auch keine Konsolen-Messages :(

          Wahrscheinlich sollte der ganze Aufruf eher in ein Adapter-Js im Discovery-Adapter, aber ich hätte wirklich gern gewusst, wie dieses Problem zu lösen ist, weil ich dadurch in nur einer einzigen Instanz sämtliche Nuki-Bridges und somit alle im LAN verfügbaren Nuki-Schlösser steuern könnte.

          Vielen Dank für Eure Hilfe.

          Gruß,

          Sven

          Gruß,

          Sven

          1 Antwort Letzte Antwort
          0
          • Jey CeeJ Online
            Jey CeeJ Online
            Jey Cee
            Developer
            schrieb am zuletzt editiert von
            #5

            @smaragdschlange:

            Deshalb hab ich zwei Ansätze versucht:

            Ich habe mit require("https") versucht, einen https.get auszuführen.

            Ich habe das Ganze über request versucht (was im Adapter selbst auch wunderbar funktioniert) und dazu ein require("request") eingefügt.

            Leider war beides erfolglos. Offenbar verursacht der Require-Befehl bereits einen Fehler und die HTML-Seite wird nicht vollständig aufgebaut. ` Kannst du mal den Code zeigen?

            @smaragdschlange:

            Da es mir bislang nicht gelungen ist, eine funktionierende Debugging-Umgebung hinzustellen , ist das für mich Trial-and-Error, ich erhalte auch keine Konsolen-Messages ` Welche IDE oder Editor verwendest du?

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

            1 Antwort Letzte Antwort
            0
            • smaragdschlangeS Offline
              smaragdschlangeS Offline
              smaragdschlange
              schrieb am zuletzt editiert von
              #6

              Hi,

              hier der Code des https.get-Ansatzes:

              function getNukiBridges() {
                      const https = require('https');
              
                      https.get('https://api.nuki.io/discover/bridges', (resp) => {
                      let data = '';
              
                      // A chunk of data has been recieved.
                      resp.on('data', (chunk) => {
                          data += chunk;
                      });
              
                      // The whole response has been received. Print out the result.
                      resp.on('end', () => {
                          console.log(JSON.parse(data).explanation);
                      });
              
                      }).on("error", (err) => {
                      console.log("Error: " + err.message);
                      });
              }
              

              Und hier der request-Ansatz:

              function getNukiBridges() {
              	const request = require('request');
              
              	request('https://api.nuki.io/discover/bridges', { json: true }, (err, res, body) => {
                          if (err) { return console.log(err); }
                          console.log(body.url);
                          console.log(body.explanation);
                      });
              }
              

              Bei der Fehlersuche habe ich nach und nach immer mehr Code auskommentiert, bis jeweils nur noch derconst https = require('https');bzw.````
              const request = require('request');

              
              Ich verwende Visual Studio Code unter Windows 10 zum Entwickeln. Ich hab aber auch versucht eine Entwicklungsumgebung in der VM (erst Linux Mint, dann Ubuntu) mit Visual Studio Code und unter Ubuntu auch mit Webstorm einzurichten. Entwickeln geht wunderbar in allen Fällen, aber der Debugger streikt in jedem Fall.

              Gruß,

              Sven

              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

              668

              Online

              32.7k

              Benutzer

              82.3k

              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