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. Probleme mit script bei Datenabfrage von Solarlog per curl

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.0k

Probleme mit script bei Datenabfrage von Solarlog per curl

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
11 Beiträge 4 Kommentatoren 2.3k Aufrufe 1 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.
  • F Offline
    F Offline
    Farmer-cb
    schrieb am zuletzt editiert von
    #1

    Hallo

    frage meine 2 Datenlogger (solarlog 500) per curl ab,

    bei einem funktioniert die Abfrage einwandfrei, beim anderen, kommt seit ca 3 Tagen folgende fehlermeldung:

    12:12:21.173	[info]	javascript.0 Stop script script.js.common.Datenlogger.xxx
    12:12:21.292	[info]	javascript.0 Start javascript script.js.common.Datenlogger.xxx
    12:12:21.292	[warn]	javascript.0 script.js.common.Datenlogger.xxx: setForeignState(id=javascript.0.Daten.Dauersignale.always_true, state=true) - was not executed, while debug mode is active
    12:12:21.293	[warn]	javascript.0 script.js.common.Datenlogger.xxx: setForeignState(id=javascript.0.Daten.Dauersignale.always_false, state=false) - was not executed, while debug mode is active
    12:12:21.293	[info]	javascript.0 script.js.common.Datenlogger.xxx: solarlog url: http://ip-adresse/getjp
    12:12:21.294	[info]	javascript.0 script.js.common.Datenlogger.xxx: registered 0 subscriptions and 1 schedule
    12:12:21.403	[warn]	javascript.0 script.js.common.Datenlogger.xxx: Command curl -X POST -H "Content-Type: application/json" -d '{"110":null,"111":null,"141":{"32000":{"119":null,"145":null,"149":null}},"177":null,"178":null,"608":null,"609":null,"780":null,"781":null,"782":null,"800":{"104":null,"147":null},"801":{"170":null}}' http://192.168.13.2/getjp was not executed, while debug mode is active
    12:12:21.447	[error]	javascript.0 SyntaxError: Unexpected token u in JSON at position 0 at Object.parse (native) at script.js.common.Datenlogger.xxx:86:22 at Immediate. (/opt/iobroker/node_modules/iobroker.javascript/javascript.js:1396:33) at runCallback (timers.js:672:20) at tryOnImmediate (timers.js:645:5) at processImmediate [as _immediateCallback] (timers.js:617:5)
    12:12:21.568	[error]	Caught by controller[0]: at script.js.common.Datenlogger.xxx:86:22
    
    

    hier meine Abfrage (Skript):

    var request = require('request');
    var url = 'http://ip-adresse/getjp';
    var loggen= false;
    
    log ('solarlog url: '+url);
    
    var name1            = "javascript.0.Daten.Datenlogger.xxx.Name_1";
    var erzeugung1       = "javascript.0.Daten.Datenlogger.xxx.Erzeugung_1";
    var status1          = "javascript.0.Daten.Datenlogger.xxx.Status_1";
    var name2            = "javascript.0.Daten.Datenlogger.xxx.Name_2";
    var erzeugung2       = "javascript.0.Daten.Datenlogger.xxx.Erzeugung_2";
    var status2          = "javascript.0.Daten.Datenlogger.xxx.Status_2";
    var gesamt           = "javascript.0.Daten.Datenlogger.xxx.Gesamterzeugung";
    var datum            = "javascript.0.Daten.Datenlogger.xxx.Datum";
    
    createState(name1,           {name: "Name_1", unit: ""});
    createState(erzeugung1,      {name: "Erzeugung_1",     unit: "W"});
    createState(status1,         {name: "Status_1",     unit: ""});
    
    createState(name2,           {name: "Name_2", unit: ""});
    createState(erzeugung2,      {name: "Erzeugung_2",     unit: "W"});
    createState(status2,         {name: "Status_2",     unit: ""});
    
    createState(gesamt,          {name: "Gesamterzeugung", unit: "W"});
    createState(datum,           {name: "Datum", unit: ""});
    
    var abfrage = "curl -X POST -H \u0022Content-Type: application/json\u0022 -d '{\"110\":null,\"111\":null,\"141\":{\"32000\":{\"119\":null,\"145\":null,\"149\":null}},\"177\":null,\"178\":null,\"608\":null,\"609\":null,\"780\":null,\"781\":null,\"782\":null,\"800\":{\"104\":null,\"147\":null},\"801\":{\"170\":null}}' "+url;
    
    function abfrageStarten2() {
        exec(abfrage, function(err, stdout, stderr) {
            if (err) {
                log("Error: " + err,"warn");
                return;
            }
           var pv = JSON.parse(stdout);
    
            //log (  'zeitpunkt: '+pv["801"]["170"]["100"]);
            //log (       'name: '+pv["141"]["0"]["119"]);
            //log (       'name: '+pv["141"]["1"]["119"]);
            //log (       'status: '+pv["608"]["0"]);
            //log (       'status: '+pv["608"]["1"]);
            //log (       'Watt: '+pv["782"]["0"]);
            //log (       'Watt: '+pv["782"]["1"]);
            var leistung1       =(pv["782"]["0"]*1);
            var leistung2       =(pv["782"]["1"]*1);
            var gesamtleistung  =leistung1+leistung2;
            setState(name1, pv["141"]["0"]["119"]);
            setState(name2, pv["141"]["1"]["119"]);
            setState(erzeugung1, leistung1);
            setState(erzeugung2, leistung2);
            setState(gesamt, gesamtleistung);
            setState(status1, pv["608"]["0"]);
            setState(status2, pv["608"]["1"]);
            setState(datum, pv["801"]["170"]["100"]);
        });
    }
    
    setTimeout(abfrageStarten2, 100);  // Script start
    schedule("*/15 * * * * *", abfrageStarten2);  // alle 15sek
    
    

    was mache ich hier verkehrt, vorallem weill ja ein identisches skript für den anderen Datenlogger einwandfrei läuft.

    bin auch für vorschläge offen, wenn es eine andere möglichkeit der Abfrage gibt

    smartes Haus durch Digitalstrom, enocean, SPS S7-1215, Homematik, Motioneye, iobroker auf einem HP-mini mit Proxmox

    5 x Echo Show, 2 x Echo Dot

    1 Antwort Letzte Antwort
    0
    • DutchmanD Offline
      DutchmanD Offline
      Dutchman
      Developer Most Active Administrators
      schrieb am zuletzt editiert von
      #2

      Ich lese hier das curl abfragen nicht unterstützt werden ?!

      Du müsstest json oder modbus nehmen

      https://www.loxforum.com/forum/german/s … p-auslesen

       E-Mail von Solarlog:
      "der Browserbefehl zur Auslesung der min_cur.js war ein interner Befehl, zur Internen Verwendung, der in keinem Handbuch für Kunden dokumentiert ist.
      Mit Firmware 3.x sind diese Befehle nicht mehr möglich, da die Datenstruktur geändert wurde.
      
      Sie haben mit der Firmware 3.x die Möglichkeit über Modbus TCP Schnittstelle oder JSON Schnittstelle Ist-Werte aus dem Solar-Log[emoji769] auszulesen.
      Diese Möglichkeiten sind im aktuellem Installationshandbuch des Solar-Log[emoji769] dokumentiert.
      Das Handbuch finden Sie unter folgendem Link:
      http://www.solar-log.com/de/service-...e/deutsch.html
      
      Bitte prüfen Sie ob Sie über diese Schnittstellen Ihrer Gebäudesteuerung die benötigten Daten zur Verfügung stellen können."
      
      Alternativ frage wie lest ihr bzw du den Solarlog in Loxone aus, eine kleine Anleitung wäre supe
      

      –-----------------------

      Send from mobile device

      Das schöne ios hat Auto Korrektur zum k****

      Wer Schreibfehler findet darf sie behalten oder auf eBay verkaufen, mindest Umsatz 10% für die community

      1 Antwort Letzte Antwort
      0
      • DutchmanD Offline
        DutchmanD Offline
        Dutchman
        Developer Most Active Administrators
        schrieb am zuletzt editiert von
        #3

        Und hier sogar noch ein Post im Forum zum Auslesen von solarlog per modbus :-)

        viewtopic.php?t=5549

        –-----------------------

        Send from mobile device

        Das schöne ios hat Auto Korrektur zum k****

        Wer Schreibfehler findet darf sie behalten oder auf eBay verkaufen, mindest Umsatz 10% für die community

        1 Antwort Letzte Antwort
        0
        • J Offline
          J Offline
          JackWolfskind
          schrieb am zuletzt editiert von
          #4

          Wenn die gleiche curl Abfrage plötzlich nicht mehr geht , und das ohne das es auf dem einen solarlog ein FW Update gab, würde ich ein Reboot empfehlen! du wirst den curl sicher nochmal direkt aus der Unix Shell getestet haben?

          @Dutchman

          Es gibt viele Funktionen, wie Unterverbraucher die über Modbus nicht möglich sind, aber per JSON (mit curl)

          Da es anscheinend immer mal wieder Interesse an solarlog gibt, habe ich auch mak einen Solarlog - Adapter vorgeschlagen - zum support liken ;-)

          https://github.com/ioBroker/AdapterRequests/issues/51

          1 Antwort Letzte Antwort
          0
          • DutchmanD Offline
            DutchmanD Offline
            Dutchman
            Developer Most Active Administrators
            schrieb am zuletzt editiert von
            #5

            @JackWolfskind:

            Da es anscheinend immer mal wieder Interesse an solarlog gibt, habe ich auch mak einen Solarlog - Adapter vorgeschlagen - zum support liken ;-)

            https://github.com/ioBroker/AdapterRequests/issues/51 `

            Das klingt gut nur noch jemanden finden der Zeit und Ahnung hat ihn zu bauen ;-).

            JSON abfragen müsste aber auch mit dem System Info Adapter gehen

            –-----------------------

            Send from mobile device

            Das schöne ios hat Auto Korrektur zum k****

            Wer Schreibfehler findet darf sie behalten oder auf eBay verkaufen, mindest Umsatz 10% für die community

            1 Antwort Letzte Antwort
            0
            • F Offline
              F Offline
              Farmer-cb
              schrieb am zuletzt editiert von
              #6

              Hallo

              reboot des Datenloggers und des iobrokers wurden gemacht.

              Leider ohne erfolg.

              Bei einem Datenloger gehts, beim anderen nicht.

              @JackWolfskind:

              Wenn die gleiche curl Abfrage plötzlich nicht mehr geht , und das ohne das es auf dem einen solarlog ein FW Update gab, würde ich ein Reboot empfehlen! du wirst den curl sicher nochmal direkt aus der Unix Shell getestet haben?

              @Dutchman

              Es gibt viele Funktionen, wie Unterverbraucher die über Modbus nicht möglich sind, aber per JSON (mit curl)

              Da es anscheinend immer mal wieder Interesse an solarlog gibt, habe ich auch mak einen Solarlog - Adapter vorgeschlagen - zum support liken ;-)

              https://github.com/ioBroker/AdapterRequests/issues/51 `

              smartes Haus durch Digitalstrom, enocean, SPS S7-1215, Homematik, Motioneye, iobroker auf einem HP-mini mit Proxmox

              5 x Echo Show, 2 x Echo Dot

              1 Antwort Letzte Antwort
              0
              • F Offline
                F Offline
                Farmer-cb
                schrieb am zuletzt editiert von
                #7

                Servus

                an Modbus-TCP hab ich noch garnicht gedacht, Danke :D

                Habs jetzt mal umgestellt, funktioniert ohne Probleme, leider kann man über Modbus keine einzelne Wehselrichter auslesen :cry:

                @Dutchman:

                Und hier sogar noch ein Post im Forum zum Auslesen von solarlog per modbus :-)

                viewtopic.php?t=5549

                –-----------------------

                Send from mobile device

                Das schöne ios hat Auto Korrektur zum k****

                Wer Schreibfehler findet darf sie behalten oder auf eBay verkaufen, mindest Umsatz 10% für die community `

                smartes Haus durch Digitalstrom, enocean, SPS S7-1215, Homematik, Motioneye, iobroker auf einem HP-mini mit Proxmox

                5 x Echo Show, 2 x Echo Dot

                1 Antwort Letzte Antwort
                0
                • F Offline
                  F Offline
                  Farmer-cb
                  schrieb am zuletzt editiert von
                  #8

                  Servus

                  entschuldige die blöde frage, aber wie Like ich da, muss ich mich dazu erstmal Anmelden??

                  @JackWolfskind:

                  Da es anscheinend immer mal wieder Interesse an solarlog gibt, habe ich auch mak einen Solarlog - Adapter vorgeschlagen - zum support liken ;-)

                  https://github.com/ioBroker/AdapterRequests/issues/51 `

                  smartes Haus durch Digitalstrom, enocean, SPS S7-1215, Homematik, Motioneye, iobroker auf einem HP-mini mit Proxmox

                  5 x Echo Show, 2 x Echo Dot

                  1 Antwort Letzte Antwort
                  0
                  • J Offline
                    J Offline
                    JackWolfskind
                    schrieb am zuletzt editiert von
                    #9

                    Ja, da muss man leider einen Account haben um liken zu können - evtl. ist das der Hauptgrund warum es der ruhigste Enhancement Request Ort ist den ich im gesamten Samrt Home SW Umfeld kenne :roll:

                    ` > @Dutchman

                    JSON abfragen müsste aber auch mit dem System Info Adapter gehen `
                    Wenn der Adapter Json abfragen und parsen kann, dann ist das ne Möglichkeit. Allerdings kenne ich mich damit bisher noch nicht aus, muss mir mal den System Info Adapter anschauen…. vielleicht kann man ja uaf denssen Grundlage einen solarlog Adapter bauen?

                    1 Antwort Letzte Antwort
                    0
                    • F Offline
                      F Offline
                      forelleblau
                      schrieb am zuletzt editiert von
                      #10

                      @Dutchman:

                      @JackWolfskind:

                      Da es anscheinend immer mal wieder Interesse an solarlog gibt, habe ich auch mak einen Solarlog - Adapter vorgeschlagen - zum support liken ;-)

                      https://github.com/ioBroker/AdapterRequests/issues/51 `

                      Das klingt gut nur noch jemanden finden der Zeit und Ahnung hat ihn zu bauen ;-).

                      JSON abfragen müsste aber auch mit dem System Info Adapter gehen

                      –-----------------------

                      Send from mobile device

                      Das schöne ios hat Auto Korrektur zum k****

                      Wer Schreibfehler findet darf sie behalten oder auf eBay verkaufen, mindest Umsatz 10% für die community `

                      jemanden hat sich gefunden…

                      viewtopic.php?f=20&t=18977#p198111

                      1 Antwort Letzte Antwort
                      0
                      • DutchmanD Offline
                        DutchmanD Offline
                        Dutchman
                        Developer Most Active Administrators
                        schrieb am zuletzt editiert von
                        #11

                        [emoji847]

                        Sent from my iPhone using Tapatalk

                        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

                        780

                        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