Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. JavaScript
  5. [gelöst] Skript auf AXIOS/httpGet umbauen

NEWS

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

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

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    16
    1
    3.1k

[gelöst] Skript auf AXIOS/httpGet umbauen

Geplant Angeheftet Gesperrt Verschoben JavaScript
59 Beiträge 18 Kommentatoren 11.5k Aufrufe 19 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • haus-automatisierungH haus-automatisierung

    @bahnuhr sagte in [gelöst] Skript auf AXIOS umbauen:

    Kann der axios diesen "binary" nicht ?

    Du kannst nicht einfach nur 1:1 die Funktion austauschen. Dokumentation gibts hier: https://github.com/axios/axios

    Das Ganze heißt responseEncoding: 'binary', im Config-Objekt. Aber warum nutzt Du nicht httpGet ?

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

    haus-automatisierungH Online
    haus-automatisierungH Online
    haus-automatisierung
    Developer Most Active
    schrieb am zuletzt editiert von haus-automatisierung
    #16

    nicht getestet, nur im Forum programmiert

    const fs = require('node:fs');
    
    const ip = 159;
    const vUser = 'Dieter';
    const cam = 'Test';
    
    httpGet(`http://192.168.243.${ip}:88/cgi-bin/CGIProxy.fcgi?cmd=snapPicture2&usr=xx&pwd=xx`, { responseType: 'arraybuffer' }, (err, response) => {
        if (err) {
            console.error(err);
        } else {
            const filePath = `/opt/iobroker/iobroker-data/tmp/snap${ip}.jpg`;
    
            fs.writeFile(filePath, response.data, (err) => {
                if (err) {
                    console.error(err);
                } else {
                    log(`Snapshot sent: ${ip}`);
    
                    sendTo('telegram.0', {
                        user: vUser,
                        text: filePath,
                        caption: cam
                    });
                }
            });
        }
    });
    

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

    1 Antwort Letzte Antwort
    1
    • haus-automatisierungH haus-automatisierung

      @bahnuhr sagte in [gelöst] Skript auf AXIOS umbauen:

      Kann der axios diesen "binary" nicht ?

      Du kannst nicht einfach nur 1:1 die Funktion austauschen. Dokumentation gibts hier: https://github.com/axios/axios

      Das Ganze heißt responseEncoding: 'binary', im Config-Objekt. Aber warum nutzt Du nicht httpGet ?

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

      bahnuhrB Offline
      bahnuhrB Offline
      bahnuhr
      Forum Testing Most Active
      schrieb am zuletzt editiert von
      #17

      @haus-automatisierung sagte in [gelöst] Skript auf AXIOS umbauen:

      Aber warum nutzt Du nicht httpGet ?

      weil es mit der 7.8.0 noch nicht funktioniert.
      und die 7.9.0 ist noch nicht stable.

      Muss ich wohl mal die beta installieren.


      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

      haus-automatisierungH 1 Antwort Letzte Antwort
      0
      • bahnuhrB bahnuhr

        @haus-automatisierung sagte in [gelöst] Skript auf AXIOS umbauen:

        Aber warum nutzt Du nicht httpGet ?

        weil es mit der 7.8.0 noch nicht funktioniert.
        und die 7.9.0 ist noch nicht stable.

        Muss ich wohl mal die beta installieren.

        haus-automatisierungH Online
        haus-automatisierungH Online
        haus-automatisierung
        Developer Most Active
        schrieb am zuletzt editiert von haus-automatisierung
        #18

        @bahnuhr sagte in [gelöst] Skript auf AXIOS umbauen:

        Muss ich wohl mal die beta installieren.

        In 8.3.0 habe ich heute noch eine weitere Funktion eingefügt. Damit wird das noch kürzer:

        const ip = 159;
        const user = 'Dieter';
        const caption = 'Test';
         
        httpGet(`http://192.168.243.${ip}:88/cgi-bin/CGIProxy.fcgi?cmd=snapPicture2&usr=xx&pwd=xx`, { responseType: 'arraybuffer' }, (err, response) => {
            if (err) {
                console.error(err);
            } else {
                sendTo('telegram.0', {
                    user,
                    caption,
                    text: createTempFile(`snap${ip}.jpg`, response.data),
                });
            }
        });
        
        

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

        bahnuhrB 1 Antwort Letzte Antwort
        1
        • haus-automatisierungH haus-automatisierung

          @bahnuhr sagte in [gelöst] Skript auf AXIOS umbauen:

          Muss ich wohl mal die beta installieren.

          In 8.3.0 habe ich heute noch eine weitere Funktion eingefügt. Damit wird das noch kürzer:

          const ip = 159;
          const user = 'Dieter';
          const caption = 'Test';
           
          httpGet(`http://192.168.243.${ip}:88/cgi-bin/CGIProxy.fcgi?cmd=snapPicture2&usr=xx&pwd=xx`, { responseType: 'arraybuffer' }, (err, response) => {
              if (err) {
                  console.error(err);
              } else {
                  sendTo('telegram.0', {
                      user,
                      caption,
                      text: createTempFile(`snap${ip}.jpg`, response.data),
                  });
              }
          });
          
          
          bahnuhrB Offline
          bahnuhrB Offline
          bahnuhr
          Forum Testing Most Active
          schrieb am zuletzt editiert von
          #19

          @haus-automatisierung
          so, habs ausprobiert (bin jetzt auf 8.3.0).

          Wenn ich folgenden kleinen code ausführe:

          httpGet(`http://192.168.243.203/YamahaExtendedControl/v1/main/setPower?power=standby`, { responseType: 'text' }, (err, response) => {
              if (err) { console.error(err); } else { log (""); }
          });
          

          kommt trotzdem im log:

          	script.js.Scripte.test6: request package is deprecated - please use httpGet (or a stable lib like axios) instead!
          

          Warum kommt dies im log ?
          (httpGet ist in JS auch rot unterstrichen)

          Benutze doch httpGet.


          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

          haus-automatisierungH liv-in-skyL 2 Antworten Letzte Antwort
          0
          • bahnuhrB bahnuhr

            @haus-automatisierung
            so, habs ausprobiert (bin jetzt auf 8.3.0).

            Wenn ich folgenden kleinen code ausführe:

            httpGet(`http://192.168.243.203/YamahaExtendedControl/v1/main/setPower?power=standby`, { responseType: 'text' }, (err, response) => {
                if (err) { console.error(err); } else { log (""); }
            });
            

            kommt trotzdem im log:

            	script.js.Scripte.test6: request package is deprecated - please use httpGet (or a stable lib like axios) instead!
            

            Warum kommt dies im log ?
            (httpGet ist in JS auch rot unterstrichen)

            Benutze doch httpGet.

            haus-automatisierungH Online
            haus-automatisierungH Online
            haus-automatisierung
            Developer Most Active
            schrieb am zuletzt editiert von
            #20

            @bahnuhr sagte in [gelöst] Skript auf AXIOS umbauen:

            Warum kommt dies im log ?
            (httpGet ist in JS auch rot unterstrichen)

            Kann ich nicht reproduzieren, die Meldung kommt auch nur, wenn require aufgerufen wird. Und das passiert bei Dir im Script ja nicht.

            Du hast aber schon über npm installiert (und nicht über GitHub), oder?

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

            bahnuhrB 2 Antworten Letzte Antwort
            0
            • haus-automatisierungH haus-automatisierung

              @bahnuhr sagte in [gelöst] Skript auf AXIOS umbauen:

              Warum kommt dies im log ?
              (httpGet ist in JS auch rot unterstrichen)

              Kann ich nicht reproduzieren, die Meldung kommt auch nur, wenn require aufgerufen wird. Und das passiert bei Dir im Script ja nicht.

              Du hast aber schon über npm installiert (und nicht über GitHub), oder?

              bahnuhrB Offline
              bahnuhrB Offline
              bahnuhr
              Forum Testing Most Active
              schrieb am zuletzt editiert von
              #21

              @haus-automatisierung sagte in [gelöst] Skript auf AXIOS umbauen:

              Und das passiert bei Dir im Script ja nicht.

              korrekt, aber die Meldung kommt trotzdem.

              @haus-automatisierung sagte in [gelöst] Skript auf AXIOS umbauen:

              Du hast aber schon über npm installiert (und nicht über GitHub), oder?

              ja, über npm


              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

              1 Antwort Letzte Antwort
              0
              • haus-automatisierungH haus-automatisierung

                @bahnuhr sagte in [gelöst] Skript auf AXIOS umbauen:

                Warum kommt dies im log ?
                (httpGet ist in JS auch rot unterstrichen)

                Kann ich nicht reproduzieren, die Meldung kommt auch nur, wenn require aufgerufen wird. Und das passiert bei Dir im Script ja nicht.

                Du hast aber schon über npm installiert (und nicht über GitHub), oder?

                bahnuhrB Offline
                bahnuhrB Offline
                bahnuhr
                Forum Testing Most Active
                schrieb am zuletzt editiert von
                #22

                @haus-automatisierung sagte in [gelöst] Skript auf AXIOS umbauen:

                die Meldung kommt auch nur, wenn require aufgerufen wird.

                Das ist bei mir nicht so.
                Habe mal iob komplett neu gestartet.

                Meldung kommt, obwohl im aufgerufenen Script kein request drin steht.
                (wohl aber noch bei anderen).

                Kann es sein, dass die Meldung trotzdem kommt, weil irgendwo noch ein request drin steht (von den gefühlt 500 Scripten).


                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

                joergeliJ 1 Antwort Letzte Antwort
                0
                • bahnuhrB bahnuhr

                  @haus-automatisierung sagte in [gelöst] Skript auf AXIOS umbauen:

                  die Meldung kommt auch nur, wenn require aufgerufen wird.

                  Das ist bei mir nicht so.
                  Habe mal iob komplett neu gestartet.

                  Meldung kommt, obwohl im aufgerufenen Script kein request drin steht.
                  (wohl aber noch bei anderen).

                  Kann es sein, dass die Meldung trotzdem kommt, weil irgendwo noch ein request drin steht (von den gefühlt 500 Scripten).

                  joergeliJ Offline
                  joergeliJ Offline
                  joergeli
                  schrieb am zuletzt editiert von
                  #23

                  @bahnuhr sagte in [gelöst] Skript auf AXIOS umbauen:

                  Kann es sein, dass die Meldung trotzdem kommt, weil irgendwo noch ein request drin steht (von den gefühlt 500 Scripten).

                  Meines Erachtens nicht, da ich ebenfalls gerade am Umbauen von request auf httpGet bin.
                  Bei bereits auf httpGet umgestellten Scripten kommt keine request-deprecated-Meldung mehr, bei den Scripten die noch request verwenden, kommt sie noch.

                  bahnuhrB 1 Antwort Letzte Antwort
                  2
                  • joergeliJ joergeli

                    @bahnuhr sagte in [gelöst] Skript auf AXIOS umbauen:

                    Kann es sein, dass die Meldung trotzdem kommt, weil irgendwo noch ein request drin steht (von den gefühlt 500 Scripten).

                    Meines Erachtens nicht, da ich ebenfalls gerade am Umbauen von request auf httpGet bin.
                    Bei bereits auf httpGet umgestellten Scripten kommt keine request-deprecated-Meldung mehr, bei den Scripten die noch request verwenden, kommt sie noch.

                    bahnuhrB Offline
                    bahnuhrB Offline
                    bahnuhr
                    Forum Testing Most Active
                    schrieb am zuletzt editiert von
                    #24

                    @joergeli
                    Danke für die Info.
                    Bei mir ist das nicht ! so.

                    Folgendes Script zum Starten von Licht:

                    
                    // Bewegung: Bad_EG -> Dimmer einschalten
                    
                    on('alias.0.HM.Bewegung.Bad_EG.MOTION', function (obj) {  // Bewegung erkannt
                        var Status_auto = getState('javascript.0.System.Automatik.Licht.Bad_EG').val;   //  Automatik Licht true
                        var Licht_level = getState('alias.0.HM.Dimmer.Bad_EG.LEVEL').val;   //  Licht level aktuell
                        var Hell = getState('alias.0.HM.Bewegung.Bad_EG.BRIGHTNESS').val;   //  Helligkeit
                        var Modus_Dusche = getState('javascript.0.System.Modus.Modus_Dusche').val;   //  Modus Dusche aktiv?
                    
                        if(Status_auto === true && Licht_level === 0 && Modus_Dusche == false) {   //  Automatik Licht auf true und Licht ist aus und Modus überprüfen
                            if (Hell < 35) {
                                setState('alias.0.HM.Dimmer.Bad_EG.LEVEL',5);
                                log("Helligkeit = " + Hell + "; Dimmer Bad_EG auf 5% eingeschaltet.");
                                setTimeout(function() {
                                    pruef_aus();
                                }, 120000);   // nach 2 min. Prüfung
                            }
                        }
                    });
                    
                    function pruef_aus() {
                        var level = getState('alias.0.HM.Dimmer.Bad_EG.LEVEL').val;   //  Licht level aktuell
                        var Modus_Dusche = getState('javascript.0.System.Modus.Modus_Dusche').val;   //  Modus Dusche aktiv?
                        if (level > 0) {
                            if (getState('alias.0.HM.Bewegung.Bad_EG.MOTION').val == false){
                                if (Modus_Dusche == false) {
                                    setState('alias.0.HM.Dimmer.Bad_EG.LEVEL', 0);
                                    log("Licht Bad EG ausgeschaltet.");
                                }
                            } else {
                                log("Licht Bad EG nicht ausgeschaltet. Erneute Prüfung nach 2 min.");
                                setTimeout(function() {
                                    pruef_aus ();
                                }, 120000);   // nach 2 min. erneute Prüfung
                            }
                        }
                    }
                    
                    // -----------------------------------------------------------------------------------------------------------
                    // Bewegung: Bad_EG -> Spiegelschrank einschalten
                    
                    on('mqtt.2.Wemos_BadEG.PIR1', function (obj) {  // Bewegung erkannt mit Wemos
                        var Status_auto2 = getState('javascript.0.System.Automatik.Licht.Bad_EG').val;   //  Automatik Licht true
                        var Licht_state = getState('mqtt.2.Wemos_BadEG.POWER').val;   //  Licht Spiegelschrank aktuell
                        var Hell2 = getState('alias.0.HM.Bewegung.Bad_EG.BRIGHTNESS').val;   //  Helligkeit
                        var Modus_Dusche2 = getState('javascript.0.System.Modus.Modus_Dusche').val;   //  Modus Dusche aktiv?
                        if(obj.state.val == "ON" && Status_auto2 == true && Licht_state == "OFF" && Modus_Dusche2 == false) {   //  Automatik Licht auf true und Licht ist aus und Modus überprüfen
                            if (Hell2 < 100) {
                                httpGet("http://192.168.243.175/cm?cmnd=Power1%20On", { responseType: 'text' }, (err, response) => { if (err) { console.error(err); } else { log (""); } });
                                log("Helligkeit = " + Hell2 + "; Licht Bad EG - Spiegelschrank eingeschaltet.");
                                setTimeout(function() {
                                    pruef_aus2();
                                }, 120000);   // nach 2 min. Prüfung
                            }
                        }
                    });
                    
                    function pruef_aus2() {
                        var state2 = getState('mqtt.2.Wemos_BadEG.POWER').val;   //  Licht Spiegelschrank aktuell
                        var Modus_Dusche2 = getState('javascript.0.System.Modus.Modus_Dusche').val;   //  Modus Dusche aktiv?
                        if (state2 == "ON") {
                            if (getState('alias.0.HM.Bewegung.Bad_EG.MOTION').val === false){
                                if (Modus_Dusche2 === false) {
                                    httpGet("http://192.168.243.175/cm?cmnd=Power1%20Off", { responseType: 'text' }, (err, response) => { if (err) { console.error(err); } else { log (""); } });
                                    log("Licht Bad EG - Spiegelschrank ausgeschaltet.");
                                }
                            } else {
                                log("Licht Bad EG - Spiegelschrank nicht ausgeschaltet. Erneute Prüfung nach 2 min.");
                                setTimeout(function() {
                                    pruef_aus2();
                                }, 120000);   // nach 2 min. erneute Prüfung
                            }
                        }
                    }
                    
                    
                    // Bewegung: Bad_EG -> Spiegelschrank - Status ändert sich
                        on('mqtt.2.Wemos_BadEG.POWER', function (obj) {  // Status Power ändert sich
                            if (obj.state.val == "ON") { if (getState("javascript.0.Geräte.Bad-EG.Spiegelschrank").val != true) { setState("javascript.0.Geräte.Bad-EG.Spiegelschrank", true); }
                            } else { if (getState("javascript.0.Geräte.Bad-EG.Spiegelschrank").val != false) { setState("javascript.0.Geräte.Bad-EG.Spiegelschrank", false); }}
                        });
                    
                        on('javascript.0.Geräte.Bad-EG.Spiegelschrank', function (obj) {  // Status Variable ändert sich
                            if (obj.state.val == true) { if (getState("mqtt.2.Wemos_BadEG.POWER").val != "ON") { 
                                httpGet("http://192.168.243.175/cm?cmnd=Power1%20On", { responseType: 'text' }, (err, response) => { if (err) { console.error(err); } else { log (""); } });
                            }
                            } else { if (getState("mqtt.2.Wemos_BadEG.POWER").val != "OFF") { 
                                httpGet("http://192.168.243.175/cm?cmnd=Power1%20Off", { responseType: 'text' }, (err, response) => { if (err) { console.error(err); } else { log (""); } });
                            }}
                        });
                    

                    Wenn ich dieses Script neu starte mit:
                    dfc6a9bd-519c-4e78-b839-52dad719b8aa-image.png

                    dann kommt sofort im log:

                    javascript.0	08:31:27.975	info	Start JavaScript script.js.Scripte.Licht.Bad_EG (JavaScript/js)
                    javascript.0	08:31:27.987	warn	script.js.Scripte.Licht.Bad_EG: request package is deprecated - please use httpGet (or a stable lib like axios) instead!
                    javascript.0	08:31:27.987	info	script.js.Scripte.Licht.Bad_EG: registered 4 subscriptions, 0 schedules, 0 messages, 0 logs and 0 file subscriptions
                    

                    und dieses ist umgestellt auf httpGet.

                    Äußerst merkwürdig das ganze.


                    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

                    1 Antwort Letzte Antwort
                    0
                    • bahnuhrB bahnuhr

                      @haus-automatisierung
                      so, habs ausprobiert (bin jetzt auf 8.3.0).

                      Wenn ich folgenden kleinen code ausführe:

                      httpGet(`http://192.168.243.203/YamahaExtendedControl/v1/main/setPower?power=standby`, { responseType: 'text' }, (err, response) => {
                          if (err) { console.error(err); } else { log (""); }
                      });
                      

                      kommt trotzdem im log:

                      	script.js.Scripte.test6: request package is deprecated - please use httpGet (or a stable lib like axios) instead!
                      

                      Warum kommt dies im log ?
                      (httpGet ist in JS auch rot unterstrichen)

                      Benutze doch httpGet.

                      liv-in-skyL Offline
                      liv-in-skyL Offline
                      liv-in-sky
                      schrieb am zuletzt editiert von liv-in-sky
                      #25

                      @bahnuhr sagte in [gelöst] Skript auf AXIOS umbauen:

                      arum kommt dies im log ?
                      (httpGet ist in JS auch rot unterstrichen)
                      Benutze doch httpGet.

                      hatte das auch - das passierte als ich ein script kopierte und dieses dann auf httpget änderte- obwohl das orginal abgeschalten war, kam diese meldung

                      habe dann das alte nochmal gestartet und wieder beendet, dann war die meldung weg

                      nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

                      bahnuhrB 1 Antwort Letzte Antwort
                      0
                      • liv-in-skyL liv-in-sky

                        @bahnuhr sagte in [gelöst] Skript auf AXIOS umbauen:

                        arum kommt dies im log ?
                        (httpGet ist in JS auch rot unterstrichen)
                        Benutze doch httpGet.

                        hatte das auch - das passierte als ich ein script kopierte und dieses dann auf httpget änderte- obwohl das orginal abgeschalten war, kam diese meldung

                        habe dann das alte nochmal gestartet und wieder beendet, dann war die meldung weg

                        bahnuhrB Offline
                        bahnuhrB Offline
                        bahnuhr
                        Forum Testing Most Active
                        schrieb am zuletzt editiert von
                        #26

                        @liv-in-sky sagte in [gelöst] Skript auf AXIOS umbauen:

                        habe dann das alte nochmal gestartet und wieder beendet, dann war die meldung weg

                        Dieser Versuch hab ich schon hinter mir.
                        iob hatte ich gestern komplett neu gestartet.

                        Meldung kommt trotzdem !


                        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

                        haus-automatisierungH 1 Antwort Letzte Antwort
                        0
                        • bahnuhrB bahnuhr

                          @liv-in-sky sagte in [gelöst] Skript auf AXIOS umbauen:

                          habe dann das alte nochmal gestartet und wieder beendet, dann war die meldung weg

                          Dieser Versuch hab ich schon hinter mir.
                          iob hatte ich gestern komplett neu gestartet.

                          Meldung kommt trotzdem !

                          haus-automatisierungH Online
                          haus-automatisierungH Online
                          haus-automatisierung
                          Developer Most Active
                          schrieb am zuletzt editiert von
                          #27

                          @bahnuhr Hast Du Scripts in global liegen?

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

                          bahnuhrB 1 Antwort Letzte Antwort
                          0
                          • haus-automatisierungH haus-automatisierung

                            @bahnuhr Hast Du Scripts in global liegen?

                            bahnuhrB Offline
                            bahnuhrB Offline
                            bahnuhr
                            Forum Testing Most Active
                            schrieb am zuletzt editiert von bahnuhr
                            #28

                            @haus-automatisierung sagte in [gelöst] Skript auf AXIOS umbauen:

                            @bahnuhr Hast Du Scripts in global liegen?

                            ja !
                            Das ist ne Idee, schau ich gleich mal nach.

                            Nachtrag:
                            alle durchgeschaut; da ist nix mit request.
                            Nachtrag2:
                            doch eines gefunden, ändere das gleich mal ab.


                            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

                            haus-automatisierungH joergeliJ 2 Antworten Letzte Antwort
                            0
                            • bahnuhrB bahnuhr

                              @haus-automatisierung sagte in [gelöst] Skript auf AXIOS umbauen:

                              @bahnuhr Hast Du Scripts in global liegen?

                              ja !
                              Das ist ne Idee, schau ich gleich mal nach.

                              Nachtrag:
                              alle durchgeschaut; da ist nix mit request.
                              Nachtrag2:
                              doch eines gefunden, ändere das gleich mal ab.

                              haus-automatisierungH Online
                              haus-automatisierungH Online
                              haus-automatisierung
                              Developer Most Active
                              schrieb am zuletzt editiert von
                              #29

                              @bahnuhr sagte in [gelöst] Skript auf AXIOS/httpGet umbauen:

                              @haus-automatisierung sagte in [gelöst] Skript auf AXIOS umbauen:
                              Nachtrag2:
                              doch eines gefunden, ändere das gleich mal ab.

                              Alles andere hätte mich jetzt auch echt gewundert 🙃

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

                              bahnuhrB 2 Antworten Letzte Antwort
                              0
                              • haus-automatisierungH haus-automatisierung

                                @bahnuhr sagte in [gelöst] Skript auf AXIOS/httpGet umbauen:

                                @haus-automatisierung sagte in [gelöst] Skript auf AXIOS umbauen:
                                Nachtrag2:
                                doch eines gefunden, ändere das gleich mal ab.

                                Alles andere hätte mich jetzt auch echt gewundert 🙃

                                bahnuhrB Offline
                                bahnuhrB Offline
                                bahnuhr
                                Forum Testing Most Active
                                schrieb am zuletzt editiert von
                                #30

                                @haus-automatisierung sagte in [gelöst] Skript auf AXIOS umbauen:

                                Alles andere hätte mich jetzt auch echt gewundert 🙃

                                ja, mich ja auch.
                                Deshalb war es ja merkwürdig.

                                ;-) wär ich aber bestimmt noch drauf gekommen. ;-)


                                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

                                1 Antwort Letzte Antwort
                                0
                                • haus-automatisierungH haus-automatisierung

                                  @bahnuhr sagte in [gelöst] Skript auf AXIOS/httpGet umbauen:

                                  @haus-automatisierung sagte in [gelöst] Skript auf AXIOS umbauen:
                                  Nachtrag2:
                                  doch eines gefunden, ändere das gleich mal ab.

                                  Alles andere hätte mich jetzt auch echt gewundert 🙃

                                  bahnuhrB Offline
                                  bahnuhrB Offline
                                  bahnuhr
                                  Forum Testing Most Active
                                  schrieb am zuletzt editiert von
                                  #31

                                  @haus-automatisierung

                                  erledigt, warn ist weg.
                                  Es lag an dem globalen Script.
                                  Danke


                                  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

                                  1 Antwort Letzte Antwort
                                  0
                                  • bahnuhrB bahnuhr

                                    @haus-automatisierung sagte in [gelöst] Skript auf AXIOS umbauen:

                                    @bahnuhr Hast Du Scripts in global liegen?

                                    ja !
                                    Das ist ne Idee, schau ich gleich mal nach.

                                    Nachtrag:
                                    alle durchgeschaut; da ist nix mit request.
                                    Nachtrag2:
                                    doch eines gefunden, ändere das gleich mal ab.

                                    joergeliJ Offline
                                    joergeliJ Offline
                                    joergeli
                                    schrieb am zuletzt editiert von
                                    #32

                                    @bahnuhr sagte in [gelöst] Skript auf AXIOS/httpGet umbauen:

                                    Nachtrag:
                                    alle durchgeschaut; da ist nix mit request.
                                    Nachtrag2:
                                    doch eines gefunden, ändere das gleich mal ab.

                                    Du weißt, wie man automatisch nach Begriffen in allen Scripten suchen kann?
                                    Dazu im Scripte-Tag das Lupensymbol rechts oben anklicken und dann den entspr. Suchbegriff eingeben (hier: request).
                                    Dann werden alle Scripte aufgelistet, die diesen Suchbegriff enthalten, s. Screenshot:
                                    request.jpg

                                    Danach nicht vergessen, die Suche wieder auszuschalten: das "durchgestrichene T" nochmals anklicken.

                                    1 Antwort Letzte Antwort
                                    0
                                    • NegaleinN Offline
                                      NegaleinN Offline
                                      Negalein
                                      Global Moderator
                                      schrieb am zuletzt editiert von
                                      #33

                                      Hallo

                                      Ich habe auch 8 Scripte und 5 Blocklys, wo noch request läuft.
                                      Reicht mWn nicht, einfach request durch httpGet oder axios zu ersetzen.

                                      Könnte da wer über meine Scripte drüberschaun?

                                      Das ist zB eins von den 8.

                                      var url = "http://10.0.1.93/middleware.php/data.json?from=now&uuid[]=bc3edcd0-24c4-11ea-b257-bdbd9553c516&uuid[]=deda8550-24c4-11ea-b402-275ee0956365";
                                      var pfad = "Volkszaehler.";
                                      var idAKTUELLER_VERBRAUCH = pfad + "AKTUELLER_VERBRAUCH";
                                      var idAKTUELLE_ERZEUGUNG = pfad + "AKTUELLE_LIEFERUNG";
                                      // var idAKTUELLE_HEIZUNG = pfad + "AKTUELLE_HEIZUNG";
                                       
                                       
                                      // Vorgegebene Funktion, die nur dazu dient, das JSON einzulesen
                                      // Angelehnt an: http://www.iobroker.net/docu/?page_id=3691
                                      var request = require("request");
                                      function readJson(url, callback) {
                                          request(url, function(err, state, body) {
                                              if (body) {
                                                  var json = {};
                                                  if (body !== "") {
                                                      try {
                                                          json = JSON.parse(body);
                                                      } catch (ex) {
                                                          json = {};
                                                      }
                                                      if (!json) {
                                                          json = {};
                                                      }
                                                  }
                                                  callback(null, json);
                                              } else {
                                                  var error = "(" + err + ") ERROR bei Abfrage von: " + url;
                                                  log(error, "warn");
                                                  callback(error, null);
                                              }
                                          });
                                      }
                                       
                                      // Erzeugen der Objekte in ioBroker
                                      createState(idAKTUELLER_VERBRAUCH, 0, {
                                          name: 'Aktueller Verbrauch',
                                          desc: 'Aktueller Verbrauch',
                                          type: 'number',
                                          role: 'value',
                                          unit: 'W'
                                      });
                                      createState(idAKTUELLE_ERZEUGUNG, 0, {
                                          name: 'Aktuelle Erzeugung',
                                          desc: 'Aktuelle Erzeugung',
                                          type: 'number',
                                          role: 'value',
                                          unit: 'W'
                                      });
                                      // createState(idAKTUELLE_HEIZUNG, 0, {
                                      //     name: 'Aktuelle Heizung',
                                      //     desc: 'Aktuelle Heizung',
                                      //     type: 'number',
                                      //     role: 'value',
                                      //     unit: 'W'
                                      // });
                                       
                                      // Startet das Skript alle 2 Sekunden neu
                                      schedule("*/2 * * * * *", function() {
                                          readJson(url, function(err, json) {
                                              if (!err) {
                                                  var wert1 = json.data[0].tuples[0][1];
                                                  var wert2 = json.data[1].tuples[0][1];
                                                  // var wert3 = json.data[2].tuples[0][1];
                                                  // Setzen der Werte in ioBroker
                                                  // Man füllt die oben erzeugten Objekte jetzt mit den Werten
                                                  setState(idAKTUELLER_VERBRAUCH, wert1);
                                                  setState(idAKTUELLE_ERZEUGUNG, wert2);
                                                  // setState(idAKTUELLE_HEIZUNG, wert3);
                                              } else {
                                                  log("Fehler beim Auslesen des JSON fuer Volkszaehler. Keine Daten erhalten.", "warn");
                                              }
                                          });
                                      });
                                      
                                      

                                      ° Node.js: 20.17.0 NPM: 10.8.2
                                      ° Proxmox, Ubuntu 22.04.3 LTS
                                      ° Fixer ---> iob fix

                                      paul53P 1 Antwort Letzte Antwort
                                      0
                                      • NegaleinN Negalein

                                        Hallo

                                        Ich habe auch 8 Scripte und 5 Blocklys, wo noch request läuft.
                                        Reicht mWn nicht, einfach request durch httpGet oder axios zu ersetzen.

                                        Könnte da wer über meine Scripte drüberschaun?

                                        Das ist zB eins von den 8.

                                        var url = "http://10.0.1.93/middleware.php/data.json?from=now&uuid[]=bc3edcd0-24c4-11ea-b257-bdbd9553c516&uuid[]=deda8550-24c4-11ea-b402-275ee0956365";
                                        var pfad = "Volkszaehler.";
                                        var idAKTUELLER_VERBRAUCH = pfad + "AKTUELLER_VERBRAUCH";
                                        var idAKTUELLE_ERZEUGUNG = pfad + "AKTUELLE_LIEFERUNG";
                                        // var idAKTUELLE_HEIZUNG = pfad + "AKTUELLE_HEIZUNG";
                                         
                                         
                                        // Vorgegebene Funktion, die nur dazu dient, das JSON einzulesen
                                        // Angelehnt an: http://www.iobroker.net/docu/?page_id=3691
                                        var request = require("request");
                                        function readJson(url, callback) {
                                            request(url, function(err, state, body) {
                                                if (body) {
                                                    var json = {};
                                                    if (body !== "") {
                                                        try {
                                                            json = JSON.parse(body);
                                                        } catch (ex) {
                                                            json = {};
                                                        }
                                                        if (!json) {
                                                            json = {};
                                                        }
                                                    }
                                                    callback(null, json);
                                                } else {
                                                    var error = "(" + err + ") ERROR bei Abfrage von: " + url;
                                                    log(error, "warn");
                                                    callback(error, null);
                                                }
                                            });
                                        }
                                         
                                        // Erzeugen der Objekte in ioBroker
                                        createState(idAKTUELLER_VERBRAUCH, 0, {
                                            name: 'Aktueller Verbrauch',
                                            desc: 'Aktueller Verbrauch',
                                            type: 'number',
                                            role: 'value',
                                            unit: 'W'
                                        });
                                        createState(idAKTUELLE_ERZEUGUNG, 0, {
                                            name: 'Aktuelle Erzeugung',
                                            desc: 'Aktuelle Erzeugung',
                                            type: 'number',
                                            role: 'value',
                                            unit: 'W'
                                        });
                                        // createState(idAKTUELLE_HEIZUNG, 0, {
                                        //     name: 'Aktuelle Heizung',
                                        //     desc: 'Aktuelle Heizung',
                                        //     type: 'number',
                                        //     role: 'value',
                                        //     unit: 'W'
                                        // });
                                         
                                        // Startet das Skript alle 2 Sekunden neu
                                        schedule("*/2 * * * * *", function() {
                                            readJson(url, function(err, json) {
                                                if (!err) {
                                                    var wert1 = json.data[0].tuples[0][1];
                                                    var wert2 = json.data[1].tuples[0][1];
                                                    // var wert3 = json.data[2].tuples[0][1];
                                                    // Setzen der Werte in ioBroker
                                                    // Man füllt die oben erzeugten Objekte jetzt mit den Werten
                                                    setState(idAKTUELLER_VERBRAUCH, wert1);
                                                    setState(idAKTUELLE_ERZEUGUNG, wert2);
                                                    // setState(idAKTUELLE_HEIZUNG, wert3);
                                                } else {
                                                    log("Fehler beim Auslesen des JSON fuer Volkszaehler. Keine Daten erhalten.", "warn");
                                                }
                                            });
                                        });
                                        
                                        
                                        paul53P Offline
                                        paul53P Offline
                                        paul53
                                        schrieb am zuletzt editiert von paul53
                                        #34

                                        @negalein sagte: request durch httpGet oder axios zu ersetzen.

                                        Lass Zeile 10 weg und ersetze Zeilen 12, 13 durch

                                            httpGet(url, (err, response) => {
                                                if(!err) {
                                                    const body = response.data;
                                        

                                        Die Funktion liest nicht nur das JSON ein, sondern wandelt es auch in ein Objekt.

                                        Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                                        Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                                        NegaleinN 1 Antwort Letzte Antwort
                                        3
                                        • paul53P paul53

                                          @negalein sagte: request durch httpGet oder axios zu ersetzen.

                                          Lass Zeile 10 weg und ersetze Zeilen 12, 13 durch

                                              httpGet(url, (err, response) => {
                                                  if(!err) {
                                                      const body = response.data;
                                          

                                          Die Funktion liest nicht nur das JSON ein, sondern wandelt es auch in ein Objekt.

                                          NegaleinN Offline
                                          NegaleinN Offline
                                          Negalein
                                          Global Moderator
                                          schrieb am zuletzt editiert von Negalein
                                          #35

                                          @paul53 sagte in [gelöst] Skript auf AXIOS/httpGet umbauen:

                                          request durch httpGet oder axios zu ersetzen.

                                          habs jetzt so geändert.

                                          var url = "http://10.0.1.93/middleware.php/data.json?from=now&uuid[]=bc3edcd0-24c4-11ea-b257-bdbd9553c516&uuid[]=deda8550-24c4-11ea-b402-275ee0956365";
                                          var pfad = "Volkszaehler.";
                                          var idAKTUELLER_VERBRAUCH = pfad + "AKTUELLER_VERBRAUCH";
                                          var idAKTUELLE_ERZEUGUNG = pfad + "AKTUELLE_LIEFERUNG";
                                          // var idAKTUELLE_HEIZUNG = pfad + "AKTUELLE_HEIZUNG";
                                           
                                           
                                          // Vorgegebene Funktion, die nur dazu dient, das JSON einzulesen
                                          // Angelehnt an: http://www.iobroker.net/docu/?page_id=3691
                                          //var request = require("request");
                                          function readJson(url, callback) {
                                              httpGet(url, (err, response) => {
                                                  if(!err) {
                                                      const body = response.data;
                                                      var json = {};
                                                      if (body !== "") {
                                                          try {
                                                              json = JSON.parse(body);
                                                          } catch (ex) {
                                                              json = {};
                                                          }
                                                          if (!json) {
                                                              json = {};
                                                          }
                                                      }
                                                      callback(null, json);
                                                  } else {
                                                      var error = "(" + err + ") ERROR bei Abfrage von: " + url;
                                                      log(error, "warn");
                                                      callback(error, null);
                                                  }
                                              });
                                          }
                                           
                                          // Erzeugen der Objekte in ioBroker
                                          createState(idAKTUELLER_VERBRAUCH, 0, {
                                              name: 'Aktueller Verbrauch',
                                              desc: 'Aktueller Verbrauch',
                                              type: 'number',
                                              role: 'value',
                                              unit: 'W'
                                          });
                                          createState(idAKTUELLE_ERZEUGUNG, 0, {
                                              name: 'Aktuelle Erzeugung',
                                              desc: 'Aktuelle Erzeugung',
                                              type: 'number',
                                              role: 'value',
                                              unit: 'W'
                                          });
                                          // createState(idAKTUELLE_HEIZUNG, 0, {
                                          //     name: 'Aktuelle Heizung',
                                          //     desc: 'Aktuelle Heizung',
                                          //     type: 'number',
                                          //     role: 'value',
                                          //     unit: 'W'
                                          // });
                                           
                                          // Startet das Skript alle 2 Sekunden neu
                                          schedule("*/2 * * * * *", function() {
                                              readJson(url, function(err, json) {
                                                  if (!err) {
                                                      var wert1 = json.data[0].tuples[0][1];
                                                      var wert2 = json.data[1].tuples[0][1];
                                                      // var wert3 = json.data[2].tuples[0][1];
                                                      // Setzen der Werte in ioBroker
                                                      // Man füllt die oben erzeugten Objekte jetzt mit den Werten
                                                      setState(idAKTUELLER_VERBRAUCH, wert1);
                                                      setState(idAKTUELLE_ERZEUGUNG, wert2);
                                                      // setState(idAKTUELLE_HEIZUNG, wert3);
                                                  } else {
                                                      log("Fehler beim Auslesen des JSON fuer Volkszaehler. Keine Daten erhalten.", "warn");
                                                  }
                                              });
                                          });
                                          
                                          

                                          Seitdem kommt immer

                                          javascript.0 2024-05-21 22:00:04.003	warn	script.js.common.Volkszaehler: Fehler beim Auslesen des JSON fuer Volkszaehler. Keine Daten erhalten.
                                          javascript.0 2024-05-21 22:00:04.003	warn	script.js.common.Volkszaehler: (timeout of 2000ms exceeded) ERROR bei Abfrage von: http://10.0.1.93/middleware.php/data.json?from=now&uuid[]=bc3edcd0-24c4-11ea-b257-bdbd9553c516&uuid[]=deda8550-24c4-11ea-b402-275ee0956365
                                          

                                          ° Node.js: 20.17.0 NPM: 10.8.2
                                          ° Proxmox, Ubuntu 22.04.3 LTS
                                          ° Fixer ---> iob fix

                                          1 Antwort Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          404

                                          Online

                                          32.4k

                                          Benutzer

                                          81.5k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe