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

  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. JavaScript
  5. [solved] Und wieder mal httpGet nach Java Update

NEWS

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

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    2.0k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    15
    1
    2.5k

[solved] Und wieder mal httpGet nach Java Update

Geplant Angeheftet Gesperrt Verschoben JavaScript
5 Beiträge 3 Kommentatoren 765 Aufrufe 3 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.
  • O Offline
    O Offline
    opöl
    schrieb am zuletzt editiert von opöl
    #1

    Hallo zusammen,

    leider habe ich auch Probleme nach dem aktuellen Java Adapter Update und Umbau meines Scripts auf httpGet.

    Die relevanten Teile des Scripts:

    function abfragePlus1PM() {
        // Führe einen HTTP-GET-Request zur PV URL durch
    	//request(url_plus1pm, function(error, response, body) {
    	httpGet(url_plus1pm, (err, response, body) => {
    	console.log('Error ' + err);
    	console.log('Statuscode ' + response.statusCode);
            // Überprüfe, ob ein Fehler aufgetreten ist
            if (!err && response.statusCode == 200) {
    			
                // Konvertiere die Antwort in ein JSON-Objekt
                var data_plus1pm = JSON.parse(body);
                // Extrahiere die aktuelle Leistung
                erzeugung_plus1pm = data_plus1pm.StatusSNS.ENERGY.Power;
                // Gib eine Erfolgsmeldung aus
                //log('Erzeugung erfolgreich aktualisiert: ' + erzeugung_plus1pm);
            } else {
                // Gib eine Fehlermeldung aus
                console.error('Fehler beim Abrufen der Shelly Plus 1 PM Daten');
                // Fehlerzähler hochzählen 
    			plus1pm_fehler++;
                fehler++; 
            }
        });
    }
    
    function abfrageHichi() {
    	// Führe einen HTTP-GET-Request zur Hichi URL durch
        //request(url_hichi, function(error, response, body) {
    	
    	httpGet(url_hichi, (err, response, body) => {
    	console.log('Error ' + err);
    	console.log('Statuscode ' + response.statusCode);
            // Überprüfe, ob ein Fehler aufgetreten ist
            if (!err && response.statusCode == 200) {
                // Konvertiere die Antwort in ein JSON-Objekt
                var data_hichi = JSON.parse(body);
                // Extrahiere die aktuelle Leistung
                gesamtleistung = data_hichi.StatusSNS.Stromz.Power;
                // Gib eine Erfolgsmeldung aus    
                // log('Verbrauch erfolgreich aktualisiert: ' + verbrauch_hichi);
            } else {
                // Gib eine Fehlermeldung aus
                console.error('Fehler beim Abrufen der Daten des Hichi Adapters');
                // Fehlerzähler hochzählen 
    			fehler++; 
                hichi_fehler++;
            }
    	});
       
    }
    

    Das Log zeigt:

    javascript.0	17:37:59.222	info	script.js.common.Tasmota-Eigenverbrauch.Skript_1HTTP-test: Error null
    javascript.0	17:37:59.223	info	script.js.common.Tasmota-Eigenverbrauch.Skript_1HTTP-test: Statuscode 200
    javascript.0	17:37:59.224	error	at Object.<anonymous> (script.js.common.Tasmota-Eigenverbrauch.Skript_1HTTP-test:227:35)
    javascript.0	17:37:59.257	info	script.js.common.Tasmota-Eigenverbrauch.Skript_1HTTP-test: Error null
    javascript.0	17:37:59.257	info	script.js.common.Tasmota-Eigenverbrauch.Skript_1HTTP-test: Statuscode 200
    javascript.0	17:37:59.259	error	at Object.<anonymous> (script.js.common.Tasmota-Eigenverbrauch.Skript_1HTTP-test:202:37)
    javascript.0	17:38:05.123	info	script.js.common.Tasmota-Eigenverbrauch.Skript_1HTTP-test: Error null
    javascript.0	17:38:05.124	info	script.js.common.Tasmota-Eigenverbrauch.Skript_1HTTP-test: Statuscode 200
    javascript.0	17:38:05.127	error	at Object.<anonymous> (script.js.common.Tasmota-Eigenverbrauch.Skript_1HTTP-test:227:35)
    javascript.0	17:38:05.186	info	script.js.common.Tasmota-Eigenverbrauch.Skript_1HTTP-test: Error null
    javascript.0	17:38:05.187	info	script.js.common.Tasmota-Eigenverbrauch.Skript_1HTTP-test: Statuscode 200
    

    Interessant ist auch, dass das geänderte Script sich nicht mehr stoppen lässt.
    Nur das Neustarten der Java Instanz hält das Script an.
    Was habe ich noch vergessen oder falsch gemacht?

    Danke und Gruß

    paul53P 1 Antwort Letzte Antwort
    0
    • O opöl

      Hallo zusammen,

      leider habe ich auch Probleme nach dem aktuellen Java Adapter Update und Umbau meines Scripts auf httpGet.

      Die relevanten Teile des Scripts:

      function abfragePlus1PM() {
          // Führe einen HTTP-GET-Request zur PV URL durch
      	//request(url_plus1pm, function(error, response, body) {
      	httpGet(url_plus1pm, (err, response, body) => {
      	console.log('Error ' + err);
      	console.log('Statuscode ' + response.statusCode);
              // Überprüfe, ob ein Fehler aufgetreten ist
              if (!err && response.statusCode == 200) {
      			
                  // Konvertiere die Antwort in ein JSON-Objekt
                  var data_plus1pm = JSON.parse(body);
                  // Extrahiere die aktuelle Leistung
                  erzeugung_plus1pm = data_plus1pm.StatusSNS.ENERGY.Power;
                  // Gib eine Erfolgsmeldung aus
                  //log('Erzeugung erfolgreich aktualisiert: ' + erzeugung_plus1pm);
              } else {
                  // Gib eine Fehlermeldung aus
                  console.error('Fehler beim Abrufen der Shelly Plus 1 PM Daten');
                  // Fehlerzähler hochzählen 
      			plus1pm_fehler++;
                  fehler++; 
              }
          });
      }
      
      function abfrageHichi() {
      	// Führe einen HTTP-GET-Request zur Hichi URL durch
          //request(url_hichi, function(error, response, body) {
      	
      	httpGet(url_hichi, (err, response, body) => {
      	console.log('Error ' + err);
      	console.log('Statuscode ' + response.statusCode);
              // Überprüfe, ob ein Fehler aufgetreten ist
              if (!err && response.statusCode == 200) {
                  // Konvertiere die Antwort in ein JSON-Objekt
                  var data_hichi = JSON.parse(body);
                  // Extrahiere die aktuelle Leistung
                  gesamtleistung = data_hichi.StatusSNS.Stromz.Power;
                  // Gib eine Erfolgsmeldung aus    
                  // log('Verbrauch erfolgreich aktualisiert: ' + verbrauch_hichi);
              } else {
                  // Gib eine Fehlermeldung aus
                  console.error('Fehler beim Abrufen der Daten des Hichi Adapters');
                  // Fehlerzähler hochzählen 
      			fehler++; 
                  hichi_fehler++;
              }
      	});
         
      }
      

      Das Log zeigt:

      javascript.0	17:37:59.222	info	script.js.common.Tasmota-Eigenverbrauch.Skript_1HTTP-test: Error null
      javascript.0	17:37:59.223	info	script.js.common.Tasmota-Eigenverbrauch.Skript_1HTTP-test: Statuscode 200
      javascript.0	17:37:59.224	error	at Object.<anonymous> (script.js.common.Tasmota-Eigenverbrauch.Skript_1HTTP-test:227:35)
      javascript.0	17:37:59.257	info	script.js.common.Tasmota-Eigenverbrauch.Skript_1HTTP-test: Error null
      javascript.0	17:37:59.257	info	script.js.common.Tasmota-Eigenverbrauch.Skript_1HTTP-test: Statuscode 200
      javascript.0	17:37:59.259	error	at Object.<anonymous> (script.js.common.Tasmota-Eigenverbrauch.Skript_1HTTP-test:202:37)
      javascript.0	17:38:05.123	info	script.js.common.Tasmota-Eigenverbrauch.Skript_1HTTP-test: Error null
      javascript.0	17:38:05.124	info	script.js.common.Tasmota-Eigenverbrauch.Skript_1HTTP-test: Statuscode 200
      javascript.0	17:38:05.127	error	at Object.<anonymous> (script.js.common.Tasmota-Eigenverbrauch.Skript_1HTTP-test:227:35)
      javascript.0	17:38:05.186	info	script.js.common.Tasmota-Eigenverbrauch.Skript_1HTTP-test: Error null
      javascript.0	17:38:05.187	info	script.js.common.Tasmota-Eigenverbrauch.Skript_1HTTP-test: Statuscode 200
      

      Interessant ist auch, dass das geänderte Script sich nicht mehr stoppen lässt.
      Nur das Neustarten der Java Instanz hält das Script an.
      Was habe ich noch vergessen oder falsch gemacht?

      Danke und Gruß

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

      @opöl sagte: Die relevanten Teile des Scripts:

      Ersetze

      JSON.parse(body);
      

      durch

      JSON.parse(response.data);
      

      ... und lass bei httpGet body weg.

      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

      O 1 Antwort Letzte Antwort
      1
      • paul53P paul53

        @opöl sagte: Die relevanten Teile des Scripts:

        Ersetze

        JSON.parse(body);
        

        durch

        JSON.parse(response.data);
        

        ... und lass bei httpGet body weg.

        O Offline
        O Offline
        opöl
        schrieb am zuletzt editiert von
        #3

        @paul53 ,

        vielen Dank. Das war es.

        Das Script läuft jetzt und tut, was es soll, aber ich habe im Editor noch Fehler, die man hier nicht sieht:

        function abfragePlus1PM() {
            // Führe einen HTTP-GET-Request zur PV URL durch
        	//request(url_plus1pm, function(error, response, body) {
        	httpGet(url_plus1pm, (err, response) => {
        	console.log('Error ' + err);
        	console.log('Statuscode ' + response.statusCode);
                // Überprüfe, ob ein Fehler aufgetreten ist
                if (!err && response.statusCode == 200) {
        			
        

        daher ein Screen Shot:

        59b1d610-6377-4304-ae6f-1335441d4534-image.png

        Der Status Code 200 wird aber im Log angezeigt. Kannst Du da auch was zu sagen?

        Gruß

        haus-automatisierungH 1 Antwort Letzte Antwort
        0
        • O opöl

          @paul53 ,

          vielen Dank. Das war es.

          Das Script läuft jetzt und tut, was es soll, aber ich habe im Editor noch Fehler, die man hier nicht sieht:

          function abfragePlus1PM() {
              // Führe einen HTTP-GET-Request zur PV URL durch
          	//request(url_plus1pm, function(error, response, body) {
          	httpGet(url_plus1pm, (err, response) => {
          	console.log('Error ' + err);
          	console.log('Statuscode ' + response.statusCode);
                  // Überprüfe, ob ein Fehler aufgetreten ist
                  if (!err && response.statusCode == 200) {
          			
          

          daher ein Screen Shot:

          59b1d610-6377-4304-ae6f-1335441d4534-image.png

          Der Status Code 200 wird aber im Log angezeigt. Kannst Du da auch was zu sagen?

          Gruß

          haus-automatisierungH Offline
          haus-automatisierungH Offline
          haus-automatisierung
          Developer Most Active
          schrieb am zuletzt editiert von
          #4

          @opöl sagte in Und wieder mal httpGet nach Java Update:

          aber ich habe im Editor noch Fehler, die man hier nicht sieht:

          Schon behoben in der aktuellen Beta, hatte die Typen umbenannt und es in den Type definitions nicht angepasst.

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

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

            @opöl sagte in Und wieder mal httpGet nach Java Update:

            aber ich habe im Editor noch Fehler, die man hier nicht sieht:

            Schon behoben in der aktuellen Beta, hatte die Typen umbenannt und es in den Type definitions nicht angepasst.

            O Offline
            O Offline
            opöl
            schrieb am zuletzt editiert von
            #5

            @haus-automatisierung und @paul53 ,

            vielen Dank Euch beiden. Super Forum 👍

            Beste Grüße

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


            Support us

            ioBroker
            Community Adapters
            Donate

            729

            Online

            32.4k

            Benutzer

            81.4k

            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