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. Hilfe für Javascript Legastheniker und js v8.3.x

NEWS

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

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

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.2k

Hilfe für Javascript Legastheniker und js v8.3.x

Scheduled Pinned Locked Moved JavaScript
104 Posts 8 Posters 13.3k Views 7 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.
  • paul53P paul53

    @homoran sagte: nur noch mit timeout of x msec exceeded und nicht mehr die ganzen null Meldungen

    Blockly_temp.JPG

    HomoranH Offline
    HomoranH Offline
    Homoran
    Global Moderator Administrators
    wrote on last edited by Homoran
    #92

    @paul53 DANKE!
    den Block hab ich gesucht.
    Das Pulldown habe ich natürlich nicht gesehen.

    hatte gestern abend den Timeout auf 4000 gestellt.
    Seitdem kein Fehler mehr.
    Sehe gerade dass im Original ein Timeout von 3000 steht.

    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
    • W wolfi913

      @ofbeqnpolkkl6mby5e13
      @tt-tom
      Nur eine Idee von jemandem der sich aber mit JS nicht auskennt. Daher schlagt mich nicht, falls ich totalen Unsinn schreibe.
      Evtl. liegt's an der Variable var data im Ursprungsscript (z.B. Zeile 51). Möglicherweise funktioniert das nach dem Update auf V8.3.1 nicht mehr. Hatte ein ähnliches Problem in einem Blockly. Da hatte ich eine Variable log. Die musste auch umbenannt werden damit's wieder funktioniert.

      HomoranH Offline
      HomoranH Offline
      Homoran
      Global Moderator Administrators
      wrote on last edited by Homoran
      #93

      @wolfi913 sagte in Hilfe für Javascript Legastheniker und js v8.3.x:

      Evtl. liegt's an der Variable var data im Ursprungsscript

      Hab zwar auch keine Ahnung, kann mir aber nicht vorstellen dassdie variable data bei response.data mitmischen sollte.

      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 -

      T O 2 Replies Last reply
      0
      • O oFbEQnpoLKKl6mbY5e13

        @tt-tom

        Okay, vielen Dank!

        const city_id = 66005;
        const area_id = 2800;
        const logging = false;
        const name = 'Müllabfuhr';
        const numberOfEntries = 69;
        
        const instanz = '0_userdata.' + instance + '.muell-test';
        
        if (logging) log('starting muell.' + instanz);
        
        extendObject(instanz, {
               type: "device",
               common: {
                   name: name
               }
           }, function (err) {
               if (err) {
                   log('could not create device: ', 'warn');
                   return;
               }
           
           }
        );
        let baseData = {};
        
        // query names first
        
        httpGet('https://mymuell.jumomind.com/mmapp/api.php?r=trash&city_id=' + city_id + '&area_id=' + area_id, { timeout: 2000 }, (error, response) => {
          if (!error && response.statusCode == 200) {
               var data = JSON.parse(response.data);  // info ist ein Objekt
                  data.forEach((v, i) => {
                      baseData[v._name] = v;
                  })
          updateMuell();
          } else {
              console.error(error);	
          }
        });
        
        
        schedule('{"time":{"exactTime":true,"start":"12:17"},"period":{"days":1}}', updateMuell);
        
        
        function updateMuell() {
           var options = 'https://mymuell.jumomind.com/webservice.php?idx=termins&city_id=' + city_id + '&area_id=' + area_id + '&ws=3'
        
           httpGet(options, (error, response) => {
               if (!error && response.statusCode == 200) {
                   var info = JSON.parse(response.data);  // info ist ein Objekt
                   if (info[0].Ack === 'Success') {
                       var data = info[0]._data;  // xy ist eine Eigenschaft des Objektes info
                       let counter = 0;
                       const date = (new Date())
                       const todayStr = date.getFullYear() + "-" + ('00' + (date.getMonth() + 1)).slice(-2) + "-" + ('00' + date.getDate()).slice(-2)
                       log(todayStr);
                       data.forEach((v, i) => {
                           if (todayStr < v.cal_date && counter <= numberOfEntries) {
        
                               const basePath = instanz + '.' + ('000' + counter).slice(-3);
                               log(v.cal_date + ' -> ' + basePath, 'debug');
                               // States erstellen
                               extendObject(basePath, {
                                   type: "channel",
                                   common: {
                                       name: v.cal_date_normal
                                   }
                               }, function (err) {
                                   if (err) {
                                       log('could not create device: ', 'warn');
                                       return;
                                   }
        
                               }
                               );
                               createState(basePath + '.date', v.cal_date_normal, {
                                   name: 'Datum',
                                   desc: 'Datum der Abholung',
                                   type: 'string',
                                   read: true,
                                   write: false
                               }, () => {
                                   setState(basePath + '.date', v.cal_date_normal, true);
                               });
        
                               createState(basePath + '.desc', baseData[v.cal_garbage_type].title, {
                                   name: 'Beschreibung',
                                   desc: 'Beschreibung der Abholung',
                                   type: 'string',
                                   read: true,
                                   write: false
                               }, () => {
                                   setState(basePath + '.desc', baseData[v.cal_garbage_type].title, true);
                               });
                               createState(basePath + '.color', {
                                   name: 'Farbe',
                                   desc: 'Farbe',
                                   type: 'string',
                                   role: 'level.color',
                                   read: true,
                                   write: false
                               }, () => {
                                   setState(basePath + '.color', baseData[v.cal_garbage_type].color, true);
                               });
        
                               counter++;
                           }
                       });
                   }
               };
           })
        }
        
        

        T Offline
        T Offline
        TT-Tom
        wrote on last edited by
        #94

        @ofbeqnpolkkl6mby5e13

        bei mir kommen die Meldungen auch, aber nur beim anlegen der States, irgendwie verschluckt er sich da mit den Daten. Wenn die States alle angelegt sind bekomme ich dann keine Meldungen mehr. Werde mal die Stateserstellung mir nochmal genauer ansehen, kann aber etwas dauern.

        Gruß Tom
        https://github.com/tt-tom17
        Wenn meine Hilfe erfolgreich war, benutze bitte das Voting unten rechts im Beitrag

        NSPanel Script Wiki
        https://github.com/joBr99/nspanel-lovelace-ui/wiki

        NSPanel Adapter Wiki
        https://github.com/ticaki/ioBroker.nspanel-lovelace-ui/wiki

        T 1 Reply Last reply
        1
        • HomoranH Homoran

          @wolfi913 sagte in Hilfe für Javascript Legastheniker und js v8.3.x:

          Evtl. liegt's an der Variable var data im Ursprungsscript

          Hab zwar auch keine Ahnung, kann mir aber nicht vorstellen dassdie variable data bei response.data mitmischen sollte.

          T Offline
          T Offline
          TT-Tom
          wrote on last edited by
          #95

          @homoran
          Nein daran liegt es nicht. Die Meldungen kommen nur beim anlegen der States. Danach läuft es bei mir ohne Meldungen weiter.

          Gruß Tom
          https://github.com/tt-tom17
          Wenn meine Hilfe erfolgreich war, benutze bitte das Voting unten rechts im Beitrag

          NSPanel Script Wiki
          https://github.com/joBr99/nspanel-lovelace-ui/wiki

          NSPanel Adapter Wiki
          https://github.com/ticaki/ioBroker.nspanel-lovelace-ui/wiki

          1 Reply Last reply
          0
          • T TT-Tom

            @ofbeqnpolkkl6mby5e13

            bei mir kommen die Meldungen auch, aber nur beim anlegen der States, irgendwie verschluckt er sich da mit den Daten. Wenn die States alle angelegt sind bekomme ich dann keine Meldungen mehr. Werde mal die Stateserstellung mir nochmal genauer ansehen, kann aber etwas dauern.

            T Offline
            T Offline
            TT-Tom
            wrote on last edited by
            #96

            @oFbEQnpoLKKl6mbY5e13

            so jetzt sollte es ohne Meldung funktionieren, bei Color State hat der Wert gefehlt beim erstellen des State.

            const city_id = 66005;
            const area_id = 2800;
            const logging = false;
            const deviceName = 'Müllabfuhr';
            const numberOfEntries = 69;
             
            const instanz = '0_userdata.' + instance + '.muell-test';
             
            if (logging) log('starting muell.' + instanz);
             
            extendObject(instanz, {
                   type: "device",
                   common: {
                       name: deviceName
                   }
               }, function (err) {
                   if (err) {
                       log('could not create device: ', 'warn');
                       return;
                   }
               
               }
            );
            let baseData = {};
             
            // query names first
              
            httpGet('https://mymuell.jumomind.com/mmapp/api.php?r=trash&city_id=' + city_id + '&area_id=' + area_id, { timeout: 2000 }, (error, response) => {
                if (logging) log(`first query statusCode ${response.statusCode}`);
                if (logging) log(`first query data ${response.data}`);
                if (!error && response.statusCode == 200) {
                    let data = JSON.parse(response.data);  // info ist ein Objekt
                    data.forEach((v, i) => {
                        baseData[v._name] = v;
                    })
                    updateMuell();
                } else {
                    log(error, 'error');
                }
            });
            
              
            schedule('{"time":{"exactTime":true,"start":"12:17"},"period":{"days":1}}', updateMuell);
              
              
            function updateMuell() {
                const options = 'https://mymuell.jumomind.com/webservice.php?idx=termins&city_id=' + city_id + '&area_id=' + area_id + '&ws=3'
            
                httpGet(options, (error, response) => {
                    if (logging) log(`update query statusCode ${response.statusCode}`);
                    if (logging) log(`update query data ${response.data}`);
                    if (!error && response.statusCode == 200) {
                        let info = JSON.parse(response.data);  // info ist ein Objekt
                        if (info[0].Ack === 'Success') {
                            let data = info[0]._data;  // xy ist eine Eigenschaft des Objektes info
                            let counter = 0;
                            const date = (new Date())
                            const todayStr = date.getFullYear() + "-" + ('00' + (date.getMonth() + 1)).slice(-2) + "-" + ('00' + date.getDate()).slice(-2)
                            log(todayStr);
                            data.forEach((v, i) => {
                                if (todayStr < v.cal_date && counter <= numberOfEntries) {
            
                                    const basePath = instanz + '.' + ('000' + counter).slice(-3);
                                    if (logging) log(v.cal_date + ' -> ' + basePath);
                                    // States erstellen
                                    extendObject(basePath, {
                                        type: "channel",
                                        common: {
                                            name: v.cal_date_normal
                                        }
                                    }, function (err) {
                                        if (err) {
                                            log('could not create device: ', 'warn');
                                            return;
                                        }
            
                                    }
                                    );
                                    createState(basePath + '.date', v.cal_date_normal, {
                                        name: 'Datum',
                                        desc: 'Datum der Abholung',
                                        type: 'string',
                                        read: true,
                                        write: false
                                    }, () => {
                                        setState(basePath + '.date', v.cal_date_normal, true);
                                    });
            
                                    createState(basePath + '.desc', baseData[v.cal_garbage_type].title, {
                                        name: 'Beschreibung',
                                        desc: 'Beschreibung der Abholung',
                                        type: 'string',
                                        read: true,
                                        write: false
                                    }, () => {
                                        setState(basePath + '.desc', baseData[v.cal_garbage_type].title, true);
                                    });
            
                                    createState(basePath + '.color',baseData[v.cal_garbage_type].color, {
                                        name: 'Farbe',
                                        desc: 'Farbe',
                                        type: 'string',
                                        read: true,
                                        write: false
                                    }, () => {
                                        setState(basePath + '.color', baseData[v.cal_garbage_type].color, true);
                                    });
            
                                    counter++;
                                }
                            });
                        }
                    }
                });
            }
            

            Gruß Tom
            https://github.com/tt-tom17
            Wenn meine Hilfe erfolgreich war, benutze bitte das Voting unten rechts im Beitrag

            NSPanel Script Wiki
            https://github.com/joBr99/nspanel-lovelace-ui/wiki

            NSPanel Adapter Wiki
            https://github.com/ticaki/ioBroker.nspanel-lovelace-ui/wiki

            O 1 Reply Last reply
            1
            • T TT-Tom

              @oFbEQnpoLKKl6mbY5e13

              so jetzt sollte es ohne Meldung funktionieren, bei Color State hat der Wert gefehlt beim erstellen des State.

              const city_id = 66005;
              const area_id = 2800;
              const logging = false;
              const deviceName = 'Müllabfuhr';
              const numberOfEntries = 69;
               
              const instanz = '0_userdata.' + instance + '.muell-test';
               
              if (logging) log('starting muell.' + instanz);
               
              extendObject(instanz, {
                     type: "device",
                     common: {
                         name: deviceName
                     }
                 }, function (err) {
                     if (err) {
                         log('could not create device: ', 'warn');
                         return;
                     }
                 
                 }
              );
              let baseData = {};
               
              // query names first
                
              httpGet('https://mymuell.jumomind.com/mmapp/api.php?r=trash&city_id=' + city_id + '&area_id=' + area_id, { timeout: 2000 }, (error, response) => {
                  if (logging) log(`first query statusCode ${response.statusCode}`);
                  if (logging) log(`first query data ${response.data}`);
                  if (!error && response.statusCode == 200) {
                      let data = JSON.parse(response.data);  // info ist ein Objekt
                      data.forEach((v, i) => {
                          baseData[v._name] = v;
                      })
                      updateMuell();
                  } else {
                      log(error, 'error');
                  }
              });
              
                
              schedule('{"time":{"exactTime":true,"start":"12:17"},"period":{"days":1}}', updateMuell);
                
                
              function updateMuell() {
                  const options = 'https://mymuell.jumomind.com/webservice.php?idx=termins&city_id=' + city_id + '&area_id=' + area_id + '&ws=3'
              
                  httpGet(options, (error, response) => {
                      if (logging) log(`update query statusCode ${response.statusCode}`);
                      if (logging) log(`update query data ${response.data}`);
                      if (!error && response.statusCode == 200) {
                          let info = JSON.parse(response.data);  // info ist ein Objekt
                          if (info[0].Ack === 'Success') {
                              let data = info[0]._data;  // xy ist eine Eigenschaft des Objektes info
                              let counter = 0;
                              const date = (new Date())
                              const todayStr = date.getFullYear() + "-" + ('00' + (date.getMonth() + 1)).slice(-2) + "-" + ('00' + date.getDate()).slice(-2)
                              log(todayStr);
                              data.forEach((v, i) => {
                                  if (todayStr < v.cal_date && counter <= numberOfEntries) {
              
                                      const basePath = instanz + '.' + ('000' + counter).slice(-3);
                                      if (logging) log(v.cal_date + ' -> ' + basePath);
                                      // States erstellen
                                      extendObject(basePath, {
                                          type: "channel",
                                          common: {
                                              name: v.cal_date_normal
                                          }
                                      }, function (err) {
                                          if (err) {
                                              log('could not create device: ', 'warn');
                                              return;
                                          }
              
                                      }
                                      );
                                      createState(basePath + '.date', v.cal_date_normal, {
                                          name: 'Datum',
                                          desc: 'Datum der Abholung',
                                          type: 'string',
                                          read: true,
                                          write: false
                                      }, () => {
                                          setState(basePath + '.date', v.cal_date_normal, true);
                                      });
              
                                      createState(basePath + '.desc', baseData[v.cal_garbage_type].title, {
                                          name: 'Beschreibung',
                                          desc: 'Beschreibung der Abholung',
                                          type: 'string',
                                          read: true,
                                          write: false
                                      }, () => {
                                          setState(basePath + '.desc', baseData[v.cal_garbage_type].title, true);
                                      });
              
                                      createState(basePath + '.color',baseData[v.cal_garbage_type].color, {
                                          name: 'Farbe',
                                          desc: 'Farbe',
                                          type: 'string',
                                          read: true,
                                          write: false
                                      }, () => {
                                          setState(basePath + '.color', baseData[v.cal_garbage_type].color, true);
                                      });
              
                                      counter++;
                                  }
                              });
                          }
                      }
                  });
              }
              

              O Offline
              O Offline
              oFbEQnpoLKKl6mbY5e13
              wrote on last edited by
              #97

              @tt-tom

              Ganz herzlichen Dank für deine Hilfe! Skript läuft.

              1 Reply Last reply
              0
              • HomoranH Homoran

                @wolfi913 sagte in Hilfe für Javascript Legastheniker und js v8.3.x:

                Evtl. liegt's an der Variable var data im Ursprungsscript

                Hab zwar auch keine Ahnung, kann mir aber nicht vorstellen dassdie variable data bei response.data mitmischen sollte.

                O Offline
                O Offline
                oFbEQnpoLKKl6mbY5e13
                wrote on last edited by oFbEQnpoLKKl6mbY5e13
                #98

                @homoran

                Welches Fazit wollen wir nun ziehen?

                Aus meiner Sicht ist es schlicht unmöglich, eine Anleitung zu erstellen. Jedes Skript ist potentiell so unterschiedlich, dass man nicht einfach einen Block durch einen anderen austauschen kann. Vielleicht muss man hier das Wort "Anleitung" im wahrsten Sinn des Wortes verstehen. Sie kann einen User nur bei der Umstellung "anleiten".

                T W HomoranH 3 Replies Last reply
                0
                • O oFbEQnpoLKKl6mbY5e13

                  @homoran

                  Welches Fazit wollen wir nun ziehen?

                  Aus meiner Sicht ist es schlicht unmöglich, eine Anleitung zu erstellen. Jedes Skript ist potentiell so unterschiedlich, dass man nicht einfach einen Block durch einen anderen austauschen kann. Vielleicht muss man hier das Wort "Anleitung" im wahrsten Sinn des Wortes verstehen. Sie kann einen User nur bei der Umstellung "anleiten".

                  T Offline
                  T Offline
                  TT-Tom
                  wrote on last edited by
                  #99

                  @ofbeqnpolkkl6mby5e13
                  ich glaube, wenn am die alte Schreibweise der neuen gegenüberstellt und sieht, wo die Parameter jetzt eingesetzt werden bzw. wie sie jetzt heißen, wird es verständlicher.

                  Gruß Tom
                  https://github.com/tt-tom17
                  Wenn meine Hilfe erfolgreich war, benutze bitte das Voting unten rechts im Beitrag

                  NSPanel Script Wiki
                  https://github.com/joBr99/nspanel-lovelace-ui/wiki

                  NSPanel Adapter Wiki
                  https://github.com/ticaki/ioBroker.nspanel-lovelace-ui/wiki

                  O 2 Replies Last reply
                  1
                  • O oFbEQnpoLKKl6mbY5e13

                    @homoran

                    Welches Fazit wollen wir nun ziehen?

                    Aus meiner Sicht ist es schlicht unmöglich, eine Anleitung zu erstellen. Jedes Skript ist potentiell so unterschiedlich, dass man nicht einfach einen Block durch einen anderen austauschen kann. Vielleicht muss man hier das Wort "Anleitung" im wahrsten Sinn des Wortes verstehen. Sie kann einen User nur bei der Umstellung "anleiten".

                    W Offline
                    W Offline
                    wolfi913
                    wrote on last edited by
                    #100

                    @ofbeqnpolkkl6mby5e13 sagte in Hilfe für Javascript Legastheniker und js v8.3.x:

                    Welches Fazit wollen wir nun ziehen?

                    Matthias @haus-automatisierung hat hier zwischenzeitlich einen Upgrade-Guide erstellt.

                    https://forum.iobroker.net/topic/74659/request-package-is-deprecated-please-use-httpget/25

                    1 Reply Last reply
                    2
                    • O oFbEQnpoLKKl6mbY5e13

                      @homoran

                      Welches Fazit wollen wir nun ziehen?

                      Aus meiner Sicht ist es schlicht unmöglich, eine Anleitung zu erstellen. Jedes Skript ist potentiell so unterschiedlich, dass man nicht einfach einen Block durch einen anderen austauschen kann. Vielleicht muss man hier das Wort "Anleitung" im wahrsten Sinn des Wortes verstehen. Sie kann einen User nur bei der Umstellung "anleiten".

                      HomoranH Offline
                      HomoranH Offline
                      Homoran
                      Global Moderator Administrators
                      wrote on last edited by
                      #101

                      @ofbeqnpolkkl6mby5e13 Ja, da gebe ich dir recht.
                      Allerdings denke ich (will ich glauben) dass die komplexen Skripte, die nicht einfach umzustellen sind, in der Minderheit sind.

                      Inzwischen gibt es schon mehrere Threads zu diesem Thema und ich habe alle verfolgt!
                      Ich glaube auch, dass die Welle der Hilfesuchenden gerade erst anschwappt und noch lange icht ihren Höhepunkt erreicht hat.

                      Zum Glück gibt's auch Inzwischen viele Helfende, die sich um die Hilfesuchenden kümmern.

                      Wenn es hilft einigen bis mehreren durch die einfachste Formel
                      request(... durch httpGet(.... zu ersetzen, body dort zu streichen und statt den folgenden body jetzt response.data einzugeben wäre schon viel geholfen.

                      Die wichtigste Botschaft für Hilfesuchende, die ich aus diesem bisherigen Thread entnehme, ist: Es wird schon irgendwie ans laufen zu bringen sein.

                      DANKE an alle Unterstützer

                      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
                      3
                      • T TT-Tom

                        @ofbeqnpolkkl6mby5e13
                        ich glaube, wenn am die alte Schreibweise der neuen gegenüberstellt und sieht, wo die Parameter jetzt eingesetzt werden bzw. wie sie jetzt heißen, wird es verständlicher.

                        O Offline
                        O Offline
                        oFbEQnpoLKKl6mbY5e13
                        wrote on last edited by
                        #102

                        @tt-tom

                        Ich hatte das gestern jedes Mal gemacht, wenn du neuen Code gepostest hast. Heute hatte ich bisher nicht mehr die Muße..

                        1 Reply Last reply
                        0
                        • T TT-Tom

                          @ofbeqnpolkkl6mby5e13
                          ich glaube, wenn am die alte Schreibweise der neuen gegenüberstellt und sieht, wo die Parameter jetzt eingesetzt werden bzw. wie sie jetzt heißen, wird es verständlicher.

                          O Offline
                          O Offline
                          oFbEQnpoLKKl6mbY5e13
                          wrote on last edited by oFbEQnpoLKKl6mbY5e13
                          #103

                          @tt-tom

                          Noch mal eine kleine Frage zum Parameter Timeout. Diesen hatte ich in der ersten httpGet-Abfrage eingebaut, allerdings in der zweiten Abfrage entweder vergessen oder erstmal zur Vereinfachung weggelassen.

                          httpGet('https://mymuell.jumomind.com/mmapp/api.php?r=trash&city_id=' + city_id + '&area_id=' + area_id, { timeout: 4000 }, (error, response) => {
                              if (logging) log(`first query statusCode ${response.statusCode}`);
                              if (logging) log(`first query data ${response.data}`);
                              if (!error && response.statusCode == 200) {
                                  let data = JSON.parse(response.data);  // info ist ein Objekt
                                  data.forEach((v, i) => {
                                      baseData[v._name] = v;
                                  })
                                  updateMuell();
                              } else {
                                  log(error, 'error');
                              }
                          });
                           
                            
                          schedule('{"time":{"exactTime":true,"start":"12:17"},"period":{"days":1}}', updateMuell);
                            
                            
                          function updateMuell() {
                              const options = 'https://mymuell.jumomind.com/webservice.php?idx=termins&city_id=' + city_id + '&area_id=' + area_id + '&ws=3'
                           
                              httpGet(options, (error, response) => {
                          

                          Wäre die Syntax so richtig?

                          function updateMuell() {
                              const options = 'https://mymuell.jumomind.com/webservice.php?idx=termins&city_id=' + city_id + '&area_id=' + area_id + '&ws=3'
                           
                              httpGet(options, { timeout: 4000 }, (error, response) => {
                          
                          T 1 Reply Last reply
                          0
                          • O oFbEQnpoLKKl6mbY5e13

                            @tt-tom

                            Noch mal eine kleine Frage zum Parameter Timeout. Diesen hatte ich in der ersten httpGet-Abfrage eingebaut, allerdings in der zweiten Abfrage entweder vergessen oder erstmal zur Vereinfachung weggelassen.

                            httpGet('https://mymuell.jumomind.com/mmapp/api.php?r=trash&city_id=' + city_id + '&area_id=' + area_id, { timeout: 4000 }, (error, response) => {
                                if (logging) log(`first query statusCode ${response.statusCode}`);
                                if (logging) log(`first query data ${response.data}`);
                                if (!error && response.statusCode == 200) {
                                    let data = JSON.parse(response.data);  // info ist ein Objekt
                                    data.forEach((v, i) => {
                                        baseData[v._name] = v;
                                    })
                                    updateMuell();
                                } else {
                                    log(error, 'error');
                                }
                            });
                             
                              
                            schedule('{"time":{"exactTime":true,"start":"12:17"},"period":{"days":1}}', updateMuell);
                              
                              
                            function updateMuell() {
                                const options = 'https://mymuell.jumomind.com/webservice.php?idx=termins&city_id=' + city_id + '&area_id=' + area_id + '&ws=3'
                             
                                httpGet(options, (error, response) => {
                            

                            Wäre die Syntax so richtig?

                            function updateMuell() {
                                const options = 'https://mymuell.jumomind.com/webservice.php?idx=termins&city_id=' + city_id + '&area_id=' + area_id + '&ws=3'
                             
                                httpGet(options, { timeout: 4000 }, (error, response) => {
                            
                            T Offline
                            T Offline
                            TT-Tom
                            wrote on last edited by
                            #104

                            @oFbEQnpoLKKl6mbY5e13
                            Jo passt
                            Link Doku

                            Gruß Tom
                            https://github.com/tt-tom17
                            Wenn meine Hilfe erfolgreich war, benutze bitte das Voting unten rechts im Beitrag

                            NSPanel Script Wiki
                            https://github.com/joBr99/nspanel-lovelace-ui/wiki

                            NSPanel Adapter Wiki
                            https://github.com/ticaki/ioBroker.nspanel-lovelace-ui/wiki

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


                            Support us

                            ioBroker
                            Community Adapters
                            Donate

                            534

                            Online

                            32.6k

                            Users

                            82.2k

                            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