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. brauche Hilfe nach Update Javascript v8.3.1

NEWS

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

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

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.1k

brauche Hilfe nach Update Javascript v8.3.1

Scheduled Pinned Locked Moved JavaScript
11 Posts 3 Posters 773 Views 3 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.
  • K kwone

    Hallo, nach dem Updateauf v8.3.1 läuft folgender script nicht mehr.
    der Script wurde vor Jahren von einem Bekannten erstellt welchen ich nicht mehr erreichen kann.
    Ich bitte Euch mir zu helfen das folgender Script wieder läuft.

     function iter(name, obj) {
       for(let i in obj) {
          if(typeof obj[i] == 'object') iter(name + '.' + i, obj[i]);
          else {
             log(name + '.' + i + ': ' + obj[i]);
             if(existsState(name + '.' + i)) setState(name + '.' + i, obj[i]);
             else createState(name + '.' + i, obj[i]); // type: "mixed"
          }
       }
    }
     
    function SendRequest(){
        var options = {
            url: 'http://192.168.178.49/AllJsonData',
            qs: {
                ack: true 
                
           }      
        };
        request(options, function (error, response, body){
            if (!error) iter('javascript.0.EPever', JSON.parse(body));
            else console.error(error);
        });
    }
     schedule('*/5 * * * * *', SendRequest);
    

    MOD-EDIT: Code in code-tags gesetzt!

    HomoranH Do not disturb
    HomoranH Do not disturb
    Homoran
    Global Moderator Administrators
    wrote on last edited by Homoran
    #2

    @kwone die library request ist schon seit Jahren veraltet und wird nicht mehr gepflegt.
    in 8.3.1 wurde sie nativ nicht mehr unterstützt.
    Dies wurde auch vor dem Start des Updates als PopUp so angezeigt.

    Du musst jetzt request durch httpGet ersetzen
    Dazu gibt es schon etliche Threads.

    ich bin kein Programmierer, aber bei dir müsste es gehen, indem du einfach request gegen httpGet austauschst, das folgende body in der Klammer incl vorangehendrm Komma entfernst, und das body in Zeile 21 JSON.Parse(body)
    Gegen response.data austauschst

    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 -

    K 2 Replies Last reply
    1
    • HomoranH Homoran

      @kwone die library request ist schon seit Jahren veraltet und wird nicht mehr gepflegt.
      in 8.3.1 wurde sie nativ nicht mehr unterstützt.
      Dies wurde auch vor dem Start des Updates als PopUp so angezeigt.

      Du musst jetzt request durch httpGet ersetzen
      Dazu gibt es schon etliche Threads.

      ich bin kein Programmierer, aber bei dir müsste es gehen, indem du einfach request gegen httpGet austauschst, das folgende body in der Klammer incl vorangehendrm Komma entfernst, und das body in Zeile 21 JSON.Parse(body)
      Gegen response.data austauschst

      K Offline
      K Offline
      kwone
      wrote on last edited by Homoran
      #3

      @homoran sagte in brauche Hilfe nach Update Javascript v8.3.1:

      @kwone die library request ist schon seit Jahren veraltet und wird nicht mehr gepflegt.
      in 8.3.1 wurde sie nativ nicht mehr unterstützt.
      Dies wurde auch vor dem Start des Updates als PopUp so angezeigt.

      Du musst jetzt request durch httpGet ersetzen
      Dazu gibt es schon etliche Threads.

      ich bin kein Programmierer, aber bei dir müsste es gehen, indem du einfach request gegen httpGet austauschst, das folgende body in der Klammer incl vorangehendrm Komma entfernst, und das body in Zeile 21 JSON.Parse(body)
      Gegen response.data austauschst

      Hallo Homoran,
      erstmal danke für deine schnelle antwort.
      leider ist das Problem noch nicht gelöst

      function iter(name, obj) {
         for(let i in obj) {
            if(typeof obj[i] == 'object') iter(name + '.' + i, obj[i]);
            else {
               log(name + '.' + i + ': ' + obj[i]);
               if(existsState(name + '.' + i)) setState(name + '.' + i, obj[i]);
               else createState(name + '.' + i, obj[i]); // type: "mixed"
            }
         }
      }
       
       function SendRequest(){
          var options = {
              url: 'http://192.168.178.49/AllJsonData',
              qs: {
                  ack: true 
                  
             }      
          };
          httpGet(options, function (error, response){
              if (!error) iter('javascript.0.EPever', JSON.parse(response.data));
              else console.error(error);
          });
      }
       schedule('*/5 * * * * *', SendRequest);
      

      bringt Fehler :

      javascript.0	11:44:30.002	error	at Object.SendRequest (script.js.common.EPever:21:5)
      

      MOD-EDIT: Code in code-tags gesetzt!

      HomoranH haus-automatisierungH 2 Replies Last reply
      0
      • K kwone

        @homoran sagte in brauche Hilfe nach Update Javascript v8.3.1:

        @kwone die library request ist schon seit Jahren veraltet und wird nicht mehr gepflegt.
        in 8.3.1 wurde sie nativ nicht mehr unterstützt.
        Dies wurde auch vor dem Start des Updates als PopUp so angezeigt.

        Du musst jetzt request durch httpGet ersetzen
        Dazu gibt es schon etliche Threads.

        ich bin kein Programmierer, aber bei dir müsste es gehen, indem du einfach request gegen httpGet austauschst, das folgende body in der Klammer incl vorangehendrm Komma entfernst, und das body in Zeile 21 JSON.Parse(body)
        Gegen response.data austauschst

        Hallo Homoran,
        erstmal danke für deine schnelle antwort.
        leider ist das Problem noch nicht gelöst

        function iter(name, obj) {
           for(let i in obj) {
              if(typeof obj[i] == 'object') iter(name + '.' + i, obj[i]);
              else {
                 log(name + '.' + i + ': ' + obj[i]);
                 if(existsState(name + '.' + i)) setState(name + '.' + i, obj[i]);
                 else createState(name + '.' + i, obj[i]); // type: "mixed"
              }
           }
        }
         
         function SendRequest(){
            var options = {
                url: 'http://192.168.178.49/AllJsonData',
                qs: {
                    ack: true 
                    
               }      
            };
            httpGet(options, function (error, response){
                if (!error) iter('javascript.0.EPever', JSON.parse(response.data));
                else console.error(error);
            });
        }
         schedule('*/5 * * * * *', SendRequest);
        

        bringt Fehler :

        javascript.0	11:44:30.002	error	at Object.SendRequest (script.js.common.EPever:21:5)
        

        MOD-EDIT: Code in code-tags gesetzt!

        HomoranH Do not disturb
        HomoranH Do not disturb
        Homoran
        Global Moderator Administrators
        wrote on last edited by
        #4

        @kwone sagte in brauche Hilfe nach Update Javascript v8.3.1:

        bringt Fehler :

        da muss dir jetzt ein js-Kundiger helfen, ob da in der Funktion iter noch was versteckt ist

        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 -

        K 1 Reply Last reply
        0
        • HomoranH Homoran

          @kwone sagte in brauche Hilfe nach Update Javascript v8.3.1:

          bringt Fehler :

          da muss dir jetzt ein js-Kundiger helfen, ob da in der Funktion iter noch was versteckt ist

          K Offline
          K Offline
          kwone
          wrote on last edited by
          #5

          @homoran OK danke für Deine Hilfe

          HomoranH 1 Reply Last reply
          0
          • K kwone

            @homoran sagte in brauche Hilfe nach Update Javascript v8.3.1:

            @kwone die library request ist schon seit Jahren veraltet und wird nicht mehr gepflegt.
            in 8.3.1 wurde sie nativ nicht mehr unterstützt.
            Dies wurde auch vor dem Start des Updates als PopUp so angezeigt.

            Du musst jetzt request durch httpGet ersetzen
            Dazu gibt es schon etliche Threads.

            ich bin kein Programmierer, aber bei dir müsste es gehen, indem du einfach request gegen httpGet austauschst, das folgende body in der Klammer incl vorangehendrm Komma entfernst, und das body in Zeile 21 JSON.Parse(body)
            Gegen response.data austauschst

            Hallo Homoran,
            erstmal danke für deine schnelle antwort.
            leider ist das Problem noch nicht gelöst

            function iter(name, obj) {
               for(let i in obj) {
                  if(typeof obj[i] == 'object') iter(name + '.' + i, obj[i]);
                  else {
                     log(name + '.' + i + ': ' + obj[i]);
                     if(existsState(name + '.' + i)) setState(name + '.' + i, obj[i]);
                     else createState(name + '.' + i, obj[i]); // type: "mixed"
                  }
               }
            }
             
             function SendRequest(){
                var options = {
                    url: 'http://192.168.178.49/AllJsonData',
                    qs: {
                        ack: true 
                        
                   }      
                };
                httpGet(options, function (error, response){
                    if (!error) iter('javascript.0.EPever', JSON.parse(response.data));
                    else console.error(error);
                });
            }
             schedule('*/5 * * * * *', SendRequest);
            

            bringt Fehler :

            javascript.0	11:44:30.002	error	at Object.SendRequest (script.js.common.EPever:21:5)
            

            MOD-EDIT: Code in code-tags gesetzt!

            haus-automatisierungH Online
            haus-automatisierungH Online
            haus-automatisierung
            Developer Most Active
            wrote on last edited by haus-automatisierung
            #6

            @kwone sagte in brauche Hilfe nach Update Javascript v8.3.1:

            leider ist das Problem noch nicht gelöst

            Der erste Parameter ist die URL als String und kein Objekt, ...

            function iter(name, obj) {
               for (let i in obj) {
                  if (typeof obj[i] == 'object') iter(name + '.' + i, obj[i]);
                  else {
                     log(name + '.' + i + ': ' + obj[i]);
                     if (existsState(name + '.' + i)) setState(name + '.' + i, obj[i]);
                     else createState(name + '.' + i, obj[i]); // type: "mixed"
                  }
               }
            }
             
            function SendRequest() {
               httpGet('http://192.168.178.49/AllJsonData', (error, response) => {
                  if (!error) iter('javascript.0.EPever', JSON.parse(response.data));
                  else console.error(error);
               });
            }
            
            schedule('*/5 * * * * *', SendRequest);
            

            https://github.com/ioBroker/ioBroker.javascript/blob/master/docs/en/upgrade-guide.md

            https://github.com/ioBroker/ioBroker.javascript/blob/master/docs/en/javascript.md#httpget

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

            1 Reply Last reply
            1
            • K kwone

              @homoran OK danke für Deine Hilfe

              HomoranH Do not disturb
              HomoranH Do not disturb
              Homoran
              Global Moderator Administrators
              wrote on last edited by Homoran
              #7

              @kwone sagte in brauche Hilfe nach Update Javascript v8.3.1:

              @homoran OK danke für Deine Hilfe

              gerne, aber ich sehe gerade, dass sich die Meldung auf SendRequest bezieht.

              ich weiss es natürlich nicht, aber möglicherweise sind die als options für request definierten "Dinge" so nicht für httpGet kompatibel.

              Wäre schön wenn @haus-automatisierung oder @paul53 dazu was sagen könnte, damit ich auch noch was lerne.

              EDIT: hat sich überschnitten

              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 Reply Last reply
              0
              • HomoranH Homoran

                @kwone die library request ist schon seit Jahren veraltet und wird nicht mehr gepflegt.
                in 8.3.1 wurde sie nativ nicht mehr unterstützt.
                Dies wurde auch vor dem Start des Updates als PopUp so angezeigt.

                Du musst jetzt request durch httpGet ersetzen
                Dazu gibt es schon etliche Threads.

                ich bin kein Programmierer, aber bei dir müsste es gehen, indem du einfach request gegen httpGet austauschst, das folgende body in der Klammer incl vorangehendrm Komma entfernst, und das body in Zeile 21 JSON.Parse(body)
                Gegen response.data austauschst

                K Offline
                K Offline
                kwone
                wrote on last edited by
                #8

                @Homoran
                Hallo nochmals Danke für die Bemühungen.
                ich konnte de Umstellung des Scripts mit Hilfe von ChatGPT lösen.

                HomoranH 1 Reply Last reply
                0
                • K kwone

                  @Homoran
                  Hallo nochmals Danke für die Bemühungen.
                  ich konnte de Umstellung des Scripts mit Hilfe von ChatGPT lösen.

                  HomoranH Do not disturb
                  HomoranH Do not disturb
                  Homoran
                  Global Moderator Administrators
                  wrote on last edited by
                  #9

                  @kwone sagte in brauche Hilfe nach Update Javascript v8.3.1:

                  @Homoran
                  Hallo nochmals Danke für die Bemühungen.
                  ich konnte de Umstellung des Scripts mit Hilfe von ChatGPT lösen.

                  und dann belästigst du uns :joy:

                  würdest du der Nachwelt auch die Lösung präsentieren, bitte!

                  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 -

                  K 1 Reply Last reply
                  0
                  • HomoranH Homoran

                    @kwone sagte in brauche Hilfe nach Update Javascript v8.3.1:

                    @Homoran
                    Hallo nochmals Danke für die Bemühungen.
                    ich konnte de Umstellung des Scripts mit Hilfe von ChatGPT lösen.

                    und dann belästigst du uns :joy:

                    würdest du der Nachwelt auch die Lösung präsentieren, bitte!

                    K Offline
                    K Offline
                    kwone
                    wrote on last edited by Homoran
                    #10

                    @homoran
                    ja sicher hier das funktionierende Script

                     const http = require('http');
                    
                    function iter(name, obj) {
                        for (let i in obj) {
                            if (typeof obj[i] === 'object' && obj[i] !== null) {
                                iter(name + '.' + i, obj[i]);
                            } else {
                                log(name + '.' + i + ': ' + obj[i]);
                                if (existsState(name + '.' + i)) {
                                    setState(name + '.' + i, obj[i]);
                                } else {
                                    createState(name + '.' + i, obj[i]); // type: "mixed"
                                }
                            }
                        }
                    }
                    
                    function SendRequest() {
                        const options = {
                            hostname: '192.168.178.49',
                            port: 80,
                            path: '/AllJsonData',
                            method: 'GET',
                        };
                    
                        const req = http.request(options, (resp) => {
                            let data = '';
                    
                            // Ein Datenchunk wurde empfangen.
                            resp.on('data', (chunk) => {
                                data += chunk;
                            });
                    
                            // Die gesamte Antwort wurde erhalten.
                            resp.on('end', () => {
                                try {
                                    const jsonData = JSON.parse(data);
                                    iter('javascript.0.EPever', jsonData);
                                } catch (e) {
                                    console.error('Error parsing JSON:', e);
                                }
                            });
                        });
                    
                        req.on('error', (err) => {
                            console.error('Error fetching data:', err.message);
                        });
                    
                        req.end();
                    }
                    
                    // Set interval to fetch data every 5 seconds
                    schedule('*/5 * * * * *', SendRequest);
                    

                    MOD-EDIT: Code in code-tags gesetzt!

                    haus-automatisierungH 1 Reply Last reply
                    0
                    • K kwone

                      @homoran
                      ja sicher hier das funktionierende Script

                       const http = require('http');
                      
                      function iter(name, obj) {
                          for (let i in obj) {
                              if (typeof obj[i] === 'object' && obj[i] !== null) {
                                  iter(name + '.' + i, obj[i]);
                              } else {
                                  log(name + '.' + i + ': ' + obj[i]);
                                  if (existsState(name + '.' + i)) {
                                      setState(name + '.' + i, obj[i]);
                                  } else {
                                      createState(name + '.' + i, obj[i]); // type: "mixed"
                                  }
                              }
                          }
                      }
                      
                      function SendRequest() {
                          const options = {
                              hostname: '192.168.178.49',
                              port: 80,
                              path: '/AllJsonData',
                              method: 'GET',
                          };
                      
                          const req = http.request(options, (resp) => {
                              let data = '';
                      
                              // Ein Datenchunk wurde empfangen.
                              resp.on('data', (chunk) => {
                                  data += chunk;
                              });
                      
                              // Die gesamte Antwort wurde erhalten.
                              resp.on('end', () => {
                                  try {
                                      const jsonData = JSON.parse(data);
                                      iter('javascript.0.EPever', jsonData);
                                  } catch (e) {
                                      console.error('Error parsing JSON:', e);
                                  }
                              });
                          });
                      
                          req.on('error', (err) => {
                              console.error('Error fetching data:', err.message);
                          });
                      
                          req.end();
                      }
                      
                      // Set interval to fetch data every 5 seconds
                      schedule('*/5 * * * * *', SendRequest);
                      

                      MOD-EDIT: Code in code-tags gesetzt!

                      haus-automatisierungH Online
                      haus-automatisierungH Online
                      haus-automatisierung
                      Developer Most Active
                      wrote on last edited by
                      #11

                      @kwone Und warum so kompliziert ...?

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

                      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

                      732

                      Online

                      32.6k

                      Users

                      82.1k

                      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