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. Einsteigerfragen
  4. eine funktion für http-Get

NEWS

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

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

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.2k

eine funktion für http-Get

Geplant Angeheftet Gesperrt Verschoben Einsteigerfragen
12 Beiträge 4 Kommentatoren 650 Aufrufe 4 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.
  • A Andreas 9

    ich habe einen Feinstaubsensor (Luftdaten.info) bei dem ich die Daten als JSON-String mit Hilfe von http Get abfrage.
    Es kommt aber öfter mal zum timeout: script.js.common.Messwerte.Feinstaub: httpGet(url=http://192.168.178.30/data.json, error=timeout of 3000ms exceeded). Das timeout habe ich schon mehrfach erhöht - das bringt nicht viel.
    Daher will ich die http-Get-Abftrage in eine Schleife einbauen, die durchläuft, bis der Status-Code = 200 ist.
    Dazu habe ich sie http-Get-Abftrage in eine function eingebaut:
    function.jpg
    Das Problem entsteht, wenn ich den JSON-String auswerten will. Der Programmablauf ist immer schon fertig, bevor die Antwort vom http-Get eintrifft. Ich erhalte ergebnis: undefined. Ich müsste also eine Abfrage machen, die so lange pausiert, bis die http-get Anfrage beendet ist. Ich komm aber nicht drauf wie ich das umsetzen kann.
    Weiss hier jemand Rat?

    haus-automatisierungH Online
    haus-automatisierungH Online
    haus-automatisierung
    Developer Most Active
    schrieb am zuletzt editiert von
    #2

    @andreas-9 sagte in eine funktion für http-Get:

    ich habe einen Feinstaubsensor (Luftdaten.info) bei dem ich die Daten als JSON-String mit Hilfe von http Get abfrage.

    Warum nutzt Du nicht meinen Adapter? https://github.com/klein0r/ioBroker.luftdaten

    🧑‍🎓 Autor des beliebten ioBroker-Master-Kurses
    🎥 Tutorials rund um das Thema DIY-Smart-Home: https://haus-automatisierung.com/
    📚 Meine inoffizielle ioBroker Dokumentation

    A 3 Antworten Letzte Antwort
    1
    • A Andreas 9

      ich habe einen Feinstaubsensor (Luftdaten.info) bei dem ich die Daten als JSON-String mit Hilfe von http Get abfrage.
      Es kommt aber öfter mal zum timeout: script.js.common.Messwerte.Feinstaub: httpGet(url=http://192.168.178.30/data.json, error=timeout of 3000ms exceeded). Das timeout habe ich schon mehrfach erhöht - das bringt nicht viel.
      Daher will ich die http-Get-Abftrage in eine Schleife einbauen, die durchläuft, bis der Status-Code = 200 ist.
      Dazu habe ich sie http-Get-Abftrage in eine function eingebaut:
      function.jpg
      Das Problem entsteht, wenn ich den JSON-String auswerten will. Der Programmablauf ist immer schon fertig, bevor die Antwort vom http-Get eintrifft. Ich erhalte ergebnis: undefined. Ich müsste also eine Abfrage machen, die so lange pausiert, bis die http-get Anfrage beendet ist. Ich komm aber nicht drauf wie ich das umsetzen kann.
      Weiss hier jemand Rat?

      haus-automatisierungH Online
      haus-automatisierungH Online
      haus-automatisierung
      Developer Most Active
      schrieb am zuletzt editiert von
      #3

      @andreas-9 sagte in eine funktion für http-Get:

      Das Problem entsteht, wenn ich den JSON-String auswerten will. Der Programmablauf ist immer schon fertig, bevor die Antwort vom http-Get eintrifft. Ich erhalte ergebnis: undefined.

      Das liegt daran, dass das intern mit Callbacks realisiert wird. Blockly gibt eine Funktion als Parameter an httpGet und sagt: "Wenn Du fertig bist, ruf das hier auf." Das restliche Programm läuft natürlich dann weiter (genau wie Dein Rückgabewert der Funktion).

      Du musst also das Ergebnis innerhalb der Callback-Funktion auswerten (oder auf JavaScript wechseln - dann mit Promises und async/await beschäftigen).

      🧑‍🎓 Autor des beliebten ioBroker-Master-Kurses
      🎥 Tutorials rund um das Thema DIY-Smart-Home: https://haus-automatisierung.com/
      📚 Meine inoffizielle ioBroker Dokumentation

      AsgothianA 1 Antwort Letzte Antwort
      1
      • haus-automatisierungH haus-automatisierung

        @andreas-9 sagte in eine funktion für http-Get:

        ich habe einen Feinstaubsensor (Luftdaten.info) bei dem ich die Daten als JSON-String mit Hilfe von http Get abfrage.

        Warum nutzt Du nicht meinen Adapter? https://github.com/klein0r/ioBroker.luftdaten

        A Offline
        A Offline
        Andreas 9
        schrieb am zuletzt editiert von
        #4

        @haus-automatisierung said in eine funktion für http-Get:

        @andreas-9 sagte in eine funktion für http-Get:

        ich habe einen Feinstaubsensor (Luftdaten.info) bei dem ich die Daten als JSON-String mit Hilfe von http Get abfrage.

        Warum nutzt Du nicht meinen Adapter? https://github.com/klein0r/ioBroker.luftdaten

        @haus-automatisierung said in eine funktion für http-Get:

        @andreas-9 sagte in eine funktion für http-Get:

        ich habe einen Feinstaubsensor (Luftdaten.info) bei dem ich die Daten als JSON-String mit Hilfe von http Get abfrage.

        Warum nutzt Du nicht meinen Adapter? https://github.com/klein0r/ioBroker.luftdaten

        Weil ich nichts davon gewusst habe... :astonished:
        Ich probiere den aber gleich mal aus!!!
        Vielen Dank, ich melde mich dann noch mal.

        Homematic-Raspi auf Raspi 3+
        IOBroker auf Raspi 4
        Kostal PLENTICORE plus 4.2 mit Batterie;

        1 Antwort Letzte Antwort
        0
        • haus-automatisierungH haus-automatisierung

          @andreas-9 sagte in eine funktion für http-Get:

          ich habe einen Feinstaubsensor (Luftdaten.info) bei dem ich die Daten als JSON-String mit Hilfe von http Get abfrage.

          Warum nutzt Du nicht meinen Adapter? https://github.com/klein0r/ioBroker.luftdaten

          A Offline
          A Offline
          Andreas 9
          schrieb am zuletzt editiert von
          #5

          @haus-automatisierung said in eine funktion für http-Get:

          Warum nutzt Du nicht meinen Adapter? https://github.com/klein0r/ioBroker.luftdaten

          Na das scheint ja supergut zu funktionieren!
          Ich habe auch gleich was zu meckern: Der Sensor liefert ja auch standardmäßig den Taupunkt.
          Leider wird dieser in keinem der Protokolle übertragen.
          Das wäre mein Wunsch: Es wäre sicherlich nicht aufwändig, beim nächsten Update den Taupunkt mit zu übertragen.
          Nochmals vielen Dank!!!

          Homematic-Raspi auf Raspi 3+
          IOBroker auf Raspi 4
          Kostal PLENTICORE plus 4.2 mit Batterie;

          haus-automatisierungH 1 Antwort Letzte Antwort
          0
          • haus-automatisierungH haus-automatisierung

            @andreas-9 sagte in eine funktion für http-Get:

            Das Problem entsteht, wenn ich den JSON-String auswerten will. Der Programmablauf ist immer schon fertig, bevor die Antwort vom http-Get eintrifft. Ich erhalte ergebnis: undefined.

            Das liegt daran, dass das intern mit Callbacks realisiert wird. Blockly gibt eine Funktion als Parameter an httpGet und sagt: "Wenn Du fertig bist, ruf das hier auf." Das restliche Programm läuft natürlich dann weiter (genau wie Dein Rückgabewert der Funktion).

            Du musst also das Ergebnis innerhalb der Callback-Funktion auswerten (oder auf JavaScript wechseln - dann mit Promises und async/await beschäftigen).

            AsgothianA Offline
            AsgothianA Offline
            Asgothian
            Developer
            schrieb am zuletzt editiert von Asgothian
            #6

            @haus-automatisierung sagte in eine funktion für http-Get:

            @andreas-9 sagte in eine funktion für http-Get:

            Das Problem entsteht, wenn ich den JSON-String auswerten will. Der Programmablauf ist immer schon fertig, bevor die Antwort vom http-Get eintrifft. Ich erhalte ergebnis: undefined.

            Das liegt daran, dass das intern mit Callbacks realisiert wird. Blockly gibt eine Funktion als Parameter an httpGet und sagt: "Wenn Du fertig bist, ruf das hier auf." Das restliche Programm läuft natürlich dann weiter (genau wie Dein Rückgabewert der Funktion).

            Du musst also das Ergebnis innerhalb der Callback-Funktion auswerten (oder auf JavaScript wechseln - dann mit Promises und async/await beschäftigen).

            Oder das Ergebnis in der funktion in einen Datenpunkt schreiben und dann einen eigenen Trigger auf diesen Datenpunkt zur Auswertung nutzen (das geht dann auch in Blockly)

            ioBroker auf RPi4 - Hardware soweit wie möglich via Zigbee.
            "Shit don't work" ist keine Fehlermeldung, sondern ein Fluch.

            1 Antwort Letzte Antwort
            1
            • haus-automatisierungH haus-automatisierung

              @andreas-9 sagte in eine funktion für http-Get:

              ich habe einen Feinstaubsensor (Luftdaten.info) bei dem ich die Daten als JSON-String mit Hilfe von http Get abfrage.

              Warum nutzt Du nicht meinen Adapter? https://github.com/klein0r/ioBroker.luftdaten

              A Offline
              A Offline
              Andreas 9
              schrieb am zuletzt editiert von
              #7

              @haus-automatisierung
              Der Luftdaten-Adapter schreibt alle 10 Minuten ins Log:

              luftdaten.0
              	2025-07-31 15:40:03.851	info	Terminated (NO_ERROR): Without reason
              luftdaten.0
              	2025-07-31 15:40:03.593	info	starting. Version 4.0.0 in /opt/iobroker/node_modules/iobroker.luftdaten, node: v20.19.1, js-controller: 7.0.6
              

              Kann ich das irgendwie vermeiden?

              Homematic-Raspi auf Raspi 3+
              IOBroker auf Raspi 4
              Kostal PLENTICORE plus 4.2 mit Batterie;

              BananaJoeB 1 Antwort Letzte Antwort
              0
              • A Andreas 9

                @haus-automatisierung
                Der Luftdaten-Adapter schreibt alle 10 Minuten ins Log:

                luftdaten.0
                	2025-07-31 15:40:03.851	info	Terminated (NO_ERROR): Without reason
                luftdaten.0
                	2025-07-31 15:40:03.593	info	starting. Version 4.0.0 in /opt/iobroker/node_modules/iobroker.luftdaten, node: v20.19.1, js-controller: 7.0.6
                

                Kann ich das irgendwie vermeiden?

                BananaJoeB Offline
                BananaJoeB Offline
                BananaJoe
                Most Active
                schrieb am zuletzt editiert von
                #8

                @andreas-9
                Du kannst das Loglevel eines Adapters ändern,
                dazu oben die Expertenansicht anklicken, den Adapter aufklappen und dann auf den Stift neben dem Loglevel gehen:

                b41c55d9-9f56-4bc4-9c0f-1395c02b04b0-image.png
                Wenn du den auf Warnung stellst, wird alles niedriger als das nicht geloggt:
                f2146a86-88fb-4ace-b00d-5e364b6b0ae4-image.png

                ioBroker@Ubuntu 24.04 LTS (VMware) für: >260 Geräte, 5 Switche, 7 AP, 9 IP-Cam, 1 NAS 42TB, 1 ESXi 15TB, 4 Proxmox 1TB, 1 Hyper-V 48TB, 14 x Echo, 5x FireTV, 5 x Tablett/Handy VIS || >=160 Tasmota/Shelly || >=95 ZigBee || PV 8.1kW / Akku 14kWh || 2x USV 750W kaskadiert || Creality CR-10 SE 3D-Drucker

                A 1 Antwort Letzte Antwort
                0
                • BananaJoeB BananaJoe

                  @andreas-9
                  Du kannst das Loglevel eines Adapters ändern,
                  dazu oben die Expertenansicht anklicken, den Adapter aufklappen und dann auf den Stift neben dem Loglevel gehen:

                  b41c55d9-9f56-4bc4-9c0f-1395c02b04b0-image.png
                  Wenn du den auf Warnung stellst, wird alles niedriger als das nicht geloggt:
                  f2146a86-88fb-4ace-b00d-5e364b6b0ae4-image.png

                  A Offline
                  A Offline
                  Andreas 9
                  schrieb am zuletzt editiert von
                  #9

                  @bananajoe said in eine funktion für http-Get:

                  Expertenansicht anklicken, den Adapter aufklappen und dann auf den Stift neben dem Logle

                  Danke!
                  Ich habe trotzdem noch eine Frage: a) Im Menü Instanzen kann man die Zeitplanung für Luftdaten einstellen. Dann wird der Adapter per Cronjob z.B. alle 5 Min gestartet. Man kann nicht "nichts" eintragen, dann kommt eine Fehlermeldung.
                  Luftdaten.jpg
                  b) zusätzlich gibt es die Möglichkeit unter Objects/Luftdaten das Intervall einzustellen:
                  Luftdaten2.jpg
                  Das scheint aber gar keine Wirkung zu haben.
                  Ich habe jetzt in beiden Fällen 5 Min bzw. 300000 eingetragen.

                  Wozu ist der Punkt Intervall gedacht und warum kann ich unter Instanzen/Luftdaten den Cron nicht löschen? (Geht bei anderen Adaptern auch. Einmal gestartet laufen die dann eben durch...)
                  Vielen Dank schon mal!

                  Homematic-Raspi auf Raspi 3+
                  IOBroker auf Raspi 4
                  Kostal PLENTICORE plus 4.2 mit Batterie;

                  haus-automatisierungH 1 Antwort Letzte Antwort
                  0
                  • A Andreas 9

                    @bananajoe said in eine funktion für http-Get:

                    Expertenansicht anklicken, den Adapter aufklappen und dann auf den Stift neben dem Logle

                    Danke!
                    Ich habe trotzdem noch eine Frage: a) Im Menü Instanzen kann man die Zeitplanung für Luftdaten einstellen. Dann wird der Adapter per Cronjob z.B. alle 5 Min gestartet. Man kann nicht "nichts" eintragen, dann kommt eine Fehlermeldung.
                    Luftdaten.jpg
                    b) zusätzlich gibt es die Möglichkeit unter Objects/Luftdaten das Intervall einzustellen:
                    Luftdaten2.jpg
                    Das scheint aber gar keine Wirkung zu haben.
                    Ich habe jetzt in beiden Fällen 5 Min bzw. 300000 eingetragen.

                    Wozu ist der Punkt Intervall gedacht und warum kann ich unter Instanzen/Luftdaten den Cron nicht löschen? (Geht bei anderen Adaptern auch. Einmal gestartet laufen die dann eben durch...)
                    Vielen Dank schon mal!

                    haus-automatisierungH Online
                    haus-automatisierungH Online
                    haus-automatisierung
                    Developer Most Active
                    schrieb am zuletzt editiert von haus-automatisierung
                    #10

                    @andreas-9 sagte in eine funktion für http-Get:

                    Man kann nicht "nichts" eintragen, dann kommt eine Fehlermeldung.

                    Warum sollte man das auch tun? Das ist ja ein "Schedule-Adapter". Der wird nach dem Zeitplan gestartet, macht seine Aufgaben und beendet sich dann wieder selbst. Da läuft keine Instanz dauerhaft (wie bei einem Daemon-Adapter). Grundlagen anschauen. Dadurch kommt auch der Eintrag im Log zustande.

                    @andreas-9 sagte in eine funktion für http-Get:

                    b) zusätzlich gibt es die Möglichkeit unter Objects/Luftdaten das Intervall einzustellen:
                    Luftdaten2.jpg
                    Das scheint aber gar keine Wirkung zu haben.
                    Ich habe jetzt in beiden Fällen 5 Min bzw. 300000 eingetragen.

                    Das Schloss da vorne zeigt Dir, dass das ein Readonly-Datenpunkt ist und Du als Anwender da nichts reinschreiben solltest und dieser nur gelesen werden sollte. Mach mal den Expertenmodus aus...

                    Keine Ahnung woher dieser Wert genau kommt. Hat jedenfalls nichts damit zu tun, wie oft der ioBroker die Daten vom Sensor holt. Das macht ja der oben genannte Zeitplan.

                    🧑‍🎓 Autor des beliebten ioBroker-Master-Kurses
                    🎥 Tutorials rund um das Thema DIY-Smart-Home: https://haus-automatisierung.com/
                    📚 Meine inoffizielle ioBroker Dokumentation

                    1 Antwort Letzte Antwort
                    0
                    • A Andreas 9

                      @haus-automatisierung said in eine funktion für http-Get:

                      Warum nutzt Du nicht meinen Adapter? https://github.com/klein0r/ioBroker.luftdaten

                      Na das scheint ja supergut zu funktionieren!
                      Ich habe auch gleich was zu meckern: Der Sensor liefert ja auch standardmäßig den Taupunkt.
                      Leider wird dieser in keinem der Protokolle übertragen.
                      Das wäre mein Wunsch: Es wäre sicherlich nicht aufwändig, beim nächsten Update den Taupunkt mit zu übertragen.
                      Nochmals vielen Dank!!!

                      haus-automatisierungH Online
                      haus-automatisierungH Online
                      haus-automatisierung
                      Developer Most Active
                      schrieb am zuletzt editiert von
                      #11

                      @andreas-9 sagte in eine funktion für http-Get:

                      Es wäre sicherlich nicht aufwändig, beim nächsten Update den Taupunkt mit zu übertragen.

                      Zeig mal im JSON wo diese Info steht. Das hattest ja eh schonmal manuell abgerufen.

                      🧑‍🎓 Autor des beliebten ioBroker-Master-Kurses
                      🎥 Tutorials rund um das Thema DIY-Smart-Home: https://haus-automatisierung.com/
                      📚 Meine inoffizielle ioBroker Dokumentation

                      A 1 Antwort Letzte Antwort
                      0
                      • haus-automatisierungH haus-automatisierung

                        @andreas-9 sagte in eine funktion für http-Get:

                        Es wäre sicherlich nicht aufwändig, beim nächsten Update den Taupunkt mit zu übertragen.

                        Zeig mal im JSON wo diese Info steht. Das hattest ja eh schonmal manuell abgerufen.

                        A Offline
                        A Offline
                        Andreas 9
                        schrieb am zuletzt editiert von
                        #12

                        @haus-automatisierung said in eine funktion für http-Get:

                        Zeig mal im JSON wo diese Info steht. Das hattest ja eh schonmal manuell abgerufen.

                        Ja genau das ist ja das Problem. Der Wert für Taupunkt ist nicht im JSON-Text vom Luftdaten-Sensor enthalten.
                        Ich habe mal die Taupunkt-Formel in Blockly umgesetzt und rechne mir den Wert im IOBroker aus. Das ist wohl die selbe Formel, die auch der Luftdaten-Sensor verwendet. Dieser gibt den Taupunkt zwar auf dem Web-Interface bei Aktuelle Werte als "BME280 Taupunkt 14.5 °C" aus - aber er sendet ihn nicht.
                        Ja da bist du vielleicht doch nicht die richtige Adresse, wenn ich mir das mal richtig überlege...
                        Aber vielen Dank für deine Nachfrage!
                        Das mit dem Zeitplan habe ich jetzt auch verstanden. :blush:

                        Homematic-Raspi auf Raspi 3+
                        IOBroker auf Raspi 4
                        Kostal PLENTICORE plus 4.2 mit Batterie;

                        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

                        576

                        Online

                        32.6k

                        Benutzer

                        82.2k

                        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