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. Umstellung auf "axios"

NEWS

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    18
    1
    601

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

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

Umstellung auf "axios"

Scheduled Pinned Locked Moved Skripten / Logik
33 Posts 9 Posters 3.0k 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.
  • G Offline
    G Offline
    glitzi
    wrote on last edited by glitzi
    #1

    Hallo,
    in meinem Skript nutze ich noch "request" viele sprechen jetzt von einer Umstellung auf "axios"
    sollte ich dies auch in meinem Fall umstellen? und was müste ich dafür alles ändern?

     
    function()
    {
    
    var request= require('request');
    request.post({
      url:     'http://xx.xx.xx.xx/daqdata.cgi?key=xxx...xxx',
      encoding: 'latin1'
    }, function(error, response, body){
      if (body) {
          
          var parts = body.split('\n');
    
          var parts_Guntamatic = parts[0];
          setState('Guntamatic_Betrieb_0', parts_Guntamatic, true);
    
          var parts_Guntamatic = parts[1];
          setState('Guntamatic_Aussentemperatur_1', parts_Guntamatic, true);
    
    usw..........
    
    OliverIOO 1 Reply Last reply
    0
    • G glitzi

      Hallo,
      in meinem Skript nutze ich noch "request" viele sprechen jetzt von einer Umstellung auf "axios"
      sollte ich dies auch in meinem Fall umstellen? und was müste ich dafür alles ändern?

       
      function()
      {
      
      var request= require('request');
      request.post({
        url:     'http://xx.xx.xx.xx/daqdata.cgi?key=xxx...xxx',
        encoding: 'latin1'
      }, function(error, response, body){
        if (body) {
            
            var parts = body.split('\n');
      
            var parts_Guntamatic = parts[0];
            setState('Guntamatic_Betrieb_0', parts_Guntamatic, true);
      
            var parts_Guntamatic = parts[1];
            setState('Guntamatic_Aussentemperatur_1', parts_Guntamatic, true);
      
      usw..........
      
      OliverIOO Offline
      OliverIOO Offline
      OliverIO
      wrote on last edited by
      #2

      @glitzi

      Es müsste ungefähr so aussehen.
      bei dem Encoding war ich mir nicht ganz sicher, aber das müsste es sein.
      Ob latin ein gültiger Wert ist weiß ich nicht.

      axios.post('http://xx.xx.xx.xx/daqdata.cgi?key=xxx...xxx', {
          responseEncoding: 'latin'
        })
        .then(function (response) {
          console.log(response);
          if (respnse.data) {
            
            var parts = respnse.data.split('\n');
       
            var parts_Guntamatic = parts[0];
            setState('Guntamatic_Betrieb_0', parts_Guntamatic, true);
       
            var parts_Guntamatic = parts[1];
            setState('Guntamatic_Aussentemperatur_1', parts_Guntamatic, true);
          })
        .catch(function (error) {
          console.log(error);
        });
      

      Meine Adapter und Widgets
      TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
      Links im Profil

      SBorgS AlCalzoneA 2 Replies Last reply
      0
      • OliverIOO OliverIO

        @glitzi

        Es müsste ungefähr so aussehen.
        bei dem Encoding war ich mir nicht ganz sicher, aber das müsste es sein.
        Ob latin ein gültiger Wert ist weiß ich nicht.

        axios.post('http://xx.xx.xx.xx/daqdata.cgi?key=xxx...xxx', {
            responseEncoding: 'latin'
          })
          .then(function (response) {
            console.log(response);
            if (respnse.data) {
              
              var parts = respnse.data.split('\n');
         
              var parts_Guntamatic = parts[0];
              setState('Guntamatic_Betrieb_0', parts_Guntamatic, true);
         
              var parts_Guntamatic = parts[1];
              setState('Guntamatic_Aussentemperatur_1', parts_Guntamatic, true);
            })
          .catch(function (error) {
            console.log(error);
          });
        
        SBorgS Offline
        SBorgS Offline
        SBorg
        Forum Testing Most Active
        wrote on last edited by
        #3

        @oliverio Psst, ...und für die C&P - Fraktion kaufe ich für 10 Cent noch zwei "o" dazu :joy:
        (für die Fraktion die noch die Sesamstrasse kennt...)

        Zeile #6 bis #8

            if (response.data) {
        
              var parts = response.data.split('\n');
        

        LG SBorg ( SBorg auf GitHub)
        Projekte: Lebensmittelwarnung.de | WLAN-Wetterstation | PimpMyStation

        OliverIOO 1 Reply Last reply
        0
        • SBorgS SBorg

          @oliverio Psst, ...und für die C&P - Fraktion kaufe ich für 10 Cent noch zwei "o" dazu :joy:
          (für die Fraktion die noch die Sesamstrasse kennt...)

          Zeile #6 bis #8

              if (response.data) {
          
                var parts = response.data.split('\n');
          
          OliverIOO Offline
          OliverIOO Offline
          OliverIO
          wrote on last edited by OliverIO
          #4

          @sborg
          stimmt.
          die o's waren aber bei meinem nick schon verbraucht

          axios.post('http://xx.xx.xx.xx/daqdata.cgi?key=xxx...xxx', {
              responseEncoding: 'latin'
            })
            .then(function (response) {
              console.log(response);
              if (response.data) {
                
                var parts = response.data.split('\n');
           
                var parts_Guntamatic = parts[0];
                setState('Guntamatic_Betrieb_0', parts_Guntamatic, true);
           
                var parts_Guntamatic = parts[1];
                setState('Guntamatic_Aussentemperatur_1', parts_Guntamatic, true);
              })
            .catch(function (error) {
              console.log(error);
            });
          

          Aber für die C&P-Fraktion habe ich noch 2 Debug-Zeilen übrig gelassen

          Meine Adapter und Widgets
          TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
          Links im Profil

          G 1 Reply Last reply
          0
          • OliverIOO OliverIO

            @glitzi

            Es müsste ungefähr so aussehen.
            bei dem Encoding war ich mir nicht ganz sicher, aber das müsste es sein.
            Ob latin ein gültiger Wert ist weiß ich nicht.

            axios.post('http://xx.xx.xx.xx/daqdata.cgi?key=xxx...xxx', {
                responseEncoding: 'latin'
              })
              .then(function (response) {
                console.log(response);
                if (respnse.data) {
                  
                  var parts = respnse.data.split('\n');
             
                  var parts_Guntamatic = parts[0];
                  setState('Guntamatic_Betrieb_0', parts_Guntamatic, true);
             
                  var parts_Guntamatic = parts[1];
                  setState('Guntamatic_Aussentemperatur_1', parts_Guntamatic, true);
                })
              .catch(function (error) {
                console.log(error);
              });
            
            AlCalzoneA Offline
            AlCalzoneA Offline
            AlCalzone
            Developer
            wrote on last edited by
            #5

            @oliverio sagte in Umstellung auf "axios":

            Ob latin ein gültiger Wert ist weiß ich nicht.

            Laut https://nodejs.org/api/buffer.html#buffers-and-character-encodings müsste das latin1 sein (mit 1 am Ende).

            Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

            G 1 Reply Last reply
            0
            • OliverIOO OliverIO

              @sborg
              stimmt.
              die o's waren aber bei meinem nick schon verbraucht

              axios.post('http://xx.xx.xx.xx/daqdata.cgi?key=xxx...xxx', {
                  responseEncoding: 'latin'
                })
                .then(function (response) {
                  console.log(response);
                  if (response.data) {
                    
                    var parts = response.data.split('\n');
               
                    var parts_Guntamatic = parts[0];
                    setState('Guntamatic_Betrieb_0', parts_Guntamatic, true);
               
                    var parts_Guntamatic = parts[1];
                    setState('Guntamatic_Aussentemperatur_1', parts_Guntamatic, true);
                  })
                .catch(function (error) {
                  console.log(error);
                });
              

              Aber für die C&P-Fraktion habe ich noch 2 Debug-Zeilen übrig gelassen

              G Offline
              G Offline
              glitzi
              wrote on last edited by glitzi
              #6

              Super DANKE!!!

              nach einer knappen Stunde finde ich den Fehler nicht...

              19:27:04.325	error	javascript.0 (32211) script.js.Guntamatic.Guntamatic_Daten_aus_Http_Seite_Parsen_axios compile failed: at script.js.Guntamatic.Guntamatic_Daten_aus_Http_Seite_Parsen_axios:
              
              
              createState('Guntamatic_Betrieb_0');
              createState('Guntamatic_Aussentemperatur_1');
              createState('Guntamatic_Kesseltemperatur_3');
              createState('Guntamatic_Leistung_5');
              createState('Guntamatic_Rücklauf_6');
              createState('Guntamatic_CO2_Gehalt_8');
              createState('Guntamatic_Puffer_oben_17');
              createState('Guntamatic_Puffer_unten_19');
              createState('Guntamatic_Pumpe_HP0_20');
              createState('Guntamatic_Warmwasser_21');
              createState('Guntamatic_Vorlauf_31');
              createState('Guntamatic_Füllstand_65');
              createState('Guntamatic_Kesselfreigabe_68');
              createState('Guntamatic_Programm_69');
              createState('Guntamatic_Programm_HK1_71');
              createState('Guntamatic_Stoer0_79');
              createState('Guntamatic_Stoer1_80');
              createState('Guntamatic_Asche_entleeren_85');
              createState('Guntamatic_Brennstoffzähler_89');
              createState('Guntamatic_Pufferladung_90');
              createState('Guntamatic_CO2_Gehalt_korrigiert');
               
              schedule("*/5 * * * * *",
                
              axios.post('http://10.10.10.7/daqdata.cgi?key=226125AC4E4C9CD8144ABF4CA958AF294A4F', {
                  responseEncoding: 'latin1'
                })
                .then(function (response) {
                  console.log(response);
                  
                  if (response.data) {
                    
                    var parts = response.data.split('\n');
               
                    var parts_Guntamatic = parts[0];
                    setState('Guntamatic_Betrieb_0', parts_Guntamatic, true);
              
                    var parts_Guntamatic = parts[1];
                    setState('Guntamatic_Aussentemperatur_1', parts_Guntamatic, true);
              
                    var parts_Guntamatic = parts[3];
                    setState('Guntamatic_Kesseltemperatur_3', parts_Guntamatic, true);
              
                    var parts_Guntamatic = parts[5];
                    setState('Guntamatic_Leistung_5', parts_Guntamatic, true);
              
                    var parts_Guntamatic = parts[6];
                    setState('Guntamatic_Rücklauf_6', parts_Guntamatic, true);
              
                    var parts_Guntamatic = parts[8];
                    setState('Guntamatic_CO2_Gehalt_8', parts_Guntamatic, true);
              
                    var parts_Guntamatic = parts[17];
                    setState('Guntamatic_Puffer_oben_17', parts_Guntamatic, true);
              
                    var parts_Guntamatic = parts[19];
                    setState('Guntamatic_Puffer_unten_19', parts_Guntamatic, true);
              
                    var parts_Guntamatic = parts[20];
                    setState('Guntamatic_Pumpe_HP0_20', parts_Guntamatic, true);
              
                    var parts_Guntamatic = parts[21];
                    setState('Guntamatic_Warmwasser_21', parts_Guntamatic, true);
              
                    var parts_Guntamatic = parts[31];
                    setState('Guntamatic_Vorlauf_31', parts_Guntamatic, true);
              
                    var parts_Guntamatic = parts[65];
                    setState('Guntamatic_Füllstand_65', parts_Guntamatic, true);
              
                    var parts_Guntamatic = parts[68];
                    setState('Guntamatic_Kesselfreigabe_68', parts_Guntamatic, true);
                    
                    var parts_Guntamatic = parts[69];
                    setState('Guntamatic_Programm_69', parts_Guntamatic, true);
              
                    var parts_Guntamatic = parts[71];
                    setState('Guntamatic_Programm_HK1_71', parts_Guntamatic, true);
              
                    var parts_Guntamatic = parts[79];
                    setState('Guntamatic_Stoer0_79', parts_Guntamatic, true);
              
                    var parts_Guntamatic = parts[80];
                    setState('Guntamatic_Stoer1_80', parts_Guntamatic, true);
              
                    var parts_Guntamatic = parts[85];
                    setState('Guntamatic_Asche_entleeren_85', parts_Guntamatic, true);
              
                    var parts_Guntamatic = parts[89];
                    setState('Guntamatic_Brennstoffzähler_89', parts_Guntamatic, true);
              
                    var parts_Guntamatic = parts[90];
                    setState('Guntamatic_Pufferladung_90', parts_Guntamatic, true);
              
              /*
              CO2 Korrigieren da der Wert im Leerlauf teils 18.00 annimmt.
              parts[5] = Leistung parts[8] = CO2 Gehalt
              */
              
              if (parts[5] == 0) {
                                  setState("Guntamatic_CO2_Gehalt_korrigiert" , 0, true);
                                  } else {
                                          setState("Guntamatic_CO2_Gehalt_korrigiert", parts[8], true)
                                          }
              
               }
                }
              
               .catch(function (error) {
                  console.log(error)
                       });
              
              }); 
               
              }
              )
              
              OliverIOO 1 Reply Last reply
              -1
              • G glitzi

                Super DANKE!!!

                nach einer knappen Stunde finde ich den Fehler nicht...

                19:27:04.325	error	javascript.0 (32211) script.js.Guntamatic.Guntamatic_Daten_aus_Http_Seite_Parsen_axios compile failed: at script.js.Guntamatic.Guntamatic_Daten_aus_Http_Seite_Parsen_axios:
                
                
                createState('Guntamatic_Betrieb_0');
                createState('Guntamatic_Aussentemperatur_1');
                createState('Guntamatic_Kesseltemperatur_3');
                createState('Guntamatic_Leistung_5');
                createState('Guntamatic_Rücklauf_6');
                createState('Guntamatic_CO2_Gehalt_8');
                createState('Guntamatic_Puffer_oben_17');
                createState('Guntamatic_Puffer_unten_19');
                createState('Guntamatic_Pumpe_HP0_20');
                createState('Guntamatic_Warmwasser_21');
                createState('Guntamatic_Vorlauf_31');
                createState('Guntamatic_Füllstand_65');
                createState('Guntamatic_Kesselfreigabe_68');
                createState('Guntamatic_Programm_69');
                createState('Guntamatic_Programm_HK1_71');
                createState('Guntamatic_Stoer0_79');
                createState('Guntamatic_Stoer1_80');
                createState('Guntamatic_Asche_entleeren_85');
                createState('Guntamatic_Brennstoffzähler_89');
                createState('Guntamatic_Pufferladung_90');
                createState('Guntamatic_CO2_Gehalt_korrigiert');
                 
                schedule("*/5 * * * * *",
                  
                axios.post('http://10.10.10.7/daqdata.cgi?key=226125AC4E4C9CD8144ABF4CA958AF294A4F', {
                    responseEncoding: 'latin1'
                  })
                  .then(function (response) {
                    console.log(response);
                    
                    if (response.data) {
                      
                      var parts = response.data.split('\n');
                 
                      var parts_Guntamatic = parts[0];
                      setState('Guntamatic_Betrieb_0', parts_Guntamatic, true);
                
                      var parts_Guntamatic = parts[1];
                      setState('Guntamatic_Aussentemperatur_1', parts_Guntamatic, true);
                
                      var parts_Guntamatic = parts[3];
                      setState('Guntamatic_Kesseltemperatur_3', parts_Guntamatic, true);
                
                      var parts_Guntamatic = parts[5];
                      setState('Guntamatic_Leistung_5', parts_Guntamatic, true);
                
                      var parts_Guntamatic = parts[6];
                      setState('Guntamatic_Rücklauf_6', parts_Guntamatic, true);
                
                      var parts_Guntamatic = parts[8];
                      setState('Guntamatic_CO2_Gehalt_8', parts_Guntamatic, true);
                
                      var parts_Guntamatic = parts[17];
                      setState('Guntamatic_Puffer_oben_17', parts_Guntamatic, true);
                
                      var parts_Guntamatic = parts[19];
                      setState('Guntamatic_Puffer_unten_19', parts_Guntamatic, true);
                
                      var parts_Guntamatic = parts[20];
                      setState('Guntamatic_Pumpe_HP0_20', parts_Guntamatic, true);
                
                      var parts_Guntamatic = parts[21];
                      setState('Guntamatic_Warmwasser_21', parts_Guntamatic, true);
                
                      var parts_Guntamatic = parts[31];
                      setState('Guntamatic_Vorlauf_31', parts_Guntamatic, true);
                
                      var parts_Guntamatic = parts[65];
                      setState('Guntamatic_Füllstand_65', parts_Guntamatic, true);
                
                      var parts_Guntamatic = parts[68];
                      setState('Guntamatic_Kesselfreigabe_68', parts_Guntamatic, true);
                      
                      var parts_Guntamatic = parts[69];
                      setState('Guntamatic_Programm_69', parts_Guntamatic, true);
                
                      var parts_Guntamatic = parts[71];
                      setState('Guntamatic_Programm_HK1_71', parts_Guntamatic, true);
                
                      var parts_Guntamatic = parts[79];
                      setState('Guntamatic_Stoer0_79', parts_Guntamatic, true);
                
                      var parts_Guntamatic = parts[80];
                      setState('Guntamatic_Stoer1_80', parts_Guntamatic, true);
                
                      var parts_Guntamatic = parts[85];
                      setState('Guntamatic_Asche_entleeren_85', parts_Guntamatic, true);
                
                      var parts_Guntamatic = parts[89];
                      setState('Guntamatic_Brennstoffzähler_89', parts_Guntamatic, true);
                
                      var parts_Guntamatic = parts[90];
                      setState('Guntamatic_Pufferladung_90', parts_Guntamatic, true);
                
                /*
                CO2 Korrigieren da der Wert im Leerlauf teils 18.00 annimmt.
                parts[5] = Leistung parts[8] = CO2 Gehalt
                */
                
                if (parts[5] == 0) {
                                    setState("Guntamatic_CO2_Gehalt_korrigiert" , 0, true);
                                    } else {
                                            setState("Guntamatic_CO2_Gehalt_korrigiert", parts[8], true)
                                            }
                
                 }
                  }
                
                 .catch(function (error) {
                    console.log(error)
                         });
                
                }); 
                 
                }
                )
                
                OliverIOO Offline
                OliverIOO Offline
                OliverIO
                wrote on last edited by
                #7

                @glitzi sagte in Umstellung auf "axios":

                Viele Fehler
                https://beautifytools.com/javascript-validator.php
                beachtet du die Hinweise im Skripteditor nicht?

                Das korrekte einrücken nicht vergessen. Das erspart schon mal viele Logikfehler. Dem Parser ist es zwar egal, aber du suchst dich dann zu tode wenn die blöcke nicht auf der gleichen Ebene enden wie sie begonnen haben. Manche Editoren können da einem helfen. Einfach den kompletten Text mal dort reinkopieren und die Formatierung/beautyfier drüber laufen lassen.

                Auch wenn das ; nicht unbedingt notwendig ist, sollte man es immer setzen, da ansonsten der parser manchmal meckert und dann ist es besser immer einheitlich zu bleiben und den Code lesbar zu gestalten
                https://developer.mozilla.org/de/docs/Web/JavaScript/Reference/Errors/Missing_semicolon_before_statement
                Eine Variable sollte nur einmal innerhalb eines Blocks deklariert werden (var)
                und Klammern sollten in der richtigen Reihenfolge und in der korrekten Anzahl geöffnet und wieder geschlossen werden

                Line	Col	Errors
                39	11	'parts_Guntamatic' is already defined.
                42	11	'parts_Guntamatic' is already defined.
                45	11	'parts_Guntamatic' is already defined.
                48	11	'parts_Guntamatic' is already defined.
                51	11	'parts_Guntamatic' is already defined.
                54	11	'parts_Guntamatic' is already defined.
                57	11	'parts_Guntamatic' is already defined.
                60	11	'parts_Guntamatic' is already defined.
                63	11	'parts_Guntamatic' is already defined.
                66	11	'parts_Guntamatic' is already defined.
                69	11	'parts_Guntamatic' is already defined.
                72	11	'parts_Guntamatic' is already defined.
                75	11	'parts_Guntamatic' is already defined.
                78	11	'parts_Guntamatic' is already defined.
                81	11	'parts_Guntamatic' is already defined.
                84	11	'parts_Guntamatic' is already defined.
                87	11	'parts_Guntamatic' is already defined.
                90	11	'parts_Guntamatic' is already defined.
                93	11	'parts_Guntamatic' is already defined.
                104	89	Missing semicolon.
                111	23	Missing semicolon.
                112	12	Expected ')' and instead saw ';'.
                114	1	Expected ')' and instead saw '}'.
                114	2	Missing semicolon.
                114	2	Expected an identifier and instead saw ')'.
                114	2	Expected an assignment or function call and instead saw an expression.
                114	3	Unrecoverable syntax error. (96% scanned).
                

                Meine Adapter und Widgets
                TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
                Links im Profil

                coyoteC G 3 Replies Last reply
                0
                • OliverIOO OliverIO

                  @glitzi sagte in Umstellung auf "axios":

                  Viele Fehler
                  https://beautifytools.com/javascript-validator.php
                  beachtet du die Hinweise im Skripteditor nicht?

                  Das korrekte einrücken nicht vergessen. Das erspart schon mal viele Logikfehler. Dem Parser ist es zwar egal, aber du suchst dich dann zu tode wenn die blöcke nicht auf der gleichen Ebene enden wie sie begonnen haben. Manche Editoren können da einem helfen. Einfach den kompletten Text mal dort reinkopieren und die Formatierung/beautyfier drüber laufen lassen.

                  Auch wenn das ; nicht unbedingt notwendig ist, sollte man es immer setzen, da ansonsten der parser manchmal meckert und dann ist es besser immer einheitlich zu bleiben und den Code lesbar zu gestalten
                  https://developer.mozilla.org/de/docs/Web/JavaScript/Reference/Errors/Missing_semicolon_before_statement
                  Eine Variable sollte nur einmal innerhalb eines Blocks deklariert werden (var)
                  und Klammern sollten in der richtigen Reihenfolge und in der korrekten Anzahl geöffnet und wieder geschlossen werden

                  Line	Col	Errors
                  39	11	'parts_Guntamatic' is already defined.
                  42	11	'parts_Guntamatic' is already defined.
                  45	11	'parts_Guntamatic' is already defined.
                  48	11	'parts_Guntamatic' is already defined.
                  51	11	'parts_Guntamatic' is already defined.
                  54	11	'parts_Guntamatic' is already defined.
                  57	11	'parts_Guntamatic' is already defined.
                  60	11	'parts_Guntamatic' is already defined.
                  63	11	'parts_Guntamatic' is already defined.
                  66	11	'parts_Guntamatic' is already defined.
                  69	11	'parts_Guntamatic' is already defined.
                  72	11	'parts_Guntamatic' is already defined.
                  75	11	'parts_Guntamatic' is already defined.
                  78	11	'parts_Guntamatic' is already defined.
                  81	11	'parts_Guntamatic' is already defined.
                  84	11	'parts_Guntamatic' is already defined.
                  87	11	'parts_Guntamatic' is already defined.
                  90	11	'parts_Guntamatic' is already defined.
                  93	11	'parts_Guntamatic' is already defined.
                  104	89	Missing semicolon.
                  111	23	Missing semicolon.
                  112	12	Expected ')' and instead saw ';'.
                  114	1	Expected ')' and instead saw '}'.
                  114	2	Missing semicolon.
                  114	2	Expected an identifier and instead saw ')'.
                  114	2	Expected an assignment or function call and instead saw an expression.
                  114	3	Unrecoverable syntax error. (96% scanned).
                  
                  coyoteC Offline
                  coyoteC Offline
                  coyote
                  Most Active
                  wrote on last edited by
                  #8

                  Hallo, ich hänge mich hier einfach mal ran, denke es ist nicht nötig nochmal einen eigenen Thread dafür aufzumachen.
                  Ich habe auch noch ein paar Scripte mit "request", vielleicht kann mir da auch jemand bei der Umstellung auf "axios" helfen?!
                  Hier der Teil des Scripts:

                  var request = require("request");
                  var fs = require('fs');
                  
                  // Speichert das Bild der Haustür bei Posteinwurf
                  function saveImage() {
                  	request.get({
                  			url: source_url,
                  			encoding: 'binary'
                  		}, function(err, response, body) {
                  			fs.writeFile('/tmp/' + 'Postbild.jpg', body, 'binary', function(err) {
                  				if (err) {
                  					log('Fehler beim Bild speichern: ' + err, 'warn');
                  				} else {
                  					log('Webcam Bild gespeichert');
                  				}
                  			})
                  		})
                  // Bilder werden nach vis gespeichert
                  	setTimeout(function() {
                  		const bild1 = fs.readFileSync('/tmp/Postbild.jpg');
                  		writeFile('vis.0', '/Postbild.jpg', bild1);
                  	}, 4000);
                  }
                  
                  1 Reply Last reply
                  0
                  • OliverIOO OliverIO

                    @glitzi sagte in Umstellung auf "axios":

                    Viele Fehler
                    https://beautifytools.com/javascript-validator.php
                    beachtet du die Hinweise im Skripteditor nicht?

                    Das korrekte einrücken nicht vergessen. Das erspart schon mal viele Logikfehler. Dem Parser ist es zwar egal, aber du suchst dich dann zu tode wenn die blöcke nicht auf der gleichen Ebene enden wie sie begonnen haben. Manche Editoren können da einem helfen. Einfach den kompletten Text mal dort reinkopieren und die Formatierung/beautyfier drüber laufen lassen.

                    Auch wenn das ; nicht unbedingt notwendig ist, sollte man es immer setzen, da ansonsten der parser manchmal meckert und dann ist es besser immer einheitlich zu bleiben und den Code lesbar zu gestalten
                    https://developer.mozilla.org/de/docs/Web/JavaScript/Reference/Errors/Missing_semicolon_before_statement
                    Eine Variable sollte nur einmal innerhalb eines Blocks deklariert werden (var)
                    und Klammern sollten in der richtigen Reihenfolge und in der korrekten Anzahl geöffnet und wieder geschlossen werden

                    Line	Col	Errors
                    39	11	'parts_Guntamatic' is already defined.
                    42	11	'parts_Guntamatic' is already defined.
                    45	11	'parts_Guntamatic' is already defined.
                    48	11	'parts_Guntamatic' is already defined.
                    51	11	'parts_Guntamatic' is already defined.
                    54	11	'parts_Guntamatic' is already defined.
                    57	11	'parts_Guntamatic' is already defined.
                    60	11	'parts_Guntamatic' is already defined.
                    63	11	'parts_Guntamatic' is already defined.
                    66	11	'parts_Guntamatic' is already defined.
                    69	11	'parts_Guntamatic' is already defined.
                    72	11	'parts_Guntamatic' is already defined.
                    75	11	'parts_Guntamatic' is already defined.
                    78	11	'parts_Guntamatic' is already defined.
                    81	11	'parts_Guntamatic' is already defined.
                    84	11	'parts_Guntamatic' is already defined.
                    87	11	'parts_Guntamatic' is already defined.
                    90	11	'parts_Guntamatic' is already defined.
                    93	11	'parts_Guntamatic' is already defined.
                    104	89	Missing semicolon.
                    111	23	Missing semicolon.
                    112	12	Expected ')' and instead saw ';'.
                    114	1	Expected ')' and instead saw '}'.
                    114	2	Missing semicolon.
                    114	2	Expected an identifier and instead saw ')'.
                    114	2	Expected an assignment or function call and instead saw an expression.
                    114	3	Unrecoverable syntax error. (96% scanned).
                    
                    G Offline
                    G Offline
                    glitzi
                    wrote on last edited by
                    #9

                    @oliverio
                    Danke für die Gute Unterstützung…
                    Leider bin ich hier blutiger Anfänger, kannst du mir das eventuell im Script Kennzeichen?

                    1 Reply Last reply
                    0
                    • OliverIOO OliverIO

                      @glitzi sagte in Umstellung auf "axios":

                      Viele Fehler
                      https://beautifytools.com/javascript-validator.php
                      beachtet du die Hinweise im Skripteditor nicht?

                      Das korrekte einrücken nicht vergessen. Das erspart schon mal viele Logikfehler. Dem Parser ist es zwar egal, aber du suchst dich dann zu tode wenn die blöcke nicht auf der gleichen Ebene enden wie sie begonnen haben. Manche Editoren können da einem helfen. Einfach den kompletten Text mal dort reinkopieren und die Formatierung/beautyfier drüber laufen lassen.

                      Auch wenn das ; nicht unbedingt notwendig ist, sollte man es immer setzen, da ansonsten der parser manchmal meckert und dann ist es besser immer einheitlich zu bleiben und den Code lesbar zu gestalten
                      https://developer.mozilla.org/de/docs/Web/JavaScript/Reference/Errors/Missing_semicolon_before_statement
                      Eine Variable sollte nur einmal innerhalb eines Blocks deklariert werden (var)
                      und Klammern sollten in der richtigen Reihenfolge und in der korrekten Anzahl geöffnet und wieder geschlossen werden

                      Line	Col	Errors
                      39	11	'parts_Guntamatic' is already defined.
                      42	11	'parts_Guntamatic' is already defined.
                      45	11	'parts_Guntamatic' is already defined.
                      48	11	'parts_Guntamatic' is already defined.
                      51	11	'parts_Guntamatic' is already defined.
                      54	11	'parts_Guntamatic' is already defined.
                      57	11	'parts_Guntamatic' is already defined.
                      60	11	'parts_Guntamatic' is already defined.
                      63	11	'parts_Guntamatic' is already defined.
                      66	11	'parts_Guntamatic' is already defined.
                      69	11	'parts_Guntamatic' is already defined.
                      72	11	'parts_Guntamatic' is already defined.
                      75	11	'parts_Guntamatic' is already defined.
                      78	11	'parts_Guntamatic' is already defined.
                      81	11	'parts_Guntamatic' is already defined.
                      84	11	'parts_Guntamatic' is already defined.
                      87	11	'parts_Guntamatic' is already defined.
                      90	11	'parts_Guntamatic' is already defined.
                      93	11	'parts_Guntamatic' is already defined.
                      104	89	Missing semicolon.
                      111	23	Missing semicolon.
                      112	12	Expected ')' and instead saw ';'.
                      114	1	Expected ')' and instead saw '}'.
                      114	2	Missing semicolon.
                      114	2	Expected an identifier and instead saw ')'.
                      114	2	Expected an assignment or function call and instead saw an expression.
                      114	3	Unrecoverable syntax error. (96% scanned).
                      
                      G Offline
                      G Offline
                      glitzi
                      wrote on last edited by glitzi
                      #10

                      ich bin etwas weiter, siehe Antwort...

                      G 1 Reply Last reply
                      0
                      • bahnuhrB Online
                        bahnuhrB Online
                        bahnuhr
                        Forum Testing Most Active
                        wrote on last edited by
                        #11

                        Hallo,
                        ich muss jetzt auch mal fragen.

                        • warum wird von request auf axios umgestellt?
                        • was ist mit den alten Scripten ?
                        • gibts hier ein todo ?

                        Gibts da irgendwo mehr infos ?

                        Habe ca. 200 Scripte wo ca. bei der Hälfte (geschätzt) request drin ist.


                        Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
                        Danke.
                        gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge
                        ScreenToGif :https://www.screentogif.com/downloads.html

                        Thomas BraunT WalW 2 Replies Last reply
                        0
                        • bahnuhrB bahnuhr

                          Hallo,
                          ich muss jetzt auch mal fragen.

                          • warum wird von request auf axios umgestellt?
                          • was ist mit den alten Scripten ?
                          • gibts hier ein todo ?

                          Gibts da irgendwo mehr infos ?

                          Habe ca. 200 Scripte wo ca. bei der Hälfte (geschätzt) request drin ist.

                          Thomas BraunT Online
                          Thomas BraunT Online
                          Thomas Braun
                          Most Active
                          wrote on last edited by
                          #12

                          @bahnuhr

                          Weil es nicht mehr gepflegt wird:

                          https://www.npmjs.com/package/request

                          https://github.com/request/request/issues/3142

                          Linux-Werkzeugkasten:
                          https://forum.iobroker.net/topic/42952/der-kleine-iobroker-linux-werkzeugkasten
                          NodeJS Fixer Skript:
                          https://forum.iobroker.net/topic/68035/iob-node-fix-skript
                          iob_diag: curl -sLf -o diag.sh https://iobroker.net/diag.sh && bash diag.sh

                          bahnuhrB 1 Reply Last reply
                          0
                          • Thomas BraunT Thomas Braun

                            @bahnuhr

                            Weil es nicht mehr gepflegt wird:

                            https://www.npmjs.com/package/request

                            https://github.com/request/request/issues/3142

                            bahnuhrB Online
                            bahnuhrB Online
                            bahnuhr
                            Forum Testing Most Active
                            wrote on last edited by
                            #13

                            @thomas-braun sagte in Umstellung auf "axios":

                            Weil es nicht mehr gepflegt wird:

                            Und ab wann funktionieren dann meine Scripte nicht mehr ?
                            oder viel wichtiger: Was mun man tun um dies zu ändern ?


                            Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
                            Danke.
                            gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge
                            ScreenToGif :https://www.screentogif.com/downloads.html

                            Thomas BraunT 1 Reply Last reply
                            0
                            • bahnuhrB bahnuhr

                              @thomas-braun sagte in Umstellung auf "axios":

                              Weil es nicht mehr gepflegt wird:

                              Und ab wann funktionieren dann meine Scripte nicht mehr ?
                              oder viel wichtiger: Was mun man tun um dies zu ändern ?

                              Thomas BraunT Online
                              Thomas BraunT Online
                              Thomas Braun
                              Most Active
                              wrote on last edited by Thomas Braun
                              #14

                              @bahnuhr sagte in Umstellung auf "axios":

                              Und ab wann funktionieren dann meine Scripte nicht mehr ?

                              Vermutlich spätestens dann, wenn request aus nodejs aussortiert wird.
                              Ich vermute, das wird aber ob der breiten Verwendung von request noch lange mitgeschleift werden müssen. Ist ja schon geraume Zeit als 'deprecated' markiert.

                              Linux-Werkzeugkasten:
                              https://forum.iobroker.net/topic/42952/der-kleine-iobroker-linux-werkzeugkasten
                              NodeJS Fixer Skript:
                              https://forum.iobroker.net/topic/68035/iob-node-fix-skript
                              iob_diag: curl -sLf -o diag.sh https://iobroker.net/diag.sh && bash diag.sh

                              T 1 Reply Last reply
                              0
                              • bahnuhrB bahnuhr

                                Hallo,
                                ich muss jetzt auch mal fragen.

                                • warum wird von request auf axios umgestellt?
                                • was ist mit den alten Scripten ?
                                • gibts hier ein todo ?

                                Gibts da irgendwo mehr infos ?

                                Habe ca. 200 Scripte wo ca. bei der Hälfte (geschätzt) request drin ist.

                                WalW Offline
                                WalW Offline
                                Wal
                                Developer
                                wrote on last edited by
                                #15

                                @bahnuhr sagte in Umstellung auf "axios":

                                Gibts da irgendwo mehr infos ?

                                Ja bei google.
                                Du musst auch nicht axios nehmen, es funktioniert auch http.

                                Gruß
                                Walter

                                DoorIO-Adapter
                                wioBrowser-Adapter und wioBrowser

                                bahnuhrB 1 Reply Last reply
                                0
                                • G glitzi

                                  ich bin etwas weiter, siehe Antwort...

                                  G Offline
                                  G Offline
                                  glitzi
                                  wrote on last edited by
                                  #16

                                  @OliverIO
                                  Puhh ich glaube ich bin etwas weiter... trotzdem drehe ich mich irgendwie im Kreis .

                                  16:53:20.267	error	javascript.0 (6088) script.js.Guntamatic.Guntamatic_Daten_aus_Http_Seite_Parsen_axios: schedule callback missing
                                  
                                  createState('Guntamatic_Betrieb_0');
                                  createState('Guntamatic_Aussentemperatur_1');
                                  createState('Guntamatic_Kesseltemperatur_3');
                                  createState('Guntamatic_Leistung_5');
                                  createState('Guntamatic_Rücklauf_6');
                                  createState('Guntamatic_CO2_Gehalt_8');
                                  createState('Guntamatic_Puffer_oben_17');
                                  createState('Guntamatic_Puffer_unten_19');
                                  createState('Guntamatic_Pumpe_HP0_20');
                                  createState('Guntamatic_Warmwasser_21');
                                  createState('Guntamatic_Vorlauf_31');
                                  createState('Guntamatic_Füllstand_65');
                                  createState('Guntamatic_Kesselfreigabe_68');
                                  createState('Guntamatic_Programm_69');
                                  createState('Guntamatic_Programm_HK1_71');
                                  createState('Guntamatic_Stoer0_79');
                                  createState('Guntamatic_Stoer1_80');
                                  createState('Guntamatic_Asche_entleeren_85');
                                  createState('Guntamatic_Brennstoffzähler_89');
                                  createState('Guntamatic_Pufferladung_90');
                                  createState('Guntamatic_CO2_Gehalt_korrigiert');
                                  
                                  const axios=require('axios');
                                  
                                  schedule("*/5 * * * * *",
                                  
                                  	axios.post('http://xx.xx.xx.xx/daqdata.cgi?key=xxxx', {
                                  		responseEncoding: 'latin1'
                                  	})
                                  
                                  	.then(function(response) {
                                  			//console.log(response);
                                  
                                  			if (response.data) {
                                  
                                  				var parts = response.data.split('\n');
                                  
                                  				var parts_Guntamatic = parts[0];
                                  				setState('Guntamatic_Betrieb_0', parts_Guntamatic, true);
                                  
                                  				var parts_Guntamatic = parts[1];
                                  				setState('Guntamatic_Aussentemperatur_1', parts_Guntamatic, true);
                                  
                                  				var parts_Guntamatic = parts[3];
                                  				setState('Guntamatic_Kesseltemperatur_3', parts_Guntamatic, true);
                                  
                                  				var parts_Guntamatic = parts[5];
                                  				setState('Guntamatic_Leistung_5', parts_Guntamatic, true);
                                  
                                  				var parts_Guntamatic = parts[6];
                                  				setState('Guntamatic_Rücklauf_6', parts_Guntamatic, true);
                                  
                                  				var parts_Guntamatic = parts[8];
                                  				setState('Guntamatic_CO2_Gehalt_8', parts_Guntamatic, true);
                                  
                                  				var parts_Guntamatic = parts[17];
                                  				setState('Guntamatic_Puffer_oben_17', parts_Guntamatic, true);
                                  
                                  				var parts_Guntamatic = parts[19];
                                  				setState('Guntamatic_Puffer_unten_19', parts_Guntamatic, true);
                                  
                                  				var parts_Guntamatic = parts[20];
                                  				setState('Guntamatic_Pumpe_HP0_20', parts_Guntamatic, true);
                                  
                                  				var parts_Guntamatic = parts[21];
                                  				setState('Guntamatic_Warmwasser_21', parts_Guntamatic, true);
                                  
                                  				var parts_Guntamatic = parts[31];
                                  				setState('Guntamatic_Vorlauf_31', parts_Guntamatic, true);
                                  
                                  				var parts_Guntamatic = parts[65];
                                  				setState('Guntamatic_Füllstand_65', parts_Guntamatic, true);
                                  
                                  				var parts_Guntamatic = parts[68];
                                  				setState('Guntamatic_Kesselfreigabe_68', parts_Guntamatic, true);
                                  
                                  				var parts_Guntamatic = parts[69];
                                  				setState('Guntamatic_Programm_69', parts_Guntamatic, true);
                                  
                                  				var parts_Guntamatic = parts[71];
                                  				setState('Guntamatic_Programm_HK1_71', parts_Guntamatic, true);
                                  
                                  				var parts_Guntamatic = parts[79];
                                  				setState('Guntamatic_Stoer0_79', parts_Guntamatic, true);
                                  
                                  				var parts_Guntamatic = parts[80];
                                  				setState('Guntamatic_Stoer1_80', parts_Guntamatic, true);
                                  
                                  				var parts_Guntamatic = parts[85];
                                  				setState('Guntamatic_Asche_entleeren_85', parts_Guntamatic, true);
                                  
                                  				var parts_Guntamatic = parts[89];
                                  				setState('Guntamatic_Brennstoffzähler_89', parts_Guntamatic, true);
                                  
                                  				var parts_Guntamatic = parts[90];
                                  				setState('Guntamatic_Pufferladung_90', parts_Guntamatic, true);
                                  
                                  				/*
                                  				CO2 Korrigieren da der Wert im Leerlauf teils 18.00 annimmt.
                                  				parts[5] = Leistung parts[8] = CO2 Gehalt
                                  				*/
                                  
                                  				if (parts[5] == 0) {
                                  					setState("Guntamatic_CO2_Gehalt_korrigiert", 0, true);
                                  				} else {
                                  					setState("Guntamatic_CO2_Gehalt_korrigiert", parts[8], true);
                                  				}
                                  
                                  			}
                                  		
                                  
                                  
                                      })
                                  
                                  );
                                  
                                  1 Reply Last reply
                                  0
                                  • WalW Wal

                                    @bahnuhr sagte in Umstellung auf "axios":

                                    Gibts da irgendwo mehr infos ?

                                    Ja bei google.
                                    Du musst auch nicht axios nehmen, es funktioniert auch http.

                                    bahnuhrB Online
                                    bahnuhrB Online
                                    bahnuhr
                                    Forum Testing Most Active
                                    wrote on last edited by
                                    #17

                                    @wal sagte in Umstellung auf "axios":

                                    Du musst auch nicht axios nehmen, es funktioniert auch http.

                                    hast du mal ein Beispiel ?


                                    Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
                                    Danke.
                                    gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge
                                    ScreenToGif :https://www.screentogif.com/downloads.html

                                    OliverIOO 1 Reply Last reply
                                    0
                                    • bahnuhrB bahnuhr

                                      @wal sagte in Umstellung auf "axios":

                                      Du musst auch nicht axios nehmen, es funktioniert auch http.

                                      hast du mal ein Beispiel ?

                                      OliverIOO Offline
                                      OliverIOO Offline
                                      OliverIO
                                      wrote on last edited by
                                      #18

                                      @bahnuhr
                                      das ist aber alles sehr ähnlich.
                                      Noch einfacher geht nicht wirklich

                                      Meine Adapter und Widgets
                                      TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
                                      Links im Profil

                                      1 Reply Last reply
                                      0
                                      • Thomas BraunT Thomas Braun

                                        @bahnuhr sagte in Umstellung auf "axios":

                                        Und ab wann funktionieren dann meine Scripte nicht mehr ?

                                        Vermutlich spätestens dann, wenn request aus nodejs aussortiert wird.
                                        Ich vermute, das wird aber ob der breiten Verwendung von request noch lange mitgeschleift werden müssen. Ist ja schon geraume Zeit als 'deprecated' markiert.

                                        T Offline
                                        T Offline
                                        tombox
                                        wrote on last edited by tombox
                                        #19

                                        @thomas-braun Ich denke auch mit 50.000 Dependents wird es wohl nie entfernt werden können. Also kann der kleine ioBroker Skripter sich mit der Umstellung noch zeit lassen.
                                        @glitzi
                                        der schedule wird nicht richtig aufgemacht

                                        schedule("*/5 * * * * *", function(){
                                        	axios.post('http://xx.xx.xx.xx/daqdata.cgi?key=xxxx', {
                                        		responseEncoding: 'latin1'
                                        	})
                                        	.then(function(response) {
                                        			//console.log(response);
                                                 })
                                        })
                                        
                                        OliverIOO G 2 Replies Last reply
                                        0
                                        • T tombox

                                          @thomas-braun Ich denke auch mit 50.000 Dependents wird es wohl nie entfernt werden können. Also kann der kleine ioBroker Skripter sich mit der Umstellung noch zeit lassen.
                                          @glitzi
                                          der schedule wird nicht richtig aufgemacht

                                          schedule("*/5 * * * * *", function(){
                                          	axios.post('http://xx.xx.xx.xx/daqdata.cgi?key=xxxx', {
                                          		responseEncoding: 'latin1'
                                          	})
                                          	.then(function(response) {
                                          			//console.log(response);
                                                   })
                                          })
                                          
                                          OliverIOO Offline
                                          OliverIOO Offline
                                          OliverIO
                                          wrote on last edited by OliverIO
                                          #20

                                          @tombox
                                          und wenn es aus iobroker entfernt wird, dann lädt man es selbst nach.
                                          es ist ja nicht so das es da sicherheitsbedenken gibt, sonder das die bibliothekt zu ende entwickelt ist.

                                          Meine Adapter und Widgets
                                          TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
                                          Links im Profil

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


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          901

                                          Online

                                          32.5k

                                          Users

                                          81.6k

                                          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