Skip to content
  • 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
Logo
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. JavaScript
  5. Errormeldungen abfangen

NEWS

  • Wartung am 15.11. – Forum ab 22:00 Uhr nicht erreichbar
    BluefoxB
    Bluefox
    11
    2
    224

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

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

Errormeldungen abfangen

Errormeldungen abfangen

Scheduled Pinned Locked Moved JavaScript
13 Posts 3 Posters 384 Views 2 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.
  • HomoranH Offline
    HomoranH Offline
    Homoran
    Global Moderator Administrators
    wrote on last edited by Homoran
    #1

    ich habe in den letzten Tagen manchmal folgende Errormeldungen bekommen

    javascript.1
    	2024-04-13 08:32:16.541	error	Request error: Error: connect ETIMEDOUT 192.168.138.103:80
    javascript.1
    	2024-04-13 08:32:16.541	error	Error in request callback: ReferenceError: url is not defined
    javascript.1
    	2024-04-13 08:32:16.540	error	Request error: Error: connect ETIMEDOUT 192.168.138.103:80
    javascript.1
    	2024-04-13 08:32:16.540	error	Error in request callback: ReferenceError: url is not defined
    javascript.1
    	2024-04-13 08:32:16.540	error	Request error: Error: connect ETIMEDOUT 192.168.138.103:80
    javascript.1
    	2024-04-13 08:32:16.540	error	Error in request callback: ReferenceError: url is not defined
    javascript.1
    	2024-04-13 08:32:16.539	error	Request error: Error: connect ETIMEDOUT 192.168.138.103:80
    javascript.1
    	2024-04-13 08:32:16.539	error	Error in request callback: ReferenceError: url is not defined
    javascript.1
    	2024-04-13 08:32:16.539	error	Request error: Error: connect ETIMEDOUT 192.168.138.103:80
    javascript.1
    	2024-04-13 08:32:16.539	error	Error in request callback: ReferenceError: url is not defined
    javascript.1
    	2024-04-13 08:32:16.538	error	Request error: Error: connect ETIMEDOUT 192.168.138.103:80
    javascript.1
    	2024-04-13 08:32:16.538	error	Error in request callback: ReferenceError: url is not defined
    javascript.1
    	2024-04-13 08:32:16.537	error	Request error: Error: connect ETIMEDOUT 192.168.138.103:80
    javascript.1
    	2024-04-13 08:32:16.537	error	Error in request callback: ReferenceError: url is not defined
    javascript.1
    	2024-04-13 08:32:16.537	error	Request error: Error: connect ETIMEDOUT 192.168.138.103:80
    javascript.1
    	2024-04-13 08:32:16.537	error	Error in request callback: ReferenceError: url is not defined
    

    Die Dauer heute waren ca. 90msec aber bei 4 Meldungen pro msec knallt das das Log ganz schön voll.
    Ich nehme an, dass es sich um ein Script zum auslesen des Kostal Piko Wechselrichters handelt und es möglicherweise Probleme im Netzwerk gibt, welcher Art auch immer.
    Anders kann ich url is not defined nicht zuordnen.

    kann man das irgendwie abfangen.

    PS sobald ich es schaffe das Skript zu kopieren, poste ich es 😁

    // Ausleseskript Wechselrichter Kostal Piko ab Firmware v05.31 (12.10.2015)
    
    //Variable
    
    //Leistungswerte
       ID_DCEingangGesamt = 33556736;         // in W
       ID_Ausgangsleistung = 67109120;        // in W
       ID_Eigenverbrauch = 83888128;          // in W
       //Status
       ID_Status = 16780032;                  // 0:Off
       //Statistik - Tag
       ID_Ertrag_d = 251658754;               // in Wh
       ID_Hausverbrauch_d = 251659010;        // in Wh
       ID_Eigenverbrauch_d = 251659266;       // in Wh
       ID_Eigenverbrauchsquote_d = 251659278; // in %
       ID_Autarkiegrad_d = 251659279;         // in %
       //Statistik - Gesamt
       ID_Ertrag_G = 251658753;               // in kWh
       ID_Hausverbrauch_G = 251659009;        // in kWh
       ID_Eigenverbrauch_G = 251659265;       // in kWh
       ID_Eigenverbrauchsquote_G = 251659280; // in %
       ID_Autarkiegrad_G = 251659281;         // in %
       ID_Betriebszeit = 251658496;           // in h
       //Momentanwerte - PV Genertor
       ID_DC1Spannung = 33555202;             // in V
       ID_DC1Strom = 33555201;                // in A
       ID_DC1Leistung = 33555203;             // in W
       ID_DC2Spannung = 33555458;             // in V
       ID_DC2Strom = 33555457;                // in A
       ID_DC2Leistung = 33555459;             // in W
       //Momentanwerte Haus
       ID_HausverbrauchSolar = 83886336;      // in W
       ID_HausverbrauchBatterie = 83886592;   // in W
       ID_HausverbrauchNetz = 83886848;       // in W
       ID_HausverbrauchPhase1 = 83887106;     // in W
       ID_HausverbrauchPhase2 = 83887362;     // in W
       ID_HausverbrauchPhase3 = 83887618;     // in W
       //Netz Netzparameter
       ID_NetzAusgangLeistung = 67109120;     // in W
       ID_NetzFrequenz = 67110400;            // in Hz
       ID_NetzCosPhi = 67110656;
       //Netz Phase 1
       ID_P1Spannung = 67109378;              // in V
       ID_P1Strom = 67109377;                 // in A
       ID_P1Leistung = 67109379;              // in W
       //Netz Phase 2
       ID_P2Spannung = 67109634;              // in V
       ID_P2Strom = 67109633;                 // in A
       ID_P2Leistung = 67109635;              // in W
       //Netz Phase 3
       ID_P3Spannung = 67109890;              // in V
       ID_P3Strom = 67109889;                 // in A
       ID_P3Leistung = 67109891;              // in W
    
    
    
    var IPAnlage = '192.168.138.103/api/dxs.json';   // IP der Photovoltaik-Anlage
    
    
    
    createState('Messwerte.0.Solaranlage.Momentanwerte.Leistung_AC_aktuell', 0);
    createState('Messwerte.0.Solaranlage.Summenwerte.Autarkiegrad_d',0);
    createState('Messwerte.0.Solaranlage.Summenwerte.Autarkiegrad_G',0);
    createState('Messwerte.0.Solaranlage.Summenwerte.Betriebszeit',0);
    createState('Messwerte.0.Solaranlage.Momentanwerte.Leistung_DC_aktuell',0);
    createState('Messwerte.0.Solaranlage.Momentanwerte.Eigenverbrauch',0);
    createState('Messwerte.0.Solaranlage.Summenwerte.Eigenverbrauch_d');
    createState('Messwerte.0.Solaranlage.Summenwerte.Eigenverbrauch_G', 0);
    createState('Messwerte.0.Solaranlage.Summenwerte.Eigenverbrauchsquote_d', 0);
    createState('Messwerte.0.Solaranlage.Summenwerte.Eigenverbrauchsquote_G', 0);
    createState('Messwerte.0.Solaranlage.Summenwerte.Tagesertrag', 0);
    createState('Messwerte.0.Solaranlage.Summenwerte.Gesamtertrag', 0);
    createState('Messwerte.0.Solaranlage.Summenwerte.Hausverbrauch_d', 0);
    createState('Messwerte.0.Solaranlage.Summenwerte.Hausverbrauch_G', 0);
    createState('Messwerte.0.Solaranlage.Momentanwerte.DC1Spannung');
    createState('Messwerte.0.Solaranlage.Momentanwerte.DC1Strom');
    createState('Messwerte.0.Solaranlage.Momentanwerte.DC2Spannung');
    createState('Messwerte.0.Solaranlage.Momentanwerte.DC2Strom');
    createState('Messwerte.0.Solaranlage.Momentanwerte.P1Strom');
    createState('Messwerte.0.Solaranlage.Momentanwerte.P2Strom');
    createState('Messwerte.0.Solaranlage.Momentanwerte.P1Leistung');
    createState('Messwerte.0.Solaranlage.Momentanwerte.P2Leistung');
    
    
    var logging = false;
    var request = require('request');
    
    function Piko() {
       if (logging) log("Piko 5.5 auslesen");
       request('http://' + IPAnlage + 
       '?dxsEntries=' + ID_DCEingangGesamt +
       '&dxsEntries=' + ID_Ausgangsleistung +
       '&dxsEntries=' + ID_DC1Strom +
       '&dxsEntries=' + ID_DC2Strom +
       '&dxsEntries=' + ID_Eigenverbrauch_G +
       '&dxsEntries=' + ID_Eigenverbrauchsquote_d +
       '&dxsEntries=' + ID_Eigenverbrauchsquote_G +
       '&dxsEntries=' + ID_Ertrag_d +
       '&dxsEntries=' + ID_Ertrag_G +
       '&dxsEntries=' + ID_Hausverbrauch_d +
       '&dxsEntries=' + ID_Hausverbrauch_G +
       '&dxsEntries=' + ID_Autarkiegrad_G +
       '&dxsEntries=' + ID_Autarkiegrad_d +
       '&dxsEntries=' + ID_Betriebszeit +
       '&dxsEntries=' + ID_DC1Spannung +
       '&dxsEntries=' + ID_DC2Spannung +
       '&dxsEntries=' + ID_P1Strom +
       '&dxsEntries=' + ID_P2Strom +
       '&dxsEntries=' + ID_P1Leistung +
       '&dxsEntries=' + ID_P2Leistung +
       '&dxsEntries=' + ID_Status +
       '&dxsEntries=' + ID_DC1Leistung +
       '&dxsEntries=' + ID_DC2Leistung,
       
       function (error, response, body) {
           if(!error && response.statusCode ==200) {
               if(logging) log(body);
               var result = JSON.parse(body).dxsEntries;
               setState('Messwerte.0.Solaranlage.Momentanwerte.Leistung_DC_aktuell', result[0].value || 0, true);
               setState('Messwerte.0.Solaranlage.Momentanwerte.Leistung_AC_aktuell', result[1].value || 0, true);
               setState('Messwerte.0.Solaranlage.Momentanwerte.DC1Strom', result[2].value || 0, true);
               setState('Messwerte.0.Solaranlage.Momentanwerte.DC2Strom', result[3].value || 0, true);
               setState('Messwerte.0.Solaranlage.Summenwerte.Eigenverbrauch_G', result[4].value || 0, true);
               setState('Messwerte.0.Solaranlage.Summenwerte.Eigenverbrauchsquote_d', result[5].value || 0, true);
               setState('Messwerte.0.Solaranlage.Summenwerte.Eigenverbrauchsquote_G', result[6].value || 0, true);
               setState('Messwerte.0.Solaranlage.Summenwerte.Tagesertrag', result[7].value || 0, true);
               setState('Messwerte.0.Solaranlage.Summenwerte.Gesamtertrag', result[8].value || 0, true);
               setState('Messwerte.0.Solaranlage.Summenwerte.Hausverbrauch_d', result[9].value || 0, true);
               setState('Messwerte.0.Solaranlage.Summenwerte.Hausverbrauch_G', result[10].value || 0, true);
               setState('Messwerte.0.Solaranlage.Summenwerte.Autarkiegrad_G', result[11].value || 0, true);
               setState('Messwerte.0.Solaranlage.Summenwerte.Autarkiegrad_d', result[12].value || 0, true);
               setState('Messwerte.0.Solaranlage.Summenwerte.Betriebszeit', result[13].value || 0, true);
               setState('Messwerte.0.Solaranlage.Momentanwerte.DC1Spannung', result[14].value || 0, true);
               setState('Messwerte.0.Solaranlage.Momentanwerte.DC2Spannung', result[15].value || 0, true);
               setState('Messwerte.0.Solaranlage.Momentanwerte.P1Strom', result[16].value || 0, true);
               setState('Messwerte.0.Solaranlage.Momentanwerte.P2Strom', result[17].value || 0, true);
               setState('Messwerte.0.Solaranlage.Momentanwerte.P1Leistung', result[18].value || 0, true);
               setState('Messwerte.0.Solaranlage.Momentanwerte.P2Leistung', result[19].value || 0, true);
               setState('Messwerte.0.Solaranlage.Momentanwerte.Status', result[20].value || 0, true);
               setState('Messwerte.0.Solaranlage.Momentanwerte.Leistung_String1', result[21].value || 0, true);
               setState('Messwerte.0.Solaranlage.Momentanwerte.Leistung_String2', result[22].value || 0, true);
           } else {
               log("Fehler: " + error + " bei Abfrage von: " + url, "warn");
           }
       });
    }
    
    //schedule("*/11 * 5-23 * * *", Piko);
    on('smartmeter.0.1-0:16_7_0__255.value', Piko); // triggert bei Wertänderung;
    
    

    kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

    Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

    der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

    SBorgS 1 Reply Last reply
    0
    • HomoranH Homoran

      ich habe in den letzten Tagen manchmal folgende Errormeldungen bekommen

      javascript.1
      	2024-04-13 08:32:16.541	error	Request error: Error: connect ETIMEDOUT 192.168.138.103:80
      javascript.1
      	2024-04-13 08:32:16.541	error	Error in request callback: ReferenceError: url is not defined
      javascript.1
      	2024-04-13 08:32:16.540	error	Request error: Error: connect ETIMEDOUT 192.168.138.103:80
      javascript.1
      	2024-04-13 08:32:16.540	error	Error in request callback: ReferenceError: url is not defined
      javascript.1
      	2024-04-13 08:32:16.540	error	Request error: Error: connect ETIMEDOUT 192.168.138.103:80
      javascript.1
      	2024-04-13 08:32:16.540	error	Error in request callback: ReferenceError: url is not defined
      javascript.1
      	2024-04-13 08:32:16.539	error	Request error: Error: connect ETIMEDOUT 192.168.138.103:80
      javascript.1
      	2024-04-13 08:32:16.539	error	Error in request callback: ReferenceError: url is not defined
      javascript.1
      	2024-04-13 08:32:16.539	error	Request error: Error: connect ETIMEDOUT 192.168.138.103:80
      javascript.1
      	2024-04-13 08:32:16.539	error	Error in request callback: ReferenceError: url is not defined
      javascript.1
      	2024-04-13 08:32:16.538	error	Request error: Error: connect ETIMEDOUT 192.168.138.103:80
      javascript.1
      	2024-04-13 08:32:16.538	error	Error in request callback: ReferenceError: url is not defined
      javascript.1
      	2024-04-13 08:32:16.537	error	Request error: Error: connect ETIMEDOUT 192.168.138.103:80
      javascript.1
      	2024-04-13 08:32:16.537	error	Error in request callback: ReferenceError: url is not defined
      javascript.1
      	2024-04-13 08:32:16.537	error	Request error: Error: connect ETIMEDOUT 192.168.138.103:80
      javascript.1
      	2024-04-13 08:32:16.537	error	Error in request callback: ReferenceError: url is not defined
      

      Die Dauer heute waren ca. 90msec aber bei 4 Meldungen pro msec knallt das das Log ganz schön voll.
      Ich nehme an, dass es sich um ein Script zum auslesen des Kostal Piko Wechselrichters handelt und es möglicherweise Probleme im Netzwerk gibt, welcher Art auch immer.
      Anders kann ich url is not defined nicht zuordnen.

      kann man das irgendwie abfangen.

      PS sobald ich es schaffe das Skript zu kopieren, poste ich es 😁

      // Ausleseskript Wechselrichter Kostal Piko ab Firmware v05.31 (12.10.2015)
      
      //Variable
      
      //Leistungswerte
         ID_DCEingangGesamt = 33556736;         // in W
         ID_Ausgangsleistung = 67109120;        // in W
         ID_Eigenverbrauch = 83888128;          // in W
         //Status
         ID_Status = 16780032;                  // 0:Off
         //Statistik - Tag
         ID_Ertrag_d = 251658754;               // in Wh
         ID_Hausverbrauch_d = 251659010;        // in Wh
         ID_Eigenverbrauch_d = 251659266;       // in Wh
         ID_Eigenverbrauchsquote_d = 251659278; // in %
         ID_Autarkiegrad_d = 251659279;         // in %
         //Statistik - Gesamt
         ID_Ertrag_G = 251658753;               // in kWh
         ID_Hausverbrauch_G = 251659009;        // in kWh
         ID_Eigenverbrauch_G = 251659265;       // in kWh
         ID_Eigenverbrauchsquote_G = 251659280; // in %
         ID_Autarkiegrad_G = 251659281;         // in %
         ID_Betriebszeit = 251658496;           // in h
         //Momentanwerte - PV Genertor
         ID_DC1Spannung = 33555202;             // in V
         ID_DC1Strom = 33555201;                // in A
         ID_DC1Leistung = 33555203;             // in W
         ID_DC2Spannung = 33555458;             // in V
         ID_DC2Strom = 33555457;                // in A
         ID_DC2Leistung = 33555459;             // in W
         //Momentanwerte Haus
         ID_HausverbrauchSolar = 83886336;      // in W
         ID_HausverbrauchBatterie = 83886592;   // in W
         ID_HausverbrauchNetz = 83886848;       // in W
         ID_HausverbrauchPhase1 = 83887106;     // in W
         ID_HausverbrauchPhase2 = 83887362;     // in W
         ID_HausverbrauchPhase3 = 83887618;     // in W
         //Netz Netzparameter
         ID_NetzAusgangLeistung = 67109120;     // in W
         ID_NetzFrequenz = 67110400;            // in Hz
         ID_NetzCosPhi = 67110656;
         //Netz Phase 1
         ID_P1Spannung = 67109378;              // in V
         ID_P1Strom = 67109377;                 // in A
         ID_P1Leistung = 67109379;              // in W
         //Netz Phase 2
         ID_P2Spannung = 67109634;              // in V
         ID_P2Strom = 67109633;                 // in A
         ID_P2Leistung = 67109635;              // in W
         //Netz Phase 3
         ID_P3Spannung = 67109890;              // in V
         ID_P3Strom = 67109889;                 // in A
         ID_P3Leistung = 67109891;              // in W
      
      
      
      var IPAnlage = '192.168.138.103/api/dxs.json';   // IP der Photovoltaik-Anlage
      
      
      
      createState('Messwerte.0.Solaranlage.Momentanwerte.Leistung_AC_aktuell', 0);
      createState('Messwerte.0.Solaranlage.Summenwerte.Autarkiegrad_d',0);
      createState('Messwerte.0.Solaranlage.Summenwerte.Autarkiegrad_G',0);
      createState('Messwerte.0.Solaranlage.Summenwerte.Betriebszeit',0);
      createState('Messwerte.0.Solaranlage.Momentanwerte.Leistung_DC_aktuell',0);
      createState('Messwerte.0.Solaranlage.Momentanwerte.Eigenverbrauch',0);
      createState('Messwerte.0.Solaranlage.Summenwerte.Eigenverbrauch_d');
      createState('Messwerte.0.Solaranlage.Summenwerte.Eigenverbrauch_G', 0);
      createState('Messwerte.0.Solaranlage.Summenwerte.Eigenverbrauchsquote_d', 0);
      createState('Messwerte.0.Solaranlage.Summenwerte.Eigenverbrauchsquote_G', 0);
      createState('Messwerte.0.Solaranlage.Summenwerte.Tagesertrag', 0);
      createState('Messwerte.0.Solaranlage.Summenwerte.Gesamtertrag', 0);
      createState('Messwerte.0.Solaranlage.Summenwerte.Hausverbrauch_d', 0);
      createState('Messwerte.0.Solaranlage.Summenwerte.Hausverbrauch_G', 0);
      createState('Messwerte.0.Solaranlage.Momentanwerte.DC1Spannung');
      createState('Messwerte.0.Solaranlage.Momentanwerte.DC1Strom');
      createState('Messwerte.0.Solaranlage.Momentanwerte.DC2Spannung');
      createState('Messwerte.0.Solaranlage.Momentanwerte.DC2Strom');
      createState('Messwerte.0.Solaranlage.Momentanwerte.P1Strom');
      createState('Messwerte.0.Solaranlage.Momentanwerte.P2Strom');
      createState('Messwerte.0.Solaranlage.Momentanwerte.P1Leistung');
      createState('Messwerte.0.Solaranlage.Momentanwerte.P2Leistung');
      
      
      var logging = false;
      var request = require('request');
      
      function Piko() {
         if (logging) log("Piko 5.5 auslesen");
         request('http://' + IPAnlage + 
         '?dxsEntries=' + ID_DCEingangGesamt +
         '&dxsEntries=' + ID_Ausgangsleistung +
         '&dxsEntries=' + ID_DC1Strom +
         '&dxsEntries=' + ID_DC2Strom +
         '&dxsEntries=' + ID_Eigenverbrauch_G +
         '&dxsEntries=' + ID_Eigenverbrauchsquote_d +
         '&dxsEntries=' + ID_Eigenverbrauchsquote_G +
         '&dxsEntries=' + ID_Ertrag_d +
         '&dxsEntries=' + ID_Ertrag_G +
         '&dxsEntries=' + ID_Hausverbrauch_d +
         '&dxsEntries=' + ID_Hausverbrauch_G +
         '&dxsEntries=' + ID_Autarkiegrad_G +
         '&dxsEntries=' + ID_Autarkiegrad_d +
         '&dxsEntries=' + ID_Betriebszeit +
         '&dxsEntries=' + ID_DC1Spannung +
         '&dxsEntries=' + ID_DC2Spannung +
         '&dxsEntries=' + ID_P1Strom +
         '&dxsEntries=' + ID_P2Strom +
         '&dxsEntries=' + ID_P1Leistung +
         '&dxsEntries=' + ID_P2Leistung +
         '&dxsEntries=' + ID_Status +
         '&dxsEntries=' + ID_DC1Leistung +
         '&dxsEntries=' + ID_DC2Leistung,
         
         function (error, response, body) {
             if(!error && response.statusCode ==200) {
                 if(logging) log(body);
                 var result = JSON.parse(body).dxsEntries;
                 setState('Messwerte.0.Solaranlage.Momentanwerte.Leistung_DC_aktuell', result[0].value || 0, true);
                 setState('Messwerte.0.Solaranlage.Momentanwerte.Leistung_AC_aktuell', result[1].value || 0, true);
                 setState('Messwerte.0.Solaranlage.Momentanwerte.DC1Strom', result[2].value || 0, true);
                 setState('Messwerte.0.Solaranlage.Momentanwerte.DC2Strom', result[3].value || 0, true);
                 setState('Messwerte.0.Solaranlage.Summenwerte.Eigenverbrauch_G', result[4].value || 0, true);
                 setState('Messwerte.0.Solaranlage.Summenwerte.Eigenverbrauchsquote_d', result[5].value || 0, true);
                 setState('Messwerte.0.Solaranlage.Summenwerte.Eigenverbrauchsquote_G', result[6].value || 0, true);
                 setState('Messwerte.0.Solaranlage.Summenwerte.Tagesertrag', result[7].value || 0, true);
                 setState('Messwerte.0.Solaranlage.Summenwerte.Gesamtertrag', result[8].value || 0, true);
                 setState('Messwerte.0.Solaranlage.Summenwerte.Hausverbrauch_d', result[9].value || 0, true);
                 setState('Messwerte.0.Solaranlage.Summenwerte.Hausverbrauch_G', result[10].value || 0, true);
                 setState('Messwerte.0.Solaranlage.Summenwerte.Autarkiegrad_G', result[11].value || 0, true);
                 setState('Messwerte.0.Solaranlage.Summenwerte.Autarkiegrad_d', result[12].value || 0, true);
                 setState('Messwerte.0.Solaranlage.Summenwerte.Betriebszeit', result[13].value || 0, true);
                 setState('Messwerte.0.Solaranlage.Momentanwerte.DC1Spannung', result[14].value || 0, true);
                 setState('Messwerte.0.Solaranlage.Momentanwerte.DC2Spannung', result[15].value || 0, true);
                 setState('Messwerte.0.Solaranlage.Momentanwerte.P1Strom', result[16].value || 0, true);
                 setState('Messwerte.0.Solaranlage.Momentanwerte.P2Strom', result[17].value || 0, true);
                 setState('Messwerte.0.Solaranlage.Momentanwerte.P1Leistung', result[18].value || 0, true);
                 setState('Messwerte.0.Solaranlage.Momentanwerte.P2Leistung', result[19].value || 0, true);
                 setState('Messwerte.0.Solaranlage.Momentanwerte.Status', result[20].value || 0, true);
                 setState('Messwerte.0.Solaranlage.Momentanwerte.Leistung_String1', result[21].value || 0, true);
                 setState('Messwerte.0.Solaranlage.Momentanwerte.Leistung_String2', result[22].value || 0, true);
             } else {
                 log("Fehler: " + error + " bei Abfrage von: " + url, "warn");
             }
         });
      }
      
      //schedule("*/11 * 5-23 * * *", Piko);
      on('smartmeter.0.1-0:16_7_0__255.value', Piko); // triggert bei Wertänderung;
      
      

      SBorgS Offline
      SBorgS Offline
      SBorg
      Forum Testing Most Active
      wrote on last edited by
      #2

      @homoran sagte in Errormeldungen abfangen:

      kann man das irgendwie abfangen.

      Selbstverfreilich 🙂

      "try + catch" um deinen "request" (ev. gleich auch auf axios umbauen 😉 ) bauen

      try {
      
        // code...
      
      } catch (err) {
      
        // error handling
      
      }
      

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

      HomoranH 2 Replies Last reply
      0
      • SBorgS SBorg

        @homoran sagte in Errormeldungen abfangen:

        kann man das irgendwie abfangen.

        Selbstverfreilich 🙂

        "try + catch" um deinen "request" (ev. gleich auch auf axios umbauen 😉 ) bauen

        try {
        
          // code...
        
        } catch (err) {
        
          // error handling
        
        }
        
        HomoranH Offline
        HomoranH Offline
        Homoran
        Global Moderator Administrators
        wrote on last edited by Homoran
        #3

        @sborg 😢

        isch kann koi Jawa

        Das Script hat mir jemand geschrieben

        EDIT
        verursacht das gezeigte Script überhaupt den Fehler?

        ist url bei "url is not defined" nicht möglicherweise eine variable?
        die ist hier in meinen Augen tatsächlich nicht definiert,

        else {
                   log("Fehler: " + error + " bei Abfrage von: " + url, "warn");
        

        habe aber gerade noch ein zweites Script gefunden das auf den WR zugreift (auch nicht von mir, sondern einem freundlichen Helfer)

        kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

        Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

        der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

        1 Reply Last reply
        0
        • SBorgS SBorg

          @homoran sagte in Errormeldungen abfangen:

          kann man das irgendwie abfangen.

          Selbstverfreilich 🙂

          "try + catch" um deinen "request" (ev. gleich auch auf axios umbauen 😉 ) bauen

          try {
          
            // code...
          
          } catch (err) {
          
            // error handling
          
          }
          
          HomoranH Offline
          HomoranH Offline
          Homoran
          Global Moderator Administrators
          wrote on last edited by
          #4

          @sborg
          hier wäre das zweite Script

          var domain = '192.168.138.103'; // domain or ip without http:// or https:// 
          var url = '/api/dxs.json';
          var datenpunkt = '0_userdata.0.Solaranlage.Info';
          //var datenpunkt = 'javascript.0.info';
          
          var msgs = [
          {"code":"3000","type":"Störung Updateprozess","description":"Interne Systemstörung","action":"Update des Wechselrichters durchführen."},
          {"code":"3003","type":"Interne Kommunikationsstörung","description":"Interne Kommunikationsstörung","action":"zwischen Netzüberwachung und Steuerung Internen Kommunikationsleitungen zwischen den einzelnen Leiterplatten kontrollieren"},
          {"code":"3006","type":"Interne Systemstörung ","description":"Interne Systemstörung bzgl. Leistungsabregelung","action":"Gerät führt mehrfach eine Prüfung durch und schaltet generell auf. Support"},
          {"code":"3010","type":"Interne Kommunikationsstörung","description":"Interne Kommunikationsstörung","action":"zwischen Steuerung und Kommunkationsplatine Kontrollieren Sie die Uhrzeiteinstellung, Funktionalität der Kommunikationsplatine und weiterer Kommunikationseinstellungen. Wechselrichter schaltet trotz fehlerhaftem Zeitstempel auf"},
          {"code":"3011","type":"Interne Temperaturstörung","description":"Interne Systemstörung","action":"Support"},
          {"code":"3012","type":"Störung Varistor","description":"DC-Varistor defekt","action":"Defekten Varistor tauschen"},
          {"code":"3013","type":"Interne Temperaturstörung","description":"Übertemperatur AC/DC an Leistungsstufe","action":"Installationsbedingungen und Lüfter kontrollieren"},
          {"code":"3014","type":"Interne Temperaturstörung","description":"Übertemperatur Prozessor","action":"Installationsbedingungen und Lüfter kontrollieren"},
          {"code":"3017","type":"Externe Generatorstörung","description":"Überspannung am PV-Generator","action":"Generatorinstallation/ -auslegung kontrollieren"},
          {"code":"3018","type":"Information","description":"Leistungsabregelung durch externe Vorgaben (Netzbetreiber)","action":"Keine Maßnahme notwendig"},
          {"code":"3019","type":"Externe Netzstörung","description":"Leistungsabregelung aufgrund eines Netzfehlers (erhöhte Netzfrequenz)","action":"Support"},
          {"code":"3020","type":"Externe Generatorstörung","description":"Überstrom am PV-Generator","action":"Generatorinstallation/ -auslegung kontrollieren"},
          {"code":"3021","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Support"},
          {"code":"3022","type":"Externe Generatorstörung","description":"Überspannung am PV-Generator","action":"Generatorinstallation/ -auslegung kontrollieren"},
          {"code":"3023","type":"Externe Generatorstörung","description":"Überstrom am PV-Generator","action":"Generatorinstallation/ -auslegung kontrollieren"},
          {"code":"3024","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Support"},
          {"code":"3025","type":"Externe Generatorstörung","description":"Überspannung am PV-Generator","action":"Generatorinstallation/ -auslegung kontrollieren"},
          {"code":"3026","type":"Externe Generatorstörung","description":"Überstrom am PV-Generator","action":"Generatorinstallation/ -auslegung kontrollieren"},
          {"code":"3027","type":"Interne Temperaturstörung","description":"Interne Systemstörung","action":"Support"},
          {"code":"3028","type":"Externe Generatorstörung","description":"Überspannung am PV-Generator","action":"Generatorinstallation/ -auslegung kontrollieren"},
          {"code":"3029","type":"Externe Generatorstörung","description":"Überstrom am PV-Generator","action":"Generatorinstallation/ -auslegung kontrollieren"},
          {"code":"3030","type":"Interne Temperaturstörung","description":"Übertemperatur AC/DC an Leistungsstufe","action":"Installationsbedingungen und Lüfter kontrollieren"},
          {"code":"3031","type":"Interne Systemstörung ","description":"Interne AC-Systemstörung","action":"Gerät führt mehrfach Prüfung durch und schaltet generell auf"},
          {"code":"3032","type":"Externe Generatorstörung","description":"Überstrom am PV-Generator","action":"Generatorinstallation/ -auslegung kontrollieren"},
          {"code":"3033","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Support"},
          {"code":"3034","type":"Interne Systemstörung ","description":"Interner Zwischenkreisfehler","action":"Das Gerät neu starten"},
          {"code":"3035","type":"Interne Systemstörung ","description":"Interner Zwischenkreisfehler","action":"Das Gerät neu starten"},
          {"code":"3036","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Support kontaktieren"},
          {"code":"3037","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Support kontaktieren"},
          {"code":"3038","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Support kontaktieren"},
          {"code":"3039","type":"Interne Parametrierungsstörung","description":"Interne Systemstörung","action":"Support kontaktieren"},
          {"code":"3045","type":"Interne Systemstörung ","description":"Interne AC-Systemstörung","action":"Gerät führt mehrfach Prüfung durch und schaltet generell auf"},
          {"code":"3046","type":"Interne Systemstörung ","description":"Interne AC-Systemstörung","action":"Gerät führt mehrfach Prüfung durch und schaltet generell auf"},
          {"code":"3047","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Support"},
          {"code":"3048","type":"Interne Kommunikationsstörung","description":"Interner Kommunikationsfehler","action":"Kontrollieren Sie die internen Kommunikationsleitungen zwischen den einzelnen Leiterplatten"},
          {"code":"3049","type":"Interne Kommunikationsstörung","description":"Interner Kommunikationsfehler","action":"Kontrollieren Sie die internen Kommunikationsleitungen zwischen den einzelnen Leiterplatten"},
          {"code":"3050","type":"Interne Kommunikationsstörung","description":"Interner Kommunikationsfehler","action":"Kontrollieren Sie die internen Kommunikationsleitungen zwischen den einzelnen Leiterplatten"},
          {"code":"3051","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Support"},
          {"code":"3052","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Support"},
          {"code":"3053","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Support"},
          {"code":"3054","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Support"},
          {"code":"3055","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Das Gerät neu starten"},
          {"code":"3056","type":"Interne Parametrierungsstörung","description":"Interne Systemstörung","action":"Support kontaktieren"},
          {"code":"3057","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Generatorinstallation/ -auslegung kontrollieren"},
          {"code":"3059","type":"Interne Parametrierungsstörung","description":"Falsche Parametrierung","action":"Ggf. falsche Ländereinstellung. Support kontaktieren"},
          {"code":"3060","type":"Interne Parametrierungsstörung","description":"Falsche Parametrierung","action":"Support kontaktiere"},
          {"code":"3061","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Keine Maßnahme notwendig"},
          {"code":"3062","type":"Interne Temperaturstörung","description":"Interne Systemstörung","action":"Keine Maßnahme notwendig"},
          {"code":"3063","type":"Interne Parametrierungsstörung","description":"Interne Systemstörung","action":"Support kontaktieren"},
          {"code":"3064","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Keine Maßnahme notwendig"},
          {"code":"3065","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Keine Maßnahme notwendig"},
          {"code":"3066","type":"Interne Parametrierungsstörung","description":"Interne Systemstörung","action":"Support kontaktiere"},
          {"code":"3068","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Das Gerät neu starten"},
          {"code":"3070","type":"Interne Systemstörung ","description":"Interne AC-Systemstörung","action":"Gerät führt mehrfach eine Prüfung durch und schaltet generell auf"},
          {"code":"3071","type":"Interne Systemstörung ","description":"Interne AC-Systemstörung","action":"Gerät führt mehrfach eine Prüfung durch und schaltet generell auf"},
          {"code":"3072","type":"Interne Systemstörung ","description":"Interne AC-Systemstörung","action":"Gerät führt mehrfach eine Prüfung durch und schaltet generell auf"},
          {"code":"3073","type":"Interne Systemstörung ","description":"Interne AC-Systemstörung","action":"Gerät führt mehrfach eine Prüfung durch und schaltet generell auf"},
          {"code":"3074","type":"Interne Systemstörung ","description":"Interne AC-Systemstörung","action":"Gerät führt mehrfach eine Prüfung durch und schaltet generell auf"},
          {"code":"3075","type":"Interne Systemstörung ","description":"Interne AC-Systemstörung","action":"Gerät führt mehrfach eine Prüfung durch und schaltet generell auf"},
          {"code":"3076","type":"Interne Systemstörung ","description":"Interne AC-Systemstörung","action":"Die AC-Spannung ist gegebenenfalls zu niedrig"},
          {"code":"3079","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Das Gerät neu starten"},
          {"code":"3080","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Das Gerät neu starten"},
          {"code":"3082","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Support kontaktieren"},
          {"code":"3083","type":"Information","description":"Interne Systemstörung","action":"Keine Maßnahme notwendig1"},
          {"code":"3084","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Support kontaktieren"},
          {"code":"3085","type":"Interne Temperaturstörung","description":"Übertemperatur Prozessor","action":"Installationsbedingungen und Lüfter kontrollieren1 "},
          {"code":"3086","type":"Information","description":"Leistungsabregelung aufgrund eines Netzfehlers (erhöhte AC-Spannung)","action":"Support"},
          {"code":"3087","type":"Interne Systemstörung ","description":"Interner Systemfehler","action":"Support kontaktieren"},
          {"code":"3088","type":"Interne Systemstörung ","description":"Lüftereinheit verschmutzt","action":"Lüftereinheit reinigen"},
          {"code":"3089","type":"Interne Systemstörung ","description":"Lüftereinheit verschmutzt","action":"Lüftereinheit reinigen"},
          {"code":"3090","type":"Interne Systemstörung ","description":"Interner Systemfehler","action":"Support kontaktieren"},
          {"code":"3091","type":"Interne Systemstörung ","description":"Lüfter nicht korrekt angeschlossen","action":"Lüfter-Steckverbindungen prüfe"},
          {"code":"3092","type":"Interne Systemstörung ","description":"Lüfter nicht korrekt angeschlossen","action":"Lüfter-Steckverbindungen prüfe"},
          {"code":"3093","type":"Interne Parametrierungsstörung","description":"Falsche Parametrierung","action":"Support kontaktiere"},
          {"code":"3094","type":"Interne Parametrierungsstörung","description":"Falsche Parametrierung","action":"Support kontaktiere"},
          {"code":"3095","type":"Interne Parametrierungsstörung","description":"Falsche Kalibrierung","action":"Support kontaktiere"},
          {"code":"3096","type":"Information","description":"Falsche Dimensionierung der PV-Generator","action":"Generatorinstallation/ -auslegung kontrolliere"},
          {"code":"3097","type":"Interne Parametrierungsstörung","description":"Falsche Parametrierung","action":"Support kontaktiere"},
          {"code":"3098","type":"Information","description":"Netz nicht vorhanden","action":"Keine Maßnahme notwendig"},
          {"code":"3101","type":"Information","description":"Interne Systemstörung","action":"Keine Maßnahme notwendig"},
          {"code":"3102","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Keine Maßnahme notwendig"},
          {"code":"3103","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Keine Maßnahme notwendig"},
          {"code":"3104","type":"Interne Systemstörung ","description":"Interne AC-Systemstörung","action":"Gerät führt mehrfach eine Prüfung durch und schaltet generell auf"},
          {"code":"3105","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Keine Maßnahme notwendig"},
          {"code":"3106","type":"Information","description":"Falsche Eingabe am KomBoard oder falsche Verdrahtung","action":"Eingabe oder Verdrahtung korriegieren"},
          {"code":"4100","type":"Interne Systemstörung ","description":"Interner Softwarefehler","action":"Support"},
          {"code":"4101","type":"Interne Systemstörung ","description":"Erhöhter DC-Strom L1","action":"Support"},
          {"code":"4102","type":"Interne Systemstörung ","description":"Erhöhter DC-Strom L2","action":"Support"},
          {"code":"4103","type":"Interne Systemstörung ","description":"Erhöhter DC-Strom L3","action":"Support"},
          {"code":"4104","type":"Interne Systemstörung ","description":"Erhöhter DC-Strom L1","action":"Support"},
          {"code":"4105","type":"Interne Systemstörung ","description":"Erhöhter DC-Strom L2","action":"Support"},
          {"code":"4106","type":"Interne Systemstörung ","description":"Erhöhter DC-Strom L3","action":"Support"},
          {"code":"4110","type":"Interne Systemstörung ","description":"Interner Softwarefehler","action":"Support"},
          {"code":"4121","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Support"},
          {"code":"4122","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Support"},
          {"code":"4130","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Support"},
          {"code":"4131","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Support"},
          {"code":"4150","type":"Information","description":"Erhöhte Netzfrequenz. Oft gehäuftes Auftreten am Morgen und am Abend.","action":"Installation kontrollieren"},
          {"code":"4151","type":"Externe Netzstörung","description":"Zu niedrige Netzfrequenz","action":"Installation kontrollieren"},
          {"code":"4157","type":"Externe Netzstörung","description":"Erhöhte Netzfrequenz","action":"Keine Maßnahme notwendig"},
          {"code":"4158","type":"Externe Netzstörung","description":"Erhöhte Netzfrequenz","action":"Installation kontrollieren"},
          {"code":"4159","type":"Externe Netzstörung","description":"Erhöhte Netzfrequenz","action":"Installation kontrollieren"},
          {"code":"4160","type":"Externe Netzstörung","description":"Erhöhte Netzfrequenz","action":"Installation kontrollieren"},
          {"code":"4161","type":"Externe Netzstörung","description":"Zu niedrige Netzfrequenz","action":"Installation kontrollieren"},
          {"code":"4170","type":"Information","description":"Eine Phase ist nicht angeschlossen. Ein Sicherungsautomat wurde nicht eingeschaltet.","action":"Installation kontrollieren"},
          {"code":"4180","type":"Externe Netzstörung","description":"PE-Leitung nicht angeschlossen","action":"Installation kontrollieren"},
          {"code":"4181","type":"Externe Netzstörung","description":"PE-Leitung nicht angeschlossen","action":"Installation kontrollieren "},
          {"code":"4185","type":"Interne Systemstörung ","description":"Interner Softwarefehler","action":"Support1 "},
          {"code":"4200","type":"Externe Netzstörung","description":"Erhöhte Netzspannung","action":"Installation kontrollieren "},
          {"code":"4201","type":"Externe Netzstörung","description":"Zu niedrige Netzspannung","action":"Installation kontrollieren "},
          {"code":"4210","type":"Externe Netzstörung","description":"Erhöhte Netzspannung","action":"Installation kontrollieren "},
          {"code":"4211","type":"Externe Netzstörung","description":"Zu niedrige Netzspannung","action":"Installation kontrollieren "},
          {"code":"4220","type":"Externe Netzstörung","description":"Spannungsmittelwert der letzten 10 Min. zu groß","action":"Installation kontrollieren "},
          {"code":"4221","type":"Externe Netzstörung","description":"Spannungsmittelwert der letzten 10 Min. zu groß","action":"Installation kontrollieren "},
          {"code":"4290","type":"Externe Netzstörung","description":"Die Netzfrequenz hat sich zu schnell verändert.","action":"Generatorinstallation kontrollieren "},
          {"code":"4300","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Support"},
          {"code":"4301","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Support"},
          {"code":"4302","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Support"},
          {"code":"4303","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Support"},
          {"code":"4304","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Support"},
          {"code":"4321","type":"Interne Parametrierungsstörung","description":"Defektes EEPROM unerlaubte Speicherzugriffe","action":"Support"},
          {"code":"4322","type":"Interne Parametrierungsstörung","description":"Softwarefehler","action":"Support kontaktieren"},
          {"code":"4323","type":"Interne Parametrierungsstörung","description":"Fehlerstrom","action":"Support"},
          {"code":"4324","type":"Interne Parametrierungsstörung","description":"Parameterfehler","action":"Support"},
          {"code":"4325","type":"Interne Parametrierungsstörung","description":"Parameterfehler","action":"Support"},
          {"code":"4340","type":"-","description":"","action":""},
          {"code":"4354","type":"Externer Fehlerstrom","description":"Fehlerstrom","action":"Generatorinstallation kontrollieren "},
          {"code":"4360","type":"-","description":"","action":""},
          {"code":"4421","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Support "},
          {"code":"4422","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Support kontaktieren. "},
          {"code":"4424","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Support"},
          {"code":"4425","type":"Interne Parametrierungsstörung","description":"Parameterfehler","action":"Support "},
          {"code":"4450","type":"Externe Isolationsfehler","description":"Isolationsfehler","action":"Generatorinstallation kontrollieren "},
          {"code":"4451","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Support kontaktieren "},
          {"code":"4475","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Support "},
          {"code":"4476","type":"Information","description":"Schwache PV-Versorgung (z.B. morgens)","action":"Keine Maßnahme notwendig "},
          {"code":"4800","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Support "},
          {"code":"4801","type":"Interne Systemstörung ","description":"Isolationsfehler","action":"Support "},
          {"code":"4802","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Support "},
          {"code":"4803","type":"Interne Systemstörung ","description":"Isolationsfehler","action":"Support "},
          {"code":"4804","type":"Interne Systemstörung ","description":"Isolationsfehler","action":"Support "},
          {"code":"4805","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Support "},
          {"code":"4810","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Support "},
          {"code":"4850","type":"Interne Systemstörung ","description":"EVU","action":"Support "},
          {"code":"4870","type":"-","description":"","action":""},
          {"code":"7500","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Support "},
          {"code":"7503","type":"Information","description":"Interne Systemstörung","action":"Keine Maßnahme notwendig"}
          ];
          
          
          
          function getEvents() {
            //log('getEvents');
            var keys = [];
            var key1 = 234881792;
            var key2 = 234881537;  
            keys.push(key1);
            for (var i=0;i<10;i++) {
                keys.push(key2+i);
            }
          
            pikorequest(keys, function(response){
                //log('events: '+ JSON.stringify(response));
                var item,len;
                var msga = [];
                if (typeof response === 'string') response = JSON.parse(response);
                item = getResponseId(response,234881792);
                len = item.value;
                for (var i=0;i<len;i++) {
                    item = getResponseId(response,234881537+i);
                    var d,date,code,env;
                    d = item.value;
                    date = timeConverter((d[0] << 0) + (d[1] << 8) + (d[2] << 16) + (d[3] << 24));
                    code = (d[4] << 0) + (d[5] << 8);
                    env = ("0000"+((d[6] << 0) + (d[7] << 8)).toString(16)).toLocaleUpperCase().substr(-4,4)+'h';
                    var msg = msgs.find(item => item.code==code);
                    msg.date=date;
                    var msgtext = 'Code: '+msg.code+' Typ: '+msg.type+' Beschreibung: '+msg.description+' Maßnahme: '+msg.action
                    //log('message' + i+1 + ': ' + date + ' '  + code + ' '  + env + ' '+msgtext);
                    //log("Datenpunkt: "+ datenpunkt+i + " Fehlermeldung: " + msgtext + true/*ack*/);
                    setState(datenpunkt+i,`[` + JSON.stringify(msg) +`]`, true/*ack*/);
                 msga.push(JSON.parse(JSON.stringify(msg)));           
                }
                setState(datenpunkt, JSON.stringify(msga) , true/*ack*/);
             });
          }
          
          function pikorequest(keys,callback) {
            //log('pikorequest');
            if (keys.length==0) {
                //log('request error: No keys ');
                return;     
            }
          
            var query = '';
          
            for (var i = 0; i < keys.length; i++) { 
                query += '&dxsEntries=' + keys[i];
            }
          
            var req_url = 'http://' + domain + url + '?sessionid=iobroker' + query;
            //log ('query: '+req_url);
          
            request(
                { method: 'GET',
                uri: req_url,
                }
            , function (error, response, body) {
                        //log('error: ' + error);
                        //log('Status: '+ response.statusCode);
                        //log('response: '+ JSON.stringify(response));
                        //response.body = '{"dxsEntries":[{"dxsId":234881792,"value":1},{"dxsId":234881537,"value":[207,217,88,94,63,16,2,0]},{"dxsId":234881538,"value":[0,0,0,0,0,0,0,0]},{"dxsId":234881539,"value":[0,0,0,0,0,0,0,0]},{"dxsId":234881540,"value":[0,0,0,0,0,0,0,0]},{"dxsId":234881541,"value":[0,0,0,0,0,0,0,0]},{"dxsId":234881542,"value":[0,0,0,0,0,0,0,0]},{"dxsId":234881543,"value":[0,0,0,0,0,0,0,0]},{"dxsId":234881544,"value":[0,0,0,0,0,0,0,0]},{"dxsId":234881545,"value":[0,0,0,0,0,0,0,0]},{"dxsId":234881546,"value":[0,0,0,0,0,0,0,0]}],"session":{"sessionId":0,"roleId":0},"status":{"code":0}}';
                        //response.statusCode = 200;
                        //error = false;
          
                    if (!error && response.statusCode == 200) {
                        //log('request ok: ');
                        //log('Status: '+ response.statusCode);
                        //log('response: '+ JSON.stringify(response));
                        callback(response.body);
                    } else {
                        log('request nok: ');
                        //log('Status: '+ response.statusCode);
                        //log('error: ' + error);
                    }
                }
            );
          }
          function getResponseId(response,id) {
            return response.dxsEntries.find( item => item.dxsId === id );
          }
          function timeConverter(UNIX_timestamp){
          var a = new Date(UNIX_timestamp * 1000);
          var months = ['Jan','Feb','Mar','Apr','May','Jun','Jul','Aug','Sep','Oct','Nov','Dec'];
          var year = a.getFullYear();
          var month = months[a.getMonth()];
          var date = a.getDate();
          var hour = ('0'+a.getHours()).slice(-2);
          var min = ('0'+a.getMinutes()).slice(-2);
          var sec = ('0'+a.getSeconds()).slice(-2);
          var time = date + ' ' + month + ' ' + year + ' ' + hour + ':' + min + ':' + sec ;
          return time;
          log (time);
          }
          schedule("* * * * *", getEvents);
          
          

          auch hier ist eine Variable url, die sollte aber definiert sein

          kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

          Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

          der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

          SBorgS 1 Reply Last reply
          0
          • HomoranH Homoran

            @sborg
            hier wäre das zweite Script

            var domain = '192.168.138.103'; // domain or ip without http:// or https:// 
            var url = '/api/dxs.json';
            var datenpunkt = '0_userdata.0.Solaranlage.Info';
            //var datenpunkt = 'javascript.0.info';
            
            var msgs = [
            {"code":"3000","type":"Störung Updateprozess","description":"Interne Systemstörung","action":"Update des Wechselrichters durchführen."},
            {"code":"3003","type":"Interne Kommunikationsstörung","description":"Interne Kommunikationsstörung","action":"zwischen Netzüberwachung und Steuerung Internen Kommunikationsleitungen zwischen den einzelnen Leiterplatten kontrollieren"},
            {"code":"3006","type":"Interne Systemstörung ","description":"Interne Systemstörung bzgl. Leistungsabregelung","action":"Gerät führt mehrfach eine Prüfung durch und schaltet generell auf. Support"},
            {"code":"3010","type":"Interne Kommunikationsstörung","description":"Interne Kommunikationsstörung","action":"zwischen Steuerung und Kommunkationsplatine Kontrollieren Sie die Uhrzeiteinstellung, Funktionalität der Kommunikationsplatine und weiterer Kommunikationseinstellungen. Wechselrichter schaltet trotz fehlerhaftem Zeitstempel auf"},
            {"code":"3011","type":"Interne Temperaturstörung","description":"Interne Systemstörung","action":"Support"},
            {"code":"3012","type":"Störung Varistor","description":"DC-Varistor defekt","action":"Defekten Varistor tauschen"},
            {"code":"3013","type":"Interne Temperaturstörung","description":"Übertemperatur AC/DC an Leistungsstufe","action":"Installationsbedingungen und Lüfter kontrollieren"},
            {"code":"3014","type":"Interne Temperaturstörung","description":"Übertemperatur Prozessor","action":"Installationsbedingungen und Lüfter kontrollieren"},
            {"code":"3017","type":"Externe Generatorstörung","description":"Überspannung am PV-Generator","action":"Generatorinstallation/ -auslegung kontrollieren"},
            {"code":"3018","type":"Information","description":"Leistungsabregelung durch externe Vorgaben (Netzbetreiber)","action":"Keine Maßnahme notwendig"},
            {"code":"3019","type":"Externe Netzstörung","description":"Leistungsabregelung aufgrund eines Netzfehlers (erhöhte Netzfrequenz)","action":"Support"},
            {"code":"3020","type":"Externe Generatorstörung","description":"Überstrom am PV-Generator","action":"Generatorinstallation/ -auslegung kontrollieren"},
            {"code":"3021","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Support"},
            {"code":"3022","type":"Externe Generatorstörung","description":"Überspannung am PV-Generator","action":"Generatorinstallation/ -auslegung kontrollieren"},
            {"code":"3023","type":"Externe Generatorstörung","description":"Überstrom am PV-Generator","action":"Generatorinstallation/ -auslegung kontrollieren"},
            {"code":"3024","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Support"},
            {"code":"3025","type":"Externe Generatorstörung","description":"Überspannung am PV-Generator","action":"Generatorinstallation/ -auslegung kontrollieren"},
            {"code":"3026","type":"Externe Generatorstörung","description":"Überstrom am PV-Generator","action":"Generatorinstallation/ -auslegung kontrollieren"},
            {"code":"3027","type":"Interne Temperaturstörung","description":"Interne Systemstörung","action":"Support"},
            {"code":"3028","type":"Externe Generatorstörung","description":"Überspannung am PV-Generator","action":"Generatorinstallation/ -auslegung kontrollieren"},
            {"code":"3029","type":"Externe Generatorstörung","description":"Überstrom am PV-Generator","action":"Generatorinstallation/ -auslegung kontrollieren"},
            {"code":"3030","type":"Interne Temperaturstörung","description":"Übertemperatur AC/DC an Leistungsstufe","action":"Installationsbedingungen und Lüfter kontrollieren"},
            {"code":"3031","type":"Interne Systemstörung ","description":"Interne AC-Systemstörung","action":"Gerät führt mehrfach Prüfung durch und schaltet generell auf"},
            {"code":"3032","type":"Externe Generatorstörung","description":"Überstrom am PV-Generator","action":"Generatorinstallation/ -auslegung kontrollieren"},
            {"code":"3033","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Support"},
            {"code":"3034","type":"Interne Systemstörung ","description":"Interner Zwischenkreisfehler","action":"Das Gerät neu starten"},
            {"code":"3035","type":"Interne Systemstörung ","description":"Interner Zwischenkreisfehler","action":"Das Gerät neu starten"},
            {"code":"3036","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Support kontaktieren"},
            {"code":"3037","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Support kontaktieren"},
            {"code":"3038","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Support kontaktieren"},
            {"code":"3039","type":"Interne Parametrierungsstörung","description":"Interne Systemstörung","action":"Support kontaktieren"},
            {"code":"3045","type":"Interne Systemstörung ","description":"Interne AC-Systemstörung","action":"Gerät führt mehrfach Prüfung durch und schaltet generell auf"},
            {"code":"3046","type":"Interne Systemstörung ","description":"Interne AC-Systemstörung","action":"Gerät führt mehrfach Prüfung durch und schaltet generell auf"},
            {"code":"3047","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Support"},
            {"code":"3048","type":"Interne Kommunikationsstörung","description":"Interner Kommunikationsfehler","action":"Kontrollieren Sie die internen Kommunikationsleitungen zwischen den einzelnen Leiterplatten"},
            {"code":"3049","type":"Interne Kommunikationsstörung","description":"Interner Kommunikationsfehler","action":"Kontrollieren Sie die internen Kommunikationsleitungen zwischen den einzelnen Leiterplatten"},
            {"code":"3050","type":"Interne Kommunikationsstörung","description":"Interner Kommunikationsfehler","action":"Kontrollieren Sie die internen Kommunikationsleitungen zwischen den einzelnen Leiterplatten"},
            {"code":"3051","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Support"},
            {"code":"3052","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Support"},
            {"code":"3053","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Support"},
            {"code":"3054","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Support"},
            {"code":"3055","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Das Gerät neu starten"},
            {"code":"3056","type":"Interne Parametrierungsstörung","description":"Interne Systemstörung","action":"Support kontaktieren"},
            {"code":"3057","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Generatorinstallation/ -auslegung kontrollieren"},
            {"code":"3059","type":"Interne Parametrierungsstörung","description":"Falsche Parametrierung","action":"Ggf. falsche Ländereinstellung. Support kontaktieren"},
            {"code":"3060","type":"Interne Parametrierungsstörung","description":"Falsche Parametrierung","action":"Support kontaktiere"},
            {"code":"3061","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Keine Maßnahme notwendig"},
            {"code":"3062","type":"Interne Temperaturstörung","description":"Interne Systemstörung","action":"Keine Maßnahme notwendig"},
            {"code":"3063","type":"Interne Parametrierungsstörung","description":"Interne Systemstörung","action":"Support kontaktieren"},
            {"code":"3064","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Keine Maßnahme notwendig"},
            {"code":"3065","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Keine Maßnahme notwendig"},
            {"code":"3066","type":"Interne Parametrierungsstörung","description":"Interne Systemstörung","action":"Support kontaktiere"},
            {"code":"3068","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Das Gerät neu starten"},
            {"code":"3070","type":"Interne Systemstörung ","description":"Interne AC-Systemstörung","action":"Gerät führt mehrfach eine Prüfung durch und schaltet generell auf"},
            {"code":"3071","type":"Interne Systemstörung ","description":"Interne AC-Systemstörung","action":"Gerät führt mehrfach eine Prüfung durch und schaltet generell auf"},
            {"code":"3072","type":"Interne Systemstörung ","description":"Interne AC-Systemstörung","action":"Gerät führt mehrfach eine Prüfung durch und schaltet generell auf"},
            {"code":"3073","type":"Interne Systemstörung ","description":"Interne AC-Systemstörung","action":"Gerät führt mehrfach eine Prüfung durch und schaltet generell auf"},
            {"code":"3074","type":"Interne Systemstörung ","description":"Interne AC-Systemstörung","action":"Gerät führt mehrfach eine Prüfung durch und schaltet generell auf"},
            {"code":"3075","type":"Interne Systemstörung ","description":"Interne AC-Systemstörung","action":"Gerät führt mehrfach eine Prüfung durch und schaltet generell auf"},
            {"code":"3076","type":"Interne Systemstörung ","description":"Interne AC-Systemstörung","action":"Die AC-Spannung ist gegebenenfalls zu niedrig"},
            {"code":"3079","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Das Gerät neu starten"},
            {"code":"3080","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Das Gerät neu starten"},
            {"code":"3082","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Support kontaktieren"},
            {"code":"3083","type":"Information","description":"Interne Systemstörung","action":"Keine Maßnahme notwendig1"},
            {"code":"3084","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Support kontaktieren"},
            {"code":"3085","type":"Interne Temperaturstörung","description":"Übertemperatur Prozessor","action":"Installationsbedingungen und Lüfter kontrollieren1 "},
            {"code":"3086","type":"Information","description":"Leistungsabregelung aufgrund eines Netzfehlers (erhöhte AC-Spannung)","action":"Support"},
            {"code":"3087","type":"Interne Systemstörung ","description":"Interner Systemfehler","action":"Support kontaktieren"},
            {"code":"3088","type":"Interne Systemstörung ","description":"Lüftereinheit verschmutzt","action":"Lüftereinheit reinigen"},
            {"code":"3089","type":"Interne Systemstörung ","description":"Lüftereinheit verschmutzt","action":"Lüftereinheit reinigen"},
            {"code":"3090","type":"Interne Systemstörung ","description":"Interner Systemfehler","action":"Support kontaktieren"},
            {"code":"3091","type":"Interne Systemstörung ","description":"Lüfter nicht korrekt angeschlossen","action":"Lüfter-Steckverbindungen prüfe"},
            {"code":"3092","type":"Interne Systemstörung ","description":"Lüfter nicht korrekt angeschlossen","action":"Lüfter-Steckverbindungen prüfe"},
            {"code":"3093","type":"Interne Parametrierungsstörung","description":"Falsche Parametrierung","action":"Support kontaktiere"},
            {"code":"3094","type":"Interne Parametrierungsstörung","description":"Falsche Parametrierung","action":"Support kontaktiere"},
            {"code":"3095","type":"Interne Parametrierungsstörung","description":"Falsche Kalibrierung","action":"Support kontaktiere"},
            {"code":"3096","type":"Information","description":"Falsche Dimensionierung der PV-Generator","action":"Generatorinstallation/ -auslegung kontrolliere"},
            {"code":"3097","type":"Interne Parametrierungsstörung","description":"Falsche Parametrierung","action":"Support kontaktiere"},
            {"code":"3098","type":"Information","description":"Netz nicht vorhanden","action":"Keine Maßnahme notwendig"},
            {"code":"3101","type":"Information","description":"Interne Systemstörung","action":"Keine Maßnahme notwendig"},
            {"code":"3102","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Keine Maßnahme notwendig"},
            {"code":"3103","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Keine Maßnahme notwendig"},
            {"code":"3104","type":"Interne Systemstörung ","description":"Interne AC-Systemstörung","action":"Gerät führt mehrfach eine Prüfung durch und schaltet generell auf"},
            {"code":"3105","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Keine Maßnahme notwendig"},
            {"code":"3106","type":"Information","description":"Falsche Eingabe am KomBoard oder falsche Verdrahtung","action":"Eingabe oder Verdrahtung korriegieren"},
            {"code":"4100","type":"Interne Systemstörung ","description":"Interner Softwarefehler","action":"Support"},
            {"code":"4101","type":"Interne Systemstörung ","description":"Erhöhter DC-Strom L1","action":"Support"},
            {"code":"4102","type":"Interne Systemstörung ","description":"Erhöhter DC-Strom L2","action":"Support"},
            {"code":"4103","type":"Interne Systemstörung ","description":"Erhöhter DC-Strom L3","action":"Support"},
            {"code":"4104","type":"Interne Systemstörung ","description":"Erhöhter DC-Strom L1","action":"Support"},
            {"code":"4105","type":"Interne Systemstörung ","description":"Erhöhter DC-Strom L2","action":"Support"},
            {"code":"4106","type":"Interne Systemstörung ","description":"Erhöhter DC-Strom L3","action":"Support"},
            {"code":"4110","type":"Interne Systemstörung ","description":"Interner Softwarefehler","action":"Support"},
            {"code":"4121","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Support"},
            {"code":"4122","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Support"},
            {"code":"4130","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Support"},
            {"code":"4131","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Support"},
            {"code":"4150","type":"Information","description":"Erhöhte Netzfrequenz. Oft gehäuftes Auftreten am Morgen und am Abend.","action":"Installation kontrollieren"},
            {"code":"4151","type":"Externe Netzstörung","description":"Zu niedrige Netzfrequenz","action":"Installation kontrollieren"},
            {"code":"4157","type":"Externe Netzstörung","description":"Erhöhte Netzfrequenz","action":"Keine Maßnahme notwendig"},
            {"code":"4158","type":"Externe Netzstörung","description":"Erhöhte Netzfrequenz","action":"Installation kontrollieren"},
            {"code":"4159","type":"Externe Netzstörung","description":"Erhöhte Netzfrequenz","action":"Installation kontrollieren"},
            {"code":"4160","type":"Externe Netzstörung","description":"Erhöhte Netzfrequenz","action":"Installation kontrollieren"},
            {"code":"4161","type":"Externe Netzstörung","description":"Zu niedrige Netzfrequenz","action":"Installation kontrollieren"},
            {"code":"4170","type":"Information","description":"Eine Phase ist nicht angeschlossen. Ein Sicherungsautomat wurde nicht eingeschaltet.","action":"Installation kontrollieren"},
            {"code":"4180","type":"Externe Netzstörung","description":"PE-Leitung nicht angeschlossen","action":"Installation kontrollieren"},
            {"code":"4181","type":"Externe Netzstörung","description":"PE-Leitung nicht angeschlossen","action":"Installation kontrollieren "},
            {"code":"4185","type":"Interne Systemstörung ","description":"Interner Softwarefehler","action":"Support1 "},
            {"code":"4200","type":"Externe Netzstörung","description":"Erhöhte Netzspannung","action":"Installation kontrollieren "},
            {"code":"4201","type":"Externe Netzstörung","description":"Zu niedrige Netzspannung","action":"Installation kontrollieren "},
            {"code":"4210","type":"Externe Netzstörung","description":"Erhöhte Netzspannung","action":"Installation kontrollieren "},
            {"code":"4211","type":"Externe Netzstörung","description":"Zu niedrige Netzspannung","action":"Installation kontrollieren "},
            {"code":"4220","type":"Externe Netzstörung","description":"Spannungsmittelwert der letzten 10 Min. zu groß","action":"Installation kontrollieren "},
            {"code":"4221","type":"Externe Netzstörung","description":"Spannungsmittelwert der letzten 10 Min. zu groß","action":"Installation kontrollieren "},
            {"code":"4290","type":"Externe Netzstörung","description":"Die Netzfrequenz hat sich zu schnell verändert.","action":"Generatorinstallation kontrollieren "},
            {"code":"4300","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Support"},
            {"code":"4301","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Support"},
            {"code":"4302","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Support"},
            {"code":"4303","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Support"},
            {"code":"4304","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Support"},
            {"code":"4321","type":"Interne Parametrierungsstörung","description":"Defektes EEPROM unerlaubte Speicherzugriffe","action":"Support"},
            {"code":"4322","type":"Interne Parametrierungsstörung","description":"Softwarefehler","action":"Support kontaktieren"},
            {"code":"4323","type":"Interne Parametrierungsstörung","description":"Fehlerstrom","action":"Support"},
            {"code":"4324","type":"Interne Parametrierungsstörung","description":"Parameterfehler","action":"Support"},
            {"code":"4325","type":"Interne Parametrierungsstörung","description":"Parameterfehler","action":"Support"},
            {"code":"4340","type":"-","description":"","action":""},
            {"code":"4354","type":"Externer Fehlerstrom","description":"Fehlerstrom","action":"Generatorinstallation kontrollieren "},
            {"code":"4360","type":"-","description":"","action":""},
            {"code":"4421","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Support "},
            {"code":"4422","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Support kontaktieren. "},
            {"code":"4424","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Support"},
            {"code":"4425","type":"Interne Parametrierungsstörung","description":"Parameterfehler","action":"Support "},
            {"code":"4450","type":"Externe Isolationsfehler","description":"Isolationsfehler","action":"Generatorinstallation kontrollieren "},
            {"code":"4451","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Support kontaktieren "},
            {"code":"4475","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Support "},
            {"code":"4476","type":"Information","description":"Schwache PV-Versorgung (z.B. morgens)","action":"Keine Maßnahme notwendig "},
            {"code":"4800","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Support "},
            {"code":"4801","type":"Interne Systemstörung ","description":"Isolationsfehler","action":"Support "},
            {"code":"4802","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Support "},
            {"code":"4803","type":"Interne Systemstörung ","description":"Isolationsfehler","action":"Support "},
            {"code":"4804","type":"Interne Systemstörung ","description":"Isolationsfehler","action":"Support "},
            {"code":"4805","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Support "},
            {"code":"4810","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Support "},
            {"code":"4850","type":"Interne Systemstörung ","description":"EVU","action":"Support "},
            {"code":"4870","type":"-","description":"","action":""},
            {"code":"7500","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Support "},
            {"code":"7503","type":"Information","description":"Interne Systemstörung","action":"Keine Maßnahme notwendig"}
            ];
            
            
            
            function getEvents() {
              //log('getEvents');
              var keys = [];
              var key1 = 234881792;
              var key2 = 234881537;  
              keys.push(key1);
              for (var i=0;i<10;i++) {
                  keys.push(key2+i);
              }
            
              pikorequest(keys, function(response){
                  //log('events: '+ JSON.stringify(response));
                  var item,len;
                  var msga = [];
                  if (typeof response === 'string') response = JSON.parse(response);
                  item = getResponseId(response,234881792);
                  len = item.value;
                  for (var i=0;i<len;i++) {
                      item = getResponseId(response,234881537+i);
                      var d,date,code,env;
                      d = item.value;
                      date = timeConverter((d[0] << 0) + (d[1] << 8) + (d[2] << 16) + (d[3] << 24));
                      code = (d[4] << 0) + (d[5] << 8);
                      env = ("0000"+((d[6] << 0) + (d[7] << 8)).toString(16)).toLocaleUpperCase().substr(-4,4)+'h';
                      var msg = msgs.find(item => item.code==code);
                      msg.date=date;
                      var msgtext = 'Code: '+msg.code+' Typ: '+msg.type+' Beschreibung: '+msg.description+' Maßnahme: '+msg.action
                      //log('message' + i+1 + ': ' + date + ' '  + code + ' '  + env + ' '+msgtext);
                      //log("Datenpunkt: "+ datenpunkt+i + " Fehlermeldung: " + msgtext + true/*ack*/);
                      setState(datenpunkt+i,`[` + JSON.stringify(msg) +`]`, true/*ack*/);
                   msga.push(JSON.parse(JSON.stringify(msg)));           
                  }
                  setState(datenpunkt, JSON.stringify(msga) , true/*ack*/);
               });
            }
            
            function pikorequest(keys,callback) {
              //log('pikorequest');
              if (keys.length==0) {
                  //log('request error: No keys ');
                  return;     
              }
            
              var query = '';
            
              for (var i = 0; i < keys.length; i++) { 
                  query += '&dxsEntries=' + keys[i];
              }
            
              var req_url = 'http://' + domain + url + '?sessionid=iobroker' + query;
              //log ('query: '+req_url);
            
              request(
                  { method: 'GET',
                  uri: req_url,
                  }
              , function (error, response, body) {
                          //log('error: ' + error);
                          //log('Status: '+ response.statusCode);
                          //log('response: '+ JSON.stringify(response));
                          //response.body = '{"dxsEntries":[{"dxsId":234881792,"value":1},{"dxsId":234881537,"value":[207,217,88,94,63,16,2,0]},{"dxsId":234881538,"value":[0,0,0,0,0,0,0,0]},{"dxsId":234881539,"value":[0,0,0,0,0,0,0,0]},{"dxsId":234881540,"value":[0,0,0,0,0,0,0,0]},{"dxsId":234881541,"value":[0,0,0,0,0,0,0,0]},{"dxsId":234881542,"value":[0,0,0,0,0,0,0,0]},{"dxsId":234881543,"value":[0,0,0,0,0,0,0,0]},{"dxsId":234881544,"value":[0,0,0,0,0,0,0,0]},{"dxsId":234881545,"value":[0,0,0,0,0,0,0,0]},{"dxsId":234881546,"value":[0,0,0,0,0,0,0,0]}],"session":{"sessionId":0,"roleId":0},"status":{"code":0}}';
                          //response.statusCode = 200;
                          //error = false;
            
                      if (!error && response.statusCode == 200) {
                          //log('request ok: ');
                          //log('Status: '+ response.statusCode);
                          //log('response: '+ JSON.stringify(response));
                          callback(response.body);
                      } else {
                          log('request nok: ');
                          //log('Status: '+ response.statusCode);
                          //log('error: ' + error);
                      }
                  }
              );
            }
            function getResponseId(response,id) {
              return response.dxsEntries.find( item => item.dxsId === id );
            }
            function timeConverter(UNIX_timestamp){
            var a = new Date(UNIX_timestamp * 1000);
            var months = ['Jan','Feb','Mar','Apr','May','Jun','Jul','Aug','Sep','Oct','Nov','Dec'];
            var year = a.getFullYear();
            var month = months[a.getMonth()];
            var date = a.getDate();
            var hour = ('0'+a.getHours()).slice(-2);
            var min = ('0'+a.getMinutes()).slice(-2);
            var sec = ('0'+a.getSeconds()).slice(-2);
            var time = date + ' ' + month + ' ' + year + ' ' + hour + ':' + min + ':' + sec ;
            return time;
            log (time);
            }
            schedule("* * * * *", getEvents);
            
            

            auch hier ist eine Variable url, die sollte aber definiert sein

            SBorgS Offline
            SBorgS Offline
            SBorg
            Forum Testing Most Active
            wrote on last edited by
            #5

            @homoran
            Sieht nach dem 1. Skript aus, ich finde nirgends eine Definition von "url" die aber hier
            log("Fehler: " + error + " bei Abfrage von: " + url, "warn");
            aufgerufen wird.
            Ändere es doch mal testweise auf
            log("Fehler: " + error + " bei Abfrage von: " , "warn");
            ab. Anscheinend klappt die Abfrage nicht immer "ETIMEDOUT".

            ...und jetzt habe ich gerade deinen Edit gelesen 😉

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

            HomoranH 1 Reply Last reply
            1
            • SBorgS SBorg

              @homoran
              Sieht nach dem 1. Skript aus, ich finde nirgends eine Definition von "url" die aber hier
              log("Fehler: " + error + " bei Abfrage von: " + url, "warn");
              aufgerufen wird.
              Ändere es doch mal testweise auf
              log("Fehler: " + error + " bei Abfrage von: " , "warn");
              ab. Anscheinend klappt die Abfrage nicht immer "ETIMEDOUT".

              ...und jetzt habe ich gerade deinen Edit gelesen 😉

              HomoranH Offline
              HomoranH Offline
              Homoran
              Global Moderator Administrators
              wrote on last edited by Homoran
              #6

              @sborg sagte in Errormeldungen abfangen:

              ich finde nirgends eine Definition von "url"

              dann nehme ich "IPAnlage" statt "url"

              DANKE!

              kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

              Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

              der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

              SBorgS 1 Reply Last reply
              0
              • HomoranH Homoran

                @sborg sagte in Errormeldungen abfangen:

                ich finde nirgends eine Definition von "url"

                dann nehme ich "IPAnlage" statt "url"

                DANKE!

                SBorgS Offline
                SBorgS Offline
                SBorg
                Forum Testing Most Active
                wrote on last edited by
                #7

                @homoran
                Jupp, ist "global" definiert, funktioniert also auch innerhalb der "function". Ggf. würde ich vielleicht noch den Level von "warn" auf "info" runter setzen. Bei mir ist "warn" eigentlich eher die Bude brennt gerade ab 😉

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

                HomoranH 1 Reply Last reply
                1
                • SBorgS SBorg

                  @homoran
                  Jupp, ist "global" definiert, funktioniert also auch innerhalb der "function". Ggf. würde ich vielleicht noch den Level von "warn" auf "info" runter setzen. Bei mir ist "warn" eigentlich eher die Bude brennt gerade ab 😉

                  HomoranH Offline
                  HomoranH Offline
                  Homoran
                  Global Moderator Administrators
                  wrote on last edited by
                  #8

                  @sborg Danke nochmal.
                  WARN ist aber besser als ERROR 😀

                  ETIMEDOUT wird dann trotzdem 4x pro Millisekunde aufschlagen?
                  oder war das nur weil im else das url nicht definiert war?

                  kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

                  Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                  der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                  SBorgS 1 Reply Last reply
                  0
                  • HomoranH Homoran

                    @sborg Danke nochmal.
                    WARN ist aber besser als ERROR 😀

                    ETIMEDOUT wird dann trotzdem 4x pro Millisekunde aufschlagen?
                    oder war das nur weil im else das url nicht definiert war?

                    SBorgS Offline
                    SBorgS Offline
                    SBorg
                    Forum Testing Most Active
                    wrote on last edited by
                    #9

                    @homoran
                    Immer gerne.

                    Ja, da anscheinend deine Gegenstelle nicht immer zuverlässig antwortet. Da würde "try + catch" zwar helfen, behebt aber nicht das eigentliche Problem. Weißt du wie schnell der Trigger agiert? Nicht das er mit der einen Verarbeitung noch beschäftigt ist und schon der nächste ansteht. Abhilfe könnte dann "await" bringen. Damit wird das Skript angehalten bis die Verarbeitung der Funktion beendet ist.

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

                    HomoranH 1 Reply Last reply
                    0
                    • SBorgS SBorg

                      @homoran
                      Immer gerne.

                      Ja, da anscheinend deine Gegenstelle nicht immer zuverlässig antwortet. Da würde "try + catch" zwar helfen, behebt aber nicht das eigentliche Problem. Weißt du wie schnell der Trigger agiert? Nicht das er mit der einen Verarbeitung noch beschäftigt ist und schon der nächste ansteht. Abhilfe könnte dann "await" bringen. Damit wird das Skript angehalten bis die Verarbeitung der Funktion beendet ist.

                      HomoranH Offline
                      HomoranH Offline
                      Homoran
                      Global Moderator Administrators
                      wrote on last edited by Homoran
                      #10

                      @sborg sagte in Errormeldungen abfangen:

                      Weißt du wie schnell der Trigger agiert?

                      etwa alle 6 Sekunden.

                      @sborg sagte in Errormeldungen abfangen:

                      behebt aber nicht das eigentliche Problem.

                      wobei ich genau da die Ursache vermute. Möglicherweise stirbt ein Switch oder die Fritzbox oder die Netzwerkkarte vom NUC 😞
                      Auch mein Slave hat einige Male am Tag das Problem sich mit der States DB des masters zu verbinden.
                      Allerdings erst nach der Updateorgie und damit verbundenen Verwendung von jsonl.

                      Hier kann es aber auch sein, dass zeitgleich das andere Skript auf die API zugreift.

                      Aber wie gesagt lief es in dieser Konstellation Jahre ohne eine einzige Meldung.

                      kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

                      Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                      der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                      SBorgS 1 Reply Last reply
                      0
                      • HomoranH Homoran

                        @sborg sagte in Errormeldungen abfangen:

                        Weißt du wie schnell der Trigger agiert?

                        etwa alle 6 Sekunden.

                        @sborg sagte in Errormeldungen abfangen:

                        behebt aber nicht das eigentliche Problem.

                        wobei ich genau da die Ursache vermute. Möglicherweise stirbt ein Switch oder die Fritzbox oder die Netzwerkkarte vom NUC 😞
                        Auch mein Slave hat einige Male am Tag das Problem sich mit der States DB des masters zu verbinden.
                        Allerdings erst nach der Updateorgie und damit verbundenen Verwendung von jsonl.

                        Hier kann es aber auch sein, dass zeitgleich das andere Skript auf die API zugreift.

                        Aber wie gesagt lief es in dieser Konstellation Jahre ohne eine einzige Meldung.

                        SBorgS Offline
                        SBorgS Offline
                        SBorg
                        Forum Testing Most Active
                        wrote on last edited by
                        #11

                        @homoran sagte in Errormeldungen abfangen:

                        Aber wie gesagt lief es in dieser Konstellation Jahre ohne eine einzige Meldung.

                        Haben die Kunden zu meiner damaligen Zeit auch immer gesagt: komisch, gestern lief der Fernseher noch... 🙂

                        Pauschal können sich zwar die Skripte (oder eher die API des Gerätes) in die Quere kommen, da aber dein 2. Skript nur minütlich getriggert wird, dürfte dann immer mindestens eine Minute Ruhe sein und es nur "knallen" wenn dann beide zufällig zur vollen Minute mal darauf zugreifen.

                        Aktuell jetzt noch kein Thema, aber kannst du ev. den ein oder anderen verlorenen Datensatz verschmerzen?

                        Mal ein erster Timeout Test:

                        const axios = require('axios');
                        
                        (async () => {
                        
                          try {
                            const url = `http://192.168.138.103/api/dxs.json`;
                            console.log(`Sende GET-Anfrage an: ${url}`);
                            const response = await axios.get(url, {timeout: 1000});
                            console.log(`Antwort: `, response?.data?.message );
                            console.log('hier erfolgt Verarbeitung bei Antwort');
                          } catch(err) {
                            console.log(`Fehlermeldung : ${err.message} - `, err.code);
                          }
                          
                          console.log('...und weiter im Programm');
                        })();
                        

                        Lass ruhig alles andere weiterlaufen, der klopft damit nur mal kurz an. Timeout ist hier 1sek, er wartet also genau 1000ms auf eine Antwort bis er einen Fehler wirft.

                        14:33:17.284	info	javascript.0 (3856837) script.js.common.Test.TMP.Skript_1: Sende GET-Anfrage an: http://192.168.138.103/api/dxs.json
                        14:33:17.285	info	javascript.0 (3856837) script.js.common.Test.TMP.Skript_1: registered 0 subscriptions, 0 schedules, 0 messages, 0 logs and 0 file subscriptions
                        14:33:18.286	info	javascript.0 (3856837) script.js.common.Test.TMP.Skript_1: Fehlermeldung : timeout of 1000ms exceeded -
                        14:33:18.287	info	javascript.0 (3856837) script.js.common.Test.TMP.Skript_1: ...und weiter im Programm
                        

                        Die Fehlermeldung mit dem "Timeout" solltest du also eigentlich nie sehen. Bei mir ist es klar, ich habe weder die IP noch die API 😉
                        So 5-10x starten und stoppen sollte eigentlich genügen. Kannst den Timeout auch mal testweise runter setzen. "Request" bspw. wartet überhaupt nicht. Anfrage --> keine Antwort = Fehler

                        Ist sowieso mal langsam Zeit vom deprecated request Abschied zu nehmen und umzustellen.

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

                        HomoranH 1 Reply Last reply
                        0
                        • SBorgS SBorg

                          @homoran sagte in Errormeldungen abfangen:

                          Aber wie gesagt lief es in dieser Konstellation Jahre ohne eine einzige Meldung.

                          Haben die Kunden zu meiner damaligen Zeit auch immer gesagt: komisch, gestern lief der Fernseher noch... 🙂

                          Pauschal können sich zwar die Skripte (oder eher die API des Gerätes) in die Quere kommen, da aber dein 2. Skript nur minütlich getriggert wird, dürfte dann immer mindestens eine Minute Ruhe sein und es nur "knallen" wenn dann beide zufällig zur vollen Minute mal darauf zugreifen.

                          Aktuell jetzt noch kein Thema, aber kannst du ev. den ein oder anderen verlorenen Datensatz verschmerzen?

                          Mal ein erster Timeout Test:

                          const axios = require('axios');
                          
                          (async () => {
                          
                            try {
                              const url = `http://192.168.138.103/api/dxs.json`;
                              console.log(`Sende GET-Anfrage an: ${url}`);
                              const response = await axios.get(url, {timeout: 1000});
                              console.log(`Antwort: `, response?.data?.message );
                              console.log('hier erfolgt Verarbeitung bei Antwort');
                            } catch(err) {
                              console.log(`Fehlermeldung : ${err.message} - `, err.code);
                            }
                            
                            console.log('...und weiter im Programm');
                          })();
                          

                          Lass ruhig alles andere weiterlaufen, der klopft damit nur mal kurz an. Timeout ist hier 1sek, er wartet also genau 1000ms auf eine Antwort bis er einen Fehler wirft.

                          14:33:17.284	info	javascript.0 (3856837) script.js.common.Test.TMP.Skript_1: Sende GET-Anfrage an: http://192.168.138.103/api/dxs.json
                          14:33:17.285	info	javascript.0 (3856837) script.js.common.Test.TMP.Skript_1: registered 0 subscriptions, 0 schedules, 0 messages, 0 logs and 0 file subscriptions
                          14:33:18.286	info	javascript.0 (3856837) script.js.common.Test.TMP.Skript_1: Fehlermeldung : timeout of 1000ms exceeded -
                          14:33:18.287	info	javascript.0 (3856837) script.js.common.Test.TMP.Skript_1: ...und weiter im Programm
                          

                          Die Fehlermeldung mit dem "Timeout" solltest du also eigentlich nie sehen. Bei mir ist es klar, ich habe weder die IP noch die API 😉
                          So 5-10x starten und stoppen sollte eigentlich genügen. Kannst den Timeout auch mal testweise runter setzen. "Request" bspw. wartet überhaupt nicht. Anfrage --> keine Antwort = Fehler

                          Ist sowieso mal langsam Zeit vom deprecated request Abschied zu nehmen und umzustellen.

                          HomoranH Offline
                          HomoranH Offline
                          Homoran
                          Global Moderator Administrators
                          wrote on last edited by
                          #12

                          @sborg Danke!

                          hab noch einmal neu gestartet und seit dem keine einzige Errormeldung bekommen. :aufHolzKlopf:

                          @sborg sagte in Errormeldungen abfangen:

                          und es nur "knallen" wenn dann beide zufällig zur vollen Minute mal darauf zugreifen.

                          so sah es für mich aus, zusätzlich auch nur zu bestimmten Zeiten, in denen möglicherweise iob oder die Netzwerkkarte noch mit anderen zeitgleichen Aufgaben beschäftigt war.

                          @sborg sagte in Errormeldungen abfangen:

                          Ist sowieso mal langsam Zeit vom deprecated request Abschied zu nehmen und umzustellen.

                          glaub ich dir gerne, aber....

                          @homoran sagte in Errormeldungen abfangen:

                          isch kann koi Jawa

                          und wie gestern in einem anderen Thread geschrieben ist es für C&P user nicht einfach mal eben "umzustellen"

                          Beide Skripte sind

                          @homoran sagte in Errormeldungen abfangen:

                          auch nicht von mir, sondern einem freundlichen Helfer

                          kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

                          Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                          der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                          liv-in-skyL 1 Reply Last reply
                          0
                          • HomoranH Homoran

                            @sborg Danke!

                            hab noch einmal neu gestartet und seit dem keine einzige Errormeldung bekommen. :aufHolzKlopf:

                            @sborg sagte in Errormeldungen abfangen:

                            und es nur "knallen" wenn dann beide zufällig zur vollen Minute mal darauf zugreifen.

                            so sah es für mich aus, zusätzlich auch nur zu bestimmten Zeiten, in denen möglicherweise iob oder die Netzwerkkarte noch mit anderen zeitgleichen Aufgaben beschäftigt war.

                            @sborg sagte in Errormeldungen abfangen:

                            Ist sowieso mal langsam Zeit vom deprecated request Abschied zu nehmen und umzustellen.

                            glaub ich dir gerne, aber....

                            @homoran sagte in Errormeldungen abfangen:

                            isch kann koi Jawa

                            und wie gestern in einem anderen Thread geschrieben ist es für C&P user nicht einfach mal eben "umzustellen"

                            Beide Skripte sind

                            @homoran sagte in Errormeldungen abfangen:

                            auch nicht von mir, sondern einem freundlichen Helfer

                            liv-in-skyL Offline
                            liv-in-skyL Offline
                            liv-in-sky
                            wrote on last edited by liv-in-sky
                            #13

                            @homoran hatte ich schon mal woanders erwähnt: es könnte sein, dass nach einem error eines scriptes und sogar nach dem stoppen des scriptes teile davon noch aktiv bleiben - sowas, wie ein zombie-script - startet man das script dann nochmal, läuft das parallel(doppelt/evtl. dreifach...) .
                            passiert das öfters, kann es schlimmer werden

                            BIS man den javascript adapter oder den iob neustartet - das könnte erklären, warum es jetzt erstmal keine fehler mehr gibt

                            is nur so eine vermutung und ein versuch zur erklärung

                            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

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


                            Support us

                            ioBroker
                            Community Adapters
                            Donate

                            60

                            Online

                            32.4k

                            Users

                            81.3k

                            Topics

                            1.3m

                            Posts
                            Community
                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                            ioBroker Community 2014-2025
                            logo
                            • Login

                            • Don't have an account? Register

                            • Login or register to search.
                            • First post
                              Last post
                            0
                            • Recent
                            • Tags
                            • Unread 0
                            • Categories
                            • Unreplied
                            • Popular
                            • GitHub
                            • Docu
                            • Hilfe