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
    684

  • 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 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
                                        • OliverIOO OliverIO

                                          @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.

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

                                          @oliverio Korrekt solange es kein security problem gibt wäre es auch ziemlich gemein es aus der iobroker skript default package rauszunehmen

                                          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

                                          714

                                          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