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. Skripten / Logik
  4. JavaScript
  5. Hilfe für Javascript Legastheniker und js v8.3.x

NEWS

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    11
    1
    325

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    24
    1
    1.5k

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

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

Geplant Angeheftet Gesperrt Verschoben JavaScript
104 Beiträge 8 Kommentatoren 13.0k Aufrufe 7 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 oFbEQnpoLKKl6mbY5e13

    @homoran

    Die Funktion updateMuell (Zeile 43) wird nur ausgeführt wenn "schedule('{"time":{"exactTime":true,"start":"12:17"},"period":{"days":1}}'".

    Beim ersten Start muss trotzdem aktualisiert bzw. die Objektstruktur erstellt werden.

    Edit:
    Nee, stimmt nicht. Die wird auch beim Starten ausgeführt.

    HomoranH Nicht stören
    HomoranH Nicht stören
    Homoran
    Global Moderator Administrators
    schrieb am zuletzt editiert von Homoran
    #64

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

    Edit

    danke! ich wollte gerade für heute Schluss machen weil ich keine andere Stelle mehr fand ;-)

    also mal per log prüfen ob options klappt

    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 -

    O 1 Antwort Letzte Antwort
    0
    • HomoranH Homoran

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

      Edit

      danke! ich wollte gerade für heute Schluss machen weil ich keine andere Stelle mehr fand ;-)

      also mal per log prüfen ob options klappt

      O Offline
      O Offline
      oFbEQnpoLKKl6mbY5e13
      schrieb am zuletzt editiert von
      #65

      @homoran

      httpGet(options), (error, response)
          console.log(response.statusCode);
          console.log(response.data);
      

      Wird nichts ausgegeben.

      HomoranH paul53P 2 Antworten Letzte Antwort
      0
      • O oFbEQnpoLKKl6mbY5e13

        @homoran

        httpGet(options), (error, response)
            console.log(response.statusCode);
            console.log(response.data);
        

        Wird nichts ausgegeben.

        HomoranH Nicht stören
        HomoranH Nicht stören
        Homoran
        Global Moderator Administrators
        schrieb am zuletzt editiert von
        #66

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

        @homoran

        httpGet(options), (error, response)
            console.log(response.statusCode);
            console.log(response.data);
        

        Wird nichts ausgegeben.

        dann wird auch nichts angelegt.

        Nur warum?
        ist options nicht korrekt zusammengebaut?

        console.log(options) sagt das gleiche was in Zeile 27 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 -

        O 1 Antwort Letzte Antwort
        0
        • HomoranH Homoran

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

          @homoran

          httpGet(options), (error, response)
              console.log(response.statusCode);
              console.log(response.data);
          

          Wird nichts ausgegeben.

          dann wird auch nichts angelegt.

          Nur warum?
          ist options nicht korrekt zusammengebaut?

          console.log(options) sagt das gleiche was in Zeile 27 steht?

          O Offline
          O Offline
          oFbEQnpoLKKl6mbY5e13
          schrieb am zuletzt editiert von
          #67

          @homoran

          Wenn ich das mache:

          httpGet(options), (error, response)
              console.log(response.statusCode);
              console.log(response.data);
              console.log("test");
          

          Wird "test" nicht ausgegeben. Das Skript ruft also die Funktion gar nicht auf.

          HomoranH 1 Antwort Letzte Antwort
          0
          • O oFbEQnpoLKKl6mbY5e13

            @homoran

            Wenn ich das mache:

            httpGet(options), (error, response)
                console.log(response.statusCode);
                console.log(response.data);
                console.log("test");
            

            Wird "test" nicht ausgegeben. Das Skript ruft also die Funktion gar nicht auf.

            HomoranH Nicht stören
            HomoranH Nicht stören
            Homoran
            Global Moderator Administrators
            schrieb am zuletzt editiert von
            #68

            @ofbeqnpolkkl6mby5e13
            Sorry, dann mach ich doch Schluss für heute.
            mir raucht der Kopf. Das hemmt die Kreativität

            Mal sehen was abdere bis morgen rausfinden

            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 Antwort Letzte Antwort
            1
            • O oFbEQnpoLKKl6mbY5e13

              @homoran

              httpGet(options), (error, response)
                  console.log(response.statusCode);
                  console.log(response.data);
              

              Wird nichts ausgegeben.

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

              @ofbeqnpolkkl6mby5e13 sagte: Wird nichts ausgegeben.

              Es fehlt auch was.

              httpGet(options, (error, response) => {
              

              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
              0
              • paul53P paul53

                @ofbeqnpolkkl6mby5e13 sagte: Wird nichts ausgegeben.

                Es fehlt auch was.

                httpGet(options, (error, response) => {
                
                O Offline
                O Offline
                oFbEQnpoLKKl6mbY5e13
                schrieb am zuletzt editiert von oFbEQnpoLKKl6mbY5e13
                #70

                @paul53

                Danke!

                2024-05-26 22:19:52.596  - info: javascript.0 (3416) Start JavaScript script.js.common._Tests.Test_17 (JavaScript/js)
                2024-05-26 22:19:52.597  - error: javascript.0 (3416) script.js.common._Tests.Test_17 compile failed:
                at script.js.common._Tests.Test_17:118
                2024-05-26 22:19:52.598  - error: javascript.0 (3416) })();
                2024-05-26 22:19:52.598  - error: javascript.0 (3416)  ^
                2024-05-26 22:19:52.598  - error: javascript.0 (3416) SyntaxError: Unexpected token ')'
                2024-05-26 22:19:52.598  - error: javascript.0 (3416)     at new Script (node:vm:99:7)
                2024-05-26 22:19:52.598  - error: javascript.0 (3416)     at createVM (/opt/iobroker/node_modules/iobroker.javascript/main.js:1917:21)
                2024-05-26 22:19:52.599  - error: javascript.0 (3416)     at prepareScript (/opt/iobroker/node_modules/iobroker.javascript/main.js:2183:37)
                2024-05-26 22:19:52.599  - error: javascript.0 (3416)     at /opt/iobroker/node_modules/iobroker.javascript/main.js:2281:17
                2024-05-26 22:19:52.599  - error: javascript.0 (3416)     at Immediate._onImmediate (/opt/iobroker/node_modules/iobroker.javascript/main.js:1703:17)
                2024-05-26 22:19:52.599  - error: javascript.0 (3416)     at process.processImmediate (node:internal/timers:478:21)
                2024-05-26 22:19:55.316  - info: javascript.0 (3416) Stopping script script.js.common._Tests.Test_17
                
                

                An welcher Stelle ist die Klammer zu viel?

                paul53P 1 Antwort Letzte Antwort
                0
                • HomoranH Homoran

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

                  dass bei einem Fehler keine Auswertung gemacht wird.

                  aber das log wird trotzdem zugemüllt.
                  Allerdings dann (hoffentlich) nur noch mit timeout of x msec exceeded und nicht mehr die ganzen null Meldungen

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

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

                  Blockly_temp.JPG

                  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

                  HomoranH 1 Antwort Letzte Antwort
                  2
                  • O oFbEQnpoLKKl6mbY5e13

                    @paul53

                    Danke!

                    2024-05-26 22:19:52.596  - info: javascript.0 (3416) Start JavaScript script.js.common._Tests.Test_17 (JavaScript/js)
                    2024-05-26 22:19:52.597  - error: javascript.0 (3416) script.js.common._Tests.Test_17 compile failed:
                    at script.js.common._Tests.Test_17:118
                    2024-05-26 22:19:52.598  - error: javascript.0 (3416) })();
                    2024-05-26 22:19:52.598  - error: javascript.0 (3416)  ^
                    2024-05-26 22:19:52.598  - error: javascript.0 (3416) SyntaxError: Unexpected token ')'
                    2024-05-26 22:19:52.598  - error: javascript.0 (3416)     at new Script (node:vm:99:7)
                    2024-05-26 22:19:52.598  - error: javascript.0 (3416)     at createVM (/opt/iobroker/node_modules/iobroker.javascript/main.js:1917:21)
                    2024-05-26 22:19:52.599  - error: javascript.0 (3416)     at prepareScript (/opt/iobroker/node_modules/iobroker.javascript/main.js:2183:37)
                    2024-05-26 22:19:52.599  - error: javascript.0 (3416)     at /opt/iobroker/node_modules/iobroker.javascript/main.js:2281:17
                    2024-05-26 22:19:52.599  - error: javascript.0 (3416)     at Immediate._onImmediate (/opt/iobroker/node_modules/iobroker.javascript/main.js:1703:17)
                    2024-05-26 22:19:52.599  - error: javascript.0 (3416)     at process.processImmediate (node:internal/timers:478:21)
                    2024-05-26 22:19:55.316  - info: javascript.0 (3416) Stopping script script.js.common._Tests.Test_17
                    
                    

                    An welcher Stelle ist die Klammer zu viel?

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

                    @ofbeqnpolkkl6mby5e13 sagte: An welcher Stelle ist die Klammer zu viel?

                    ?? Die komplette Testfunktion:

                    httpGet(options, (error, response) => {
                        console.log(response.statusCode);
                        console.log(response.data);
                    });
                    

                    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
                    0
                    • paul53P paul53

                      @ofbeqnpolkkl6mby5e13 sagte: An welcher Stelle ist die Klammer zu viel?

                      ?? Die komplette Testfunktion:

                      httpGet(options, (error, response) => {
                          console.log(response.statusCode);
                          console.log(response.data);
                      });
                      
                      O Offline
                      O Offline
                      oFbEQnpoLKKl6mbY5e13
                      schrieb am zuletzt editiert von
                      #73

                      @paul53

                      Aber das war nur ein winziger Ausschnitt aus einem größeren Skript:

                      const city_id = XXXXX;
                      const area_id = XXX;
                      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) {
                             console.log(response.statusCode);
                             console.log(response.data);
                         } else {
                             console.error(error);
                         var data = JSON.parse(response.data);  // info ist ein Objekt
                                 data.forEach((v, i) => {
                                     baseData[v._name] = v;
                                 })
                         updateMuell();	
                         }
                      });
                      
                      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) => {
                         console.log(response.statusCode);
                         console.log(response.data);
                         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 1 Antwort Letzte Antwort
                      0
                      • O oFbEQnpoLKKl6mbY5e13

                        @paul53

                        Aber das war nur ein winziger Ausschnitt aus einem größeren Skript:

                        const city_id = XXXXX;
                        const area_id = XXX;
                        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) {
                               console.log(response.statusCode);
                               console.log(response.data);
                           } else {
                               console.error(error);
                           var data = JSON.parse(response.data);  // info ist ein Objekt
                                   data.forEach((v, i) => {
                                       baseData[v._name] = v;
                                   })
                           updateMuell();	
                           }
                        });
                        
                        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) => {
                           console.log(response.statusCode);
                           console.log(response.data);
                           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
                        schrieb am zuletzt editiert von
                        #74

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

                        httpGet(options), (error, response) => {

                        Zeile 46 hinter options die ) muss weg.

                        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 Antwort Letzte Antwort
                        0
                        • T TT-Tom

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

                          httpGet(options), (error, response) => {

                          Zeile 46 hinter options die ) muss weg.

                          O Offline
                          O Offline
                          oFbEQnpoLKKl6mbY5e13
                          schrieb am zuletzt editiert von
                          #75

                          @tt-tom

                          2024-05-26 22:46:45.108  - error: javascript.0 (3416) script.js.common._Tests.Test_17 compile failed:
                          at script.js.common._Tests.Test_17:111
                          2024-05-26 22:46:45.109  - error: javascript.0 (3416)         };
                          2024-05-26 22:46:45.109  - error: javascript.0 (3416)         ^
                          2024-05-26 22:46:45.109  - error: javascript.0 (3416) SyntaxError: missing ) after argument list
                          2024-05-26 22:46:45.109  - error: javascript.0 (3416)     at new Script (node:vm:99:7)
                          2024-05-26 22:46:45.110  - error: javascript.0 (3416)     at createVM (/opt/iobroker/node_modules/iobroker.javascript/main.js:1917:21)
                          2024-05-26 22:46:45.110  - error: javascript.0 (3416)     at prepareScript (/opt/iobroker/node_modules/iobroker.javascript/main.js:2183:37)
                          2024-05-26 22:46:45.110  - error: javascript.0 (3416)     at /opt/iobroker/node_modules/iobroker.javascript/main.js:2281:17
                          2024-05-26 22:46:45.110  - error: javascript.0 (3416)     at Immediate._onImmediate (/opt/iobroker/node_modules/iobroker.javascript/main.js:1703:17)
                          2024-05-26 22:46:45.111  - error: javascript.0 (3416)     at process.processImmediate (node:internal/timers:478:21)
                          2024-05-26 22:46:46.955  - info: javascript.0 (3416) Stopping script script.js.common._Tests.Test_17
                          
                          T 1 Antwort Letzte Antwort
                          0
                          • O oFbEQnpoLKKl6mbY5e13

                            @tt-tom

                            2024-05-26 22:46:45.108  - error: javascript.0 (3416) script.js.common._Tests.Test_17 compile failed:
                            at script.js.common._Tests.Test_17:111
                            2024-05-26 22:46:45.109  - error: javascript.0 (3416)         };
                            2024-05-26 22:46:45.109  - error: javascript.0 (3416)         ^
                            2024-05-26 22:46:45.109  - error: javascript.0 (3416) SyntaxError: missing ) after argument list
                            2024-05-26 22:46:45.109  - error: javascript.0 (3416)     at new Script (node:vm:99:7)
                            2024-05-26 22:46:45.110  - error: javascript.0 (3416)     at createVM (/opt/iobroker/node_modules/iobroker.javascript/main.js:1917:21)
                            2024-05-26 22:46:45.110  - error: javascript.0 (3416)     at prepareScript (/opt/iobroker/node_modules/iobroker.javascript/main.js:2183:37)
                            2024-05-26 22:46:45.110  - error: javascript.0 (3416)     at /opt/iobroker/node_modules/iobroker.javascript/main.js:2281:17
                            2024-05-26 22:46:45.110  - error: javascript.0 (3416)     at Immediate._onImmediate (/opt/iobroker/node_modules/iobroker.javascript/main.js:1703:17)
                            2024-05-26 22:46:45.111  - error: javascript.0 (3416)     at process.processImmediate (node:internal/timers:478:21)
                            2024-05-26 22:46:46.955  - info: javascript.0 (3416) Stopping script script.js.common._Tests.Test_17
                            
                            T Offline
                            T Offline
                            TT-Tom
                            schrieb am zuletzt editiert von TT-Tom
                            #76

                            @ofbeqnpolkkl6mby5e13

                            da fehlen irgendwo noch Klammern, bin grad mal am suchen

                            Edit: probiere mal das jetzt.

                            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) => {
                                    console.log(response.statusCode);
                                    console.log(response.data);
                                    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++;
                                                }
                                            });
                                        }
                                    };
                                })
                            }
                            

                            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 Antwort Letzte Antwort
                            1
                            • T TT-Tom

                              @ofbeqnpolkkl6mby5e13

                              da fehlen irgendwo noch Klammern, bin grad mal am suchen

                              Edit: probiere mal das jetzt.

                              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) => {
                                      console.log(response.statusCode);
                                      console.log(response.data);
                                      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++;
                                                  }
                                              });
                                          }
                                      };
                                  })
                              }
                              
                              O Offline
                              O Offline
                              oFbEQnpoLKKl6mbY5e13
                              schrieb am zuletzt editiert von
                              #77

                              @tt-tom

                              Danke, es kommt kein Fehler mehr! Eine Objektstruktur wird weiterhin nicht angelegt.

                              T 1 Antwort Letzte Antwort
                              0
                              • O oFbEQnpoLKKl6mbY5e13

                                @tt-tom

                                Danke, es kommt kein Fehler mehr! Eine Objektstruktur wird weiterhin nicht angelegt.

                                T Offline
                                T Offline
                                TT-Tom
                                schrieb am zuletzt editiert von
                                #78

                                @ofbeqnpolkkl6mby5e13
                                okay dann brauche ich mal das komplette Log vom Start das Script. Muss mir mal die Daten ansehen, die da kommen.

                                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 Antwort Letzte Antwort
                                0
                                • T TT-Tom

                                  @ofbeqnpolkkl6mby5e13
                                  okay dann brauche ich mal das komplette Log vom Start das Script. Muss mir mal die Daten ansehen, die da kommen.

                                  O Offline
                                  O Offline
                                  oFbEQnpoLKKl6mbY5e13
                                  schrieb am zuletzt editiert von
                                  #79

                                  @tt-tom

                                  2024-05-26 23:06:36.838  - info: javascript.0 (3416) Start JavaScript script.js.common._Tests.Test_17 (JavaScript/js)
                                  2024-05-26 23:06:36.850  - info: javascript.0 (3416) script.js.common._Tests.Test_17: registered 0 subscriptions, 1 schedule, 0 messages, 0 logs and 0 file subscriptions
                                  2024-05-26 23:06:36.925  - info: javascript.0 (3416) script.js.common._Tests.Test_17: 200
                                  2024-05-26 23:06:36.926  - info: javascript.0 (3416) script.js.common._Tests.Test_17: [{"title":"Bioabfall","name":"SZ_BIO","_name":"SZ_BIO","color":"a52a2a"},{"title":"Gelber Sack","name":"SZ_G","_name":"SZ_G","color":"FFFF00"},{"title":"Altpapier (120l, 240l)","name":"SZ_P","_name":"SZ_P","color":"2fc2e8"},{"title":"Restabfall (bis 240l)","name":"SZ_R","_name":"SZ_R","color":"2F4F4F"},{"title":"Weihnachtsbaum","name":"SZ_W","_name":"SZ_W","color":"36b515"}]
                                  2024-05-26 23:14:15.038  - info: javascript.0 (3416) Stopping script script.js.common._Tests.Test_17
                                  
                                  T 1 Antwort Letzte Antwort
                                  0
                                  • O oFbEQnpoLKKl6mbY5e13

                                    @tt-tom

                                    2024-05-26 23:06:36.838  - info: javascript.0 (3416) Start JavaScript script.js.common._Tests.Test_17 (JavaScript/js)
                                    2024-05-26 23:06:36.850  - info: javascript.0 (3416) script.js.common._Tests.Test_17: registered 0 subscriptions, 1 schedule, 0 messages, 0 logs and 0 file subscriptions
                                    2024-05-26 23:06:36.925  - info: javascript.0 (3416) script.js.common._Tests.Test_17: 200
                                    2024-05-26 23:06:36.926  - info: javascript.0 (3416) script.js.common._Tests.Test_17: [{"title":"Bioabfall","name":"SZ_BIO","_name":"SZ_BIO","color":"a52a2a"},{"title":"Gelber Sack","name":"SZ_G","_name":"SZ_G","color":"FFFF00"},{"title":"Altpapier (120l, 240l)","name":"SZ_P","_name":"SZ_P","color":"2fc2e8"},{"title":"Restabfall (bis 240l)","name":"SZ_R","_name":"SZ_R","color":"2F4F4F"},{"title":"Weihnachtsbaum","name":"SZ_W","_name":"SZ_W","color":"36b515"}]
                                    2024-05-26 23:14:15.038  - info: javascript.0 (3416) Stopping script script.js.common._Tests.Test_17
                                    
                                    T Offline
                                    T Offline
                                    TT-Tom
                                    schrieb am zuletzt editiert von
                                    #80

                                    @ofbeqnpolkkl6mby5e13
                                    der erste teil stimmt auch nicht bzw. ist unlogisch. Hast du noch das original?

                                    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 Antwort Letzte Antwort
                                    0
                                    • T TT-Tom

                                      @ofbeqnpolkkl6mby5e13
                                      der erste teil stimmt auch nicht bzw. ist unlogisch. Hast du noch das original?

                                      O Offline
                                      O Offline
                                      oFbEQnpoLKKl6mbY5e13
                                      schrieb am zuletzt editiert von
                                      #81

                                      @tt-tom

                                      https://github.com/volkerrichert/ioBroker.mymuell/blob/master/myMuell.iob

                                      T 1 Antwort Letzte Antwort
                                      0
                                      • O oFbEQnpoLKKl6mbY5e13

                                        @tt-tom

                                        https://github.com/volkerrichert/ioBroker.mymuell/blob/master/myMuell.iob

                                        T Offline
                                        T Offline
                                        TT-Tom
                                        schrieb am zuletzt editiert von TT-Tom
                                        #82

                                        @ofbeqnpolkkl6mby5e13

                                        okay, muss den Anfang auch nochmal anpassen. Da ist etwas verrutscht ;)

                                        Edit: probiere mal das

                                        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) {
                                               console.log(response.statusCode);
                                               console.log(response.data);
                                               var data = JSON.parse(response.data);  // info ist ein Objekt
                                                   data.forEach((v, i) => {
                                                       baseData[v._name] = v;
                                                   })
                                           updateMuell();
                                           } else {
                                               console.error(error);	
                                           }
                                        });
                                        

                                        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 Antwort Letzte Antwort
                                        0
                                        • T TT-Tom

                                          @ofbeqnpolkkl6mby5e13

                                          okay, muss den Anfang auch nochmal anpassen. Da ist etwas verrutscht ;)

                                          Edit: probiere mal das

                                          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) {
                                                 console.log(response.statusCode);
                                                 console.log(response.data);
                                                 var data = JSON.parse(response.data);  // info ist ein Objekt
                                                     data.forEach((v, i) => {
                                                         baseData[v._name] = v;
                                                     })
                                             updateMuell();
                                             } else {
                                                 console.error(error);	
                                             }
                                          });
                                          
                                          O Offline
                                          O Offline
                                          oFbEQnpoLKKl6mbY5e13
                                          schrieb am zuletzt editiert von
                                          #83

                                          @tt-tom

                                          Ah, jetzt wird die Objektstruktur angelegt! Vielen Dank!

                                          Aber, im Original werden keine Daten auf der Konsole ausgegeben. Woran liegt das?

                                          T 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

                                          540

                                          Online

                                          32.5k

                                          Benutzer

                                          81.7k

                                          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