Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Parser

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    Parser

    This topic has been deleted. Only users with topic management privileges can see it.
    • Homoran
      Homoran Global Moderator Administrators @OliverIO last edited by Homoran

      @OliverIO sagte in Parser:

      Für heut machen wir Schluss, ich Bau dir morgen einen rudimentären skriptrahmen, der die Daten abruft und als debug ausgibt.
      Und dann sind wir schon recht schnell bei der Ausgabe als datenpunkt.

      Klingt gut,
      Ab morgen muss ich aber für ein paar Tage auf Dienstreise. Mal sehen ob ich heute abend noch Zeit finde.

      @OliverIO sagte in Parser:

      was ist die 2. Zahl die hier 2 heißt?

      meinst du die 00002h ??
      ich nahm an, dass das auch ein Fehlercode in Hex sei

      @OliverIO sagte in Parser:

      Du hast da ein Verzeichnis?

      Ja, leider nur als Scan vom Solarteur, müsste also alle Zahlen und Beschreibungen abtippen.
      Ich werde das genau so machen wie bei den Betriebsstatusmeldungen (https://www.loxwiki.eu/pages/viewpage.action?pageId=28803569) und sukzessive das Übersetzungsskript erweitern.
      Die verlinkte Seite kannte ich damals nicht - 7 ist übrigens Isolationsmessung 😉 )

      EDIT: vielleicht ist das aber auch die Dauer?? Aber das ging etwa von 09:00 bis 13:00

      OliverIO 2 Replies Last reply Reply Quote 0
      • OliverIO
        OliverIO @Homoran last edited by

        @Homoran

        Musst nicht tippen, konnte die Tabelle aus dem PDF extrahieren

        3000	Störung Updateprozess	Interne Systemstörung	Update des Wechselrichters durchführen. 
        3003	Interne Kommunikationsstörung	Interne Kommunikationsstörung	zwischen Netzüberwachung und Steuerung Internen Kommunikationsleitungen zwischen den einzelnen Leiterplatten kontrollieren1 
        3006	Interne Systemstörung 	Interne Systemstörung bzgl. Leistungsabregelung	Gerät führt mehrfach eine Prüfung durch und schaltet generell auf. Support1 
        3010	Interne Kommunikationsstörung	Interne Kommunikationsstörung	zwischen Steuerung und Kommunkationsplatine Kontrollieren Sie die Uhrzeiteinstellung, Funktionalität der Kommunikationsplatine und weiterer Kommunikationseinstellungen. Wechselrichter schaltet trotz fehlerhaftem Zeitstempel auf1 
        3011	Interne Temperaturstörung	Interne Systemstörung	Support1 
        3012	Störung Varistor	DC-Varistor defekt	Defekten Varistor tauschen1 
        3013	Interne Temperaturstörung	Übertemperatur AC/DC an Leistungsstufe	Installationsbedingungen und Lüfter kontrollieren1 
        3014	Interne Temperaturstörung	Übertemperatur Prozessor	Installationsbedingungen und Lüfter kontrollieren1 
        3017	Externe Generatorstörung	Überspannung am PV-Generator	Generatorinstallation/ -auslegung kontrollieren1 
        3018	Information	Leistungsabregelung durch externe Vorgaben (Netzbetreiber)	Keine Maßnahme Notwendig. 
        3019	Externe Netzstörung	Leistungsabregelung aufgrund eines Netzfehlers (erhöhte Netzfrequenz)	Support1 
        3020	Externe Generatorstörung	Überstrom am PV-Generator	Generatorinstallation/ -auslegung kontrollieren1 
        3021	Interne Systemstörung 	Interne Systemstörung	Support1 
        3022	Externe Generatorstörung	Überspannung am PV-Generator	Generatorinstallation/ -auslegung kontrollieren1 
        3023	Externe Generatorstörung	Überstrom am PV-Generator	Generatorinstallation/ -auslegung kontrollieren1 
        3024	Interne Systemstörung 	Interne Systemstörung	Support1 
        3025	Externe Generatorstörung	Überspannung am PV-Generator	Generatorinstallation/ -auslegung kontrollieren1 
        3026	Externe Generatorstörung	Überstrom am PV-Generator	Generatorinstallation/ -auslegung kontrollieren1 
        3027	Interne Temperaturstörung	Interne Systemstörung	Support1
        3028	Externe Generatorstörung	Überspannung am PV-Generator	Generatorinstallation/ -auslegung kontrollieren 
        3029	Externe Generatorstörung	Überstrom am PV-Generator	Generatorinstallation/ -auslegung kontrollieren1 
        3030	Interne Temperaturstörung	Übertemperatur AC/DC an Leistungsstufe	Installationsbedingungen und Lüfter kontrollieren1 
        3031	Interne Systemstörung 	Interne AC-Systemstörung	Gerät führt mehrfach Prüfung durch und schaltet generell auf1 
        3032	Externe Generatorstörung	Überstrom am PV-Generator	Generatorinstallation/ -auslegung kontrollieren1 
        3033	Interne Systemstörung 	Interne Systemstörung	Support1 
        3034	Interne Systemstörung 	Interner Zwischenkreisfehler	Das Gerät neu starten1 
        3035	Interne Systemstörung 	Interner Zwischenkreisfehler	Das Gerät neu starten1 
        3036	Interne Systemstörung 	Interne Systemstörung	Support kontaktieren 
        3037	Interne Systemstörung 	Interne Systemstörung	Support kontaktieren 
        3038	Interne Systemstörung 	Interne Systemstörung	Support kontaktieren 
        3039	Interne Parametrierungsstörung	Interne Systemstörung	Support kontaktieren 
        3045	Interne Systemstörung 	Interne AC-Systemstörung	Gerät führt mehrfach Prüfung durch und schaltet generell auf1 
        3046	Interne Systemstörung 	Interne AC-Systemstörung	Gerät führt mehrfach Prüfung durch und schaltet generell auf.1 
        3047	Interne Systemstörung 	Interne Systemstörung	Support1 
        3048	Interne Kommunikationsstörung	Interner Kommunikationsfehler	Kontrollieren Sie die internen Kommunikationsleitungen zwischen den einzelnen Leiterplatten1 
        3049	Interne Kommunikationsstörung	Interner Kommunikationsfehler	Kontrollieren Sie die internen Kommunikationsleitungen zwischen den einzelnen Leiterplatten1 
        3050	Interne Kommunikationsstörung	Interner Kommunikationsfehler	Kontrollieren Sie die internen Kommunikationsleitungen zwischen den einzelnen Leiterplatten1 
        3051	Interne Systemstörung 	Interne Systemstörung	Support1 
        3052	Interne Systemstörung 	Interne Systemstörung	Support1 
        3053	Interne Systemstörung 	Interne Systemstörung	Support1
        3054	Interne Systemstörung 	Interne Systemstörung	Support1 
        3055	Interne Systemstörung 	Interne Systemstörung	Das Gerät neu starten1 
        3056	Interne Parametrierungsstörung	Interne Systemstörung	Support kontaktieren 
        3057	Interne Systemstörung 	Interne Systemstörung	Generatorinstallation/ -auslegung kontrollieren1 
        3059	Interne Parametrierungsstörung	Falsche Parametrierung	Ggf. falsche Ländereinstellung. Support kontaktieren 
        3060	Interne Parametrierungsstörung	Falsche Parametrierung	Support kontaktieren 
        3061	Interne Systemstörung 	Interne Systemstörung	Keine Maßnahme notwendig1 
        3062	Interne Temperaturstörung	Interne Systemstörung	Keine Maßnahme notwendig1 
        3063	Interne Parametrierungsstörung	Interne Systemstörung	Support kontaktieren 
        3064	Interne Systemstörung 	Interne Systemstörung	Keine Maßnahme notwendig1 
        3065	Interne Systemstörung 	Interne Systemstörung	Keine Maßnahme notwendig1 
        3066	Interne Parametrierungsstörung	Interne Systemstörung	Support kontaktieren 
        3068	Interne Systemstörung 	Interne Systemstörung	Das Gerät neu starten1 
        3070	Interne Systemstörung 	Interne AC-Systemstörung	Gerät führt mehrfach eine Prüfung durch und schaltet generell auf1 
        3071	Interne Systemstörung 	Interne AC-Systemstörung	Gerät führt mehrfach eine Prüfung durch und schaltet generell auf1 
        3072	Interne Systemstörung 	Interne AC-Systemstörung	Gerät führt mehrfach eine Prüfung durch und schaltet generell auf1 
        3073	Interne Systemstörung 	Interne AC-Systemstörung	Gerät führt mehrfach eine Prüfung durch und schaltet generell auf1 
        3074	Interne Systemstörung 	Interne AC-Systemstörung	Gerät führt mehrfach eine Prüfung durch und schaltet generell auf1 
        3075	Interne Systemstörung 	Interne AC-Systemstörung	Gerät führt mehrfach eine Prüfung durch und schaltet generell auf1 
        3076	Interne Systemstörung 	Interne AC-Systemstörung	Die AC-Spannung ist gegebenenfalls zu niedrig. 
        3079	Interne Systemstörung 	Interne Systemstörung	Das Gerät neu starten1 
        3080	Interne Systemstörung 	Interne Systemstörung	Das Gerät neu starten1
        3082	Interne Systemstörung 	Interne Systemstörung	Support kontaktieren 
        3083	Information	Interne Systemstörung	Keine Maßnahme notwendig1 
        3084	Interne Systemstörung 	Interne Systemstörung	Support kontaktieren 
        3085	Interne Temperaturstörung	Übertemperatur Prozessor	Installationsbedingungen und Lüfter kontrollieren1 
        3086	Information	Leistungsabregelung aufgrund eines Netzfehlers (erhöhte AC-Spannung)	Support1 
        3087	Interne Systemstörung 	Interner Systemfehler	Support kontaktieren 
        3088	Interne Systemstörung 	Lüftereinheit verschmutzt	Lüftereinheit reinigen 
        3089	Interne Systemstörung 	Lüftereinheit verschmutzt	Lüftereinheit reinigen 
        3090	Interne Systemstörung 	Interner Systemfehler	Support kontaktieren 
        3091	Interne Systemstörung 	Lüfter nicht korrekt angeschlossen	Lüfter-Steckverbindungen prüfen 
        3092	Interne Systemstörung 	Lüfter nicht korrekt angeschlossen	Lüfter-Steckverbindungen prüfen 
        3093	Interne Parametrierungsstörung	Falsche Parametrierung	Support kontaktieren 
        3094	Interne Parametrierungsstörung	Falsche Parametrierung	Support kontaktieren 
        3095	Interne Parametrierungsstörung	Falsche Kalibrierung	Support kontaktieren 
        3096	Information	Falsche Dimensionierung der PV-Generator	Generatorinstallation/ -auslegung kontrollieren 
        3097	Interne Parametrierungsstörung	Falsche Parametrierung	Support kontaktieren 
        3098	Information	Netz nicht vorhanden	Keine Maßnahme notwendig1 
        3101	Information	Interne Systemstörung	Keine Maßnahme notwendig1 
        3102	Interne Systemstörung 	Interne Systemstörung	Keine Maßnahme notwendig1 
        3103	Interne Systemstörung 	Interne Systemstörung	Keine Maßnahme notwendig1 
        3104	Interne Systemstörung 	Interne AC-Systemstörung	Gerät führt mehrfach eine Prüfung durch und schaltet generell auf1 
        3105	Interne Systemstörung 	Interne Systemstörung	Keine Maßnahme notwendig1
        3106	Information	Falsche Eingabe am KomBoard oder falsche Verdrahtung	Eingabe oder Verdrahtung korriegieren1 
        4100	Interne Systemstörung 	Interner Softwarefehler	Support1 
        4101	Interne Systemstörung 	Erhöhter DC-Strom L1	Support1 
        4102	Interne Systemstörung 	Erhöhter DC-Strom L2	Support1 
        4103	Interne Systemstörung 	Erhöhter DC-Strom L3	Support1 
        4104	Interne Systemstörung 	Erhöhter DC-Strom L1	Support1 
        4105	Interne Systemstörung 	Erhöhter DC-Strom L2	Support1 
        4106	Interne Systemstörung 	Erhöhter DC-Strom L3	Support1 
        4110	Interne Systemstörung 	Interner Softwarefehler	Support1 
        4121	Interne Systemstörung 	Interne Systemstörung	Support1 
        4122	Interne Systemstörung 	Interne Systemstörung	Support1 
        4130	Interne Systemstörung 	Interne Systemstörung	Support1 
        4131	Interne Systemstörung 	Interne Systemstörung	Support1 
        4150	Information	Erhöhte Netzfrequenz. Oft gehäuftes Auftreten am Morgen und am Abend.	Installation kontrollieren1 
        4151	Externe Netzstörung	Zu niedrige Netzfrequenz	Installation kontrollieren1 
        4157	Externe Netzstörung	Erhöhte Netzfrequenz	Keine Maßnahme notwendig1 
        4158	Externe Netzstörung	Erhöhte Netzfrequenz	Installation kontrollieren1 
        4159	Externe Netzstörung	Erhöhte Netzfrequenz	Installation kontrollieren1 
        4160	Externe Netzstörung	Erhöhte Netzfrequenz	Installation kontrollieren1 
        4161	Externe Netzstörung	Zu niedrige Netzfrequenz	Installation kontrollieren1 
        4170	Information	Eine Phase ist nicht angeschlossen. Ein Sicherungsautomat wurde nicht eingeschaltet.	Installation kontrollieren1 
        4180	Externe Netzstörung	PE-Leitung nicht angeschlossen	Installation kontrollieren1
        4181	Externe Netzstörung	PE-Leitung nicht angeschlossen	Installation kontrollieren1 
        4185	Interne Systemstörung 	Interner Softwarefehler	Support1 
        4200	Externe Netzstörung	Erhöhte Netzspannung	Installation kontrollieren1 
        4201	Externe Netzstörung	Zu niedrige Netzspannung	Installation kontrollieren1 
        4210	Externe Netzstörung	Erhöhte Netzspannung	Installation kontrollieren1 
        4211	Externe Netzstörung	Zu niedrige Netzspannung	Installation kontrollieren1 
        4220	Externe Netzstörung	Spannungsmittelwert der letzten 10 Min. zu groß	Installation kontrollieren1 
        4221	Externe Netzstörung	Spannungsmittelwert der letzten 10 Min. zu groß	Installation kontrollieren1 
        4290	Externe Netzstörung	Die Netzfrequenz hat sich zu schnell verändert.	Generatorinstallation kontrollieren1 
        4300	Interne Systemstörung 	Interne Systemstörung	Support1 
        4301	Interne Systemstörung 	Interne Systemstörung	Support1 
        4302	Interne Systemstörung 	Interne Systemstörung	Support1 
        4303	Interne Systemstörung 	Interne Systemstörung	Support1 
        4304	Interne Systemstörung 	Interne Systemstörung	Support1 
        4321	Interne Parametrierungsstörung	Defektes EEPROM, unerlaubte Speicherzugriffe	Support1 
        4322	Interne Parametrierungsstörung	Softwarefehler	Support kontaktieren 
        4323	Interne Parametrierungsstörung	Fehlerstrom	Support1 
        4324	Interne Parametrierungsstörung	Parameterfehler	Support1 
        4325	Interne Parametrierungsstörung	Parameterfehler	Support1 
        4340	-		
        4354	Externer Fehlerstrom	Fehlerstrom	Generatorinstallation kontrollieren1 
        4360	-		
        4421	Interne Systemstörung 	Interne Systemstörung	Support1 
        4422	Interne Systemstörung 	Interne Systemstörung	Support kontaktieren. 
        4424	Interne Systemstörung 	Interne Systemstörung	Support1
        4425	Interne Parametrierungsstörung	Parameterfehler	Support1 
        4450	Externe Isolationsfehler	Isolationsfehler	Generatorinstallation kontrollieren1 
        4451	Interne Systemstörung 	Interne Systemstörung	Support kontaktieren 
        4475	Interne Systemstörung 	Interne Systemstörung	Support1 
        4476	Information	Schwache PV-Versorgung (z.B. morgens)	Keine Maßnahme notwendig1 
        4800	Interne Systemstörung 	Interne Systemstörung	Support1 
        4801	Interne Systemstörung 	Isolationsfehler	Support1 
        4802	Interne Systemstörung 	Interne Systemstörung	Support1 
        4803	Interne Systemstörung 	Isolationsfehler	Support1 
        4804	Interne Systemstörung 	Isolationsfehler	Support1 
        4805	Interne Systemstörung 	Interne Systemstörung	Support1 
        4810	Interne Systemstörung 	Interne Systemstörung	Support1 
        4850	Interne Systemstörung 	EVU	Support1 
        4870	-		
        7500	Interne Systemstörung 	Interne Systemstörung	Support1 
        7503	Information	Interne Systemstörung	Keine Maßnahme notwendig1
        
        Homoran 1 Reply Last reply Reply Quote 1
        • OliverIO
          OliverIO @Homoran last edited by

          @Homoran
          die Dauer ist es nicht. Die Variable nennt sich oben env. Was eher auf environment=Umgebung schließt

          1 Reply Last reply Reply Quote 0
          • Homoran
            Homoran Global Moderator Administrators @OliverIO last edited by

            @OliverIO sagte in Parser:

            Musst nicht tippen, konnte die Tabelle aus dem PDF extrahieren

            Super - Danke!

            Da ist sie:
            @OliverIO sagte in Parser:

            4157 Externe Netzstörung Erhöhte Netzfrequenz Keine Maßnahme notwendig1

            @OliverIO sagte in Parser:

            Die Variable nennt sich oben env. Was eher auf environment=Umgebung schließt

            klingt logisch - aber was bedeutet sie?
            Da braucht es big data um den Zusammenhang zu erkennen

            OliverIO 1 Reply Last reply Reply Quote 0
            • OliverIO
              OliverIO @Homoran last edited by

              @Homoran

              so jetzt kannst mal probieren:

              Neues Skript anlegen,
              den folgenden Block reinkopieren
              und am Anfang bei der variable domain
              die IP-Adresse deiner Anlage eintragen (bei dir müsste das 192.168.138.103 sein.

              Dann skript starten. Wenn der Fehlercode bei dir in der html-oberfläche noch angezeigt wird,
              dann müsste da em ende der protokollausgabe in der Skript engine so etwas wie folgt rauskommen

              message01: 28 Feb 2020 10:13:51 4159 0002h
              
              var domain = '192.168.1.20'; // domain or ip without http:// or https:// 
              var url = '/api/dxs.json';
              
              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
                      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';
                          log('message' + i+1 + ': ' + date + ' '  + code + ' '  + env + ' ');
                      }
                  });
              }
              
              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 = {"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;
              
                          if (!error && response.statusCode == 200) {
                              //log('Status: '+ response.statusCode);
                              //log('response: '+ JSON.stringify(response));
                              callback(response);
                          } else {
                              //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 = a.getHours();
                var min = a.getMinutes();
                var sec = a.getSeconds();
                var time = date + ' ' + month + ' ' + year + ' ' + hour + ':' + min + ':' + sec ;
                return time;
              }
              getEvents();
              
              
              Homoran 1 Reply Last reply Reply Quote 0
              • Homoran
                Homoran Global Moderator Administrators @OliverIO last edited by Homoran

                @OliverIO sagte in Parser:

                dann müsste da em ende der protokollausgabe in der Skript engine so etwas wie folgt rauskommen

                sorry nein:

                18:07:44.048	info	javascript.0 (27541) Stop script script.js.Helios_ErrorTest
                18:07:44.152	info	javascript.0 (27541) Start javascript script.js.Helios_ErrorTest
                18:07:44.158	info	javascript.0 (27541) script.js.Helios_ErrorTest: getEvents
                18:07:44.159	info	javascript.0 (27541) script.js.Helios_ErrorTest: pikorequest
                18:07:44.159	info	javascript.0 (27541) script.js.Helios_ErrorTest: query: http://192.168.138.103/api/dxs.json?sessionid=iobroker&dxsEntries=234881792&dxsEntries=234881537&dxsEntries=234881538&dxsEntries=234881539&dxsEntries=234881540&dxsEntries=234881541&dxsEntries=234881542&dxsEntries=234881543&dxsEntries=234881544&dxsEntries=234881545&dxsEntries=234881546
                18:07:44.161	info	javascript.0 (27541) script.js.Helios_ErrorTest: registered 0 subscriptions and 0 schedules
                18:07:44.189	info	javascript.0 (27541) script.js.Helios_ErrorTest: error: null
                18:07:44.190	info	javascript.0 (27541) script.js.Helios_ErrorTest: Status: 200
                18:07:44.190	info	javascript.0 (27541) script.js.Helios_ErrorTest: response: {"statusCode":200,"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}}","headers":{"content-type":"text/plain","expires":"Sun, 02 Jan 2000 11:11:11 GMT"},"request":{"uri":{"protocol":"http:","slashes":true,"auth":null,"host":"192.168.138.103","port":80,"hostname":"192.168.138.103","hash":null,"search":"?sessionid=iobroker&dxsEntries=234881792&dxsEntries=234881537&dxsEntries=234881538&dxsEntries=234881539&dxsEntries=234881540&dxsEntries=234881541&dxsEntries=234881542&dxsEntries=234881543&dxsEntries=234881544&dxsEntries=234881545&dxsEntries=234881546","query":"sessionid=iobroker&dxsEntries=234881792&dxsEntries=234881537&dxsEntries=234881538&dxsEntries=234881539&dxsEntries=234881540&dxsEntries=234881541&dxsEntries=234881542&dxsEntries=234881543&dxsEntries=234881544&dxsEntries=234881545&dxsEntries=234881546","pathname":"/api/dxs.json","path":"/api/dxs.json?sessionid=iobroker&dxsEntries=234881792&dxsEntries=234881537&dxsEntries=234881538&dxsEntries=234881539&dxsEntries=234881540&dxsEntries=234881541&dxsEntries=234881542&dxsEntries=234881543&dxsEntries=234881544&dxsEntries=234881545&dxsEntries=234881546","href":"http://192.168.138.103/api/dxs.json?sessionid=iobroker&dxsEntries=234881792&dxsEntries=234881537&dxsEntries=234881538&dxsEntries=234881539&dxsEntries=234881540&dxsEntries=234881541&dxsEntries=234881542&dxsEntries=234881543&dxsEntries=234881544&dxsEntries=234881545&dxsEntries=234881546"},"method":"GET","headers":{}}}
                18:07:44.191	info	javascript.0 (27541) script.js.Helios_ErrorTest: events: {"statusCode":200,"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}}","headers":{"content-type":"text/plain","expires":"Sun, 02 Jan 2000 11:11:11 GMT"},"request":{"uri":{"protocol":"http:","slashes":true,"auth":null,"host":"192.168.138.103","port":80,"hostname":"192.168.138.103","hash":null,"search":"?sessionid=iobroker&dxsEntries=234881792&dxsEntries=234881537&dxsEntries=234881538&dxsEntries=234881539&dxsEntries=234881540&dxsEntries=234881541&dxsEntries=234881542&dxsEntries=234881543&dxsEntries=234881544&dxsEntries=234881545&dxsEntries=234881546","query":"sessionid=iobroker&dxsEntries=234881792&dxsEntries=234881537&dxsEntries=234881538&dxsEntries=234881539&dxsEntries=234881540&dxsEntries=234881541&dxsEntries=234881542&dxsEntries=234881543&dxsEntries=234881544&dxsEntries=234881545&dxsEntries=234881546","pathname":"/api/dxs.json","path":"/api/dxs.json?sessionid=iobroker&dxsEntries=234881792&dxsEntries=234881537&dxsEntries=234881538&dxsEntries=234881539&dxsEntries=234881540&dxsEntries=234881541&dxsEntries=234881542&dxsEntries=234881543&dxsEntries=234881544&dxsEntries=234881545&dxsEntries=234881546","href":"http://192.168.138.103/api/dxs.json?sessionid=iobroker&dxsEntries=234881792&dxsEntries=234881537&dxsEntries=234881538&dxsEntries=234881539&dxsEntries=234881540&dxsEntries=234881541&dxsEntries=234881542&dxsEntries=234881543&dxsEntries=234881544&dxsEntries=234881545&dxsEntries=234881546"},"method":"GET","headers":{}}}
                18:07:44.192	error	javascript.0 (27541) script.js.Helios_ErrorTest: TypeError: Cannot read property 'find' of undefined
                18:07:44.193	error	javascript.0 (27541) at getResponseId (script.js.Helios_ErrorTest:70:32)
                18:07:44.193	error	javascript.0 (27541) at script.js.Helios_ErrorTest:17:16
                18:07:44.193	error	javascript.0 (27541) at Request._callback (script.js.Helios_ErrorTest:61:17)
                

                Das ganze kam mir nicht ganz unbekannt vor.
                Das Skript mit dem ich die aktuellen Werte auslese sieht so aus:

                // 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.P1Spannung');
                createState('Messwerte.0.Solaranlage.Momentanwerte.P2Spannung');
                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_Eigenverbrauch +
                   '&dxsEntries=' + ID_Eigenverbrauch_d +
                   '&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_P1Spannung +
                   '&dxsEntries=' + ID_P2Spannung +
                   '&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.Eigenverbrauch', result[2].value || 0, true);
                           setState('Messwerte.0.Solaranlage.Summenwerte.Eigenverbrauch_d', 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.P1Spannung', result[14].value || 0, true);
                           setState('Messwerte.0.Solaranlage.Momentanwerte.P2Spannung', 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;
                

                Hat auch jemand hier aus dem Forum gemacht

                OliverIO 1 Reply Last reply Reply Quote 0
                • OliverIO
                  OliverIO @Homoran last edited by

                  @Homoran

                  so nochmal probieren.

                  var domain = '192.168.1.20'; // domain or ip without http:// or https:// 
                  var url = '/api/dxs.json';
                   
                  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
                          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';
                              log('message' + i+1 + ': ' + date + ' '  + code + ' '  + env + ' ');
                          }
                      });
                  }
                   
                  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 = {"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;
                   
                              if (!error && response.statusCode == 200) {
                                  //log('Status: '+ response.statusCode);
                                  //log('response: '+ JSON.stringify(response));
                                  callback(JSON.parse(body));
                              } else {
                                  //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 = a.getHours();
                    var min = a.getMinutes();
                    var sec = a.getSeconds();
                    var time = date + ' ' + month + ' ' + year + ' ' + hour + ':' + min + ':' + sec ;
                    return time;
                  }
                  getEvents();
                   
                  
                  
                  Homoran 1 Reply Last reply Reply Quote 0
                  • Homoran
                    Homoran Global Moderator Administrators @OliverIO last edited by

                    @OliverIO sagte in Parser:

                    so nochmal probieren.

                    Super!!!

                    8:29:28.245	info	javascript.0 (27541) script.js.Helios_ErrorTest: message01: 28 Feb 2020 10:13:51 4159 0002h
                    
                    OliverIO 1 Reply Last reply Reply Quote 0
                    • OliverIO
                      OliverIO last edited by

                      dein eingebundenes skript ruft ebenfalls die daten per json ab und schreibt sie in datenpunkte.
                      das prinzip ist das gleiche

                      Homoran 1 Reply Last reply Reply Quote 0
                      • OliverIO
                        OliverIO @Homoran last edited by

                        @Homoran jetzt musst du nur noch entscheiden in welcher form du das als datenpunkt haben willst. wie gesagt, es können bis zu 10 events rauskommen.
                        das mapping bekomm ich auch hin

                        1 Reply Last reply Reply Quote 0
                        • Homoran
                          Homoran Global Moderator Administrators @OliverIO last edited by Homoran

                          @OliverIO Ich sag ja: kommt mir bekannt vor 😉

                          Jetzt noch eine translationtable und gut ist 😂

                          Mit Blockly käme ich jetzt weiter

                          on({id: 'Messwerte.0.Solaranlage.Momentanwerte.Status', change: "ne"}, function (obj) {
                            var value = obj.state.val;
                            var oldValue = obj.oldState.val;
                            if (getState("Messwerte.0.Solaranlage.Momentanwerte.Status").val == 0) {
                              setState("Messwerte.0.Solaranlage.Momentanwerte.Status_Klartext"/*Status_Klartext*/, 'aus', true);
                            } else if (getState("Messwerte.0.Solaranlage.Momentanwerte.Status").val == 1) {
                              setState("Messwerte.0.Solaranlage.Momentanwerte.Status_Klartext"/*Status_Klartext*/, 'Leerlauf', true);
                            } else if (getState("Messwerte.0.Solaranlage.Momentanwerte.Status").val == 2) {
                              setState("Messwerte.0.Solaranlage.Momentanwerte.Status_Klartext"/*Status_Klartext*/, 'Anfahren', true);
                            } else if (getState("Messwerte.0.Solaranlage.Momentanwerte.Status").val == 3) {
                              setState("Messwerte.0.Solaranlage.Momentanwerte.Status_Klartext"/*Status_Klartext*/, 'Einspeisen MPP', true);
                            } else if (getState("Messwerte.0.Solaranlage.Momentanwerte.Status").val == 4) {
                              setState("Messwerte.0.Solaranlage.Momentanwerte.Status_Klartext"/*Status_Klartext*/, 'Einspeisen abgeregelt', true);
                            } else if (getState("Messwerte.0.Solaranlage.Momentanwerte.Status").val == 7) {
                              setState("Messwerte.0.Solaranlage.Momentanwerte.Status_Klartext"/*Status_Klartext*/, 'Isolationsmessung', true);
                            } else {
                              setState("Messwerte.0.Solaranlage.Momentanwerte.Status_Klartext"/*Status_Klartext*/, (String('Code ') + String(('' + getState("Messwerte.0.Solaranlage.Momentanwerte.Status").val))), true);
                            }
                          });
                          

                          Aber in Blockly

                          OliverIO 2 Replies Last reply Reply Quote 0
                          • OliverIO
                            OliverIO @Homoran last edited by

                            @Homoran
                            blocky ist blöd.
                            i endeffekt ist es das glche wie programmieren, nur mit klötzchen. jedes klötzchen entspricht eh mehr oder weniger einem javascript befehl. mit javascript gibt es aber im netz mehr flexibilität und mehr lösungen als für blockly

                            Homoran 1 Reply Last reply Reply Quote 0
                            • OliverIO
                              OliverIO @Homoran last edited by

                              @Homoran ok Übersetzungstabelle mach ich später. Muss mal ne weile ausser Haus

                              1 Reply Last reply Reply Quote 0
                              • Homoran
                                Homoran Global Moderator Administrators @OliverIO last edited by

                                @OliverIO ich weiß, aber ich bin froh dass es das gibt, da ich mich erst seit ioBroker mit js beschäftige.

                                Ist für mich wie eine Fremdsprache: Verstehen: so lala, sprechen: naja
                                Die Grammatik (=Syntax) ist bei mir noch nicht sicher genug, eher Glückssache)

                                OliverIO 1 Reply Last reply Reply Quote 0
                                • OliverIO
                                  OliverIO @Homoran last edited by

                                  @Homoran
                                  blockly kannst dann mit latein vergleichen.
                                  man kann das zwar lernen, aber nur begrenzt einsetzen.
                                  Neue Literatur gibt es ebenfalls begrenzt
                                  oder Internet. Wenn man gar kein englisch kann, bleibt einem ein großer Anteil des Internets verschlossen.

                                  Homoran OliverIO 2 Replies Last reply Reply Quote 0
                                  • Homoran
                                    Homoran Global Moderator Administrators @OliverIO last edited by

                                    @OliverIO
                                    Bin ich ganz bei dir.
                                    Aber besser als nur auf andere angewiesen zu sein.

                                    Ich erarbeite mir damit die Grundlagen (sehe immer wieder in den Blockly <=> JS Code und irgendwann werde ich auch JS nativ arbeiten - Hoffe ich 😉

                                    1 Reply Last reply Reply Quote 0
                                    • OliverIO
                                      OliverIO @OliverIO last edited by

                                      mach mal ein Basis javascript tutorial .
                                      Dann werden dir schnell Sachen klarer.
                                      Eine kleine html-Seite im Browser.
                                      Da brauch man nicht einmal einen Server
                                      und dann mit den Dev Tools in Chrome/Firefox debuggen
                                      um zu sehen was da Schritt für Schritt passiert.

                                      https://wiki.selfhtml.org/wiki/JavaScript/Tutorials

                                      Homoran 1 Reply Last reply Reply Quote 0
                                      • Homoran
                                        Homoran Global Moderator Administrators @OliverIO last edited by

                                        @OliverIO Das Tut habe ich schon hinter mir.
                                        Bei mir hapert es wirklich an der richtigen Syntax.
                                        Ist für Außenstehende schwer zu verstehen. Aber ich kann das zehnmal lernen, beim elften mal weiß ich es wieder nicht.
                                        Nachvollziehen und sogar Fehler in komplexeren js scripten ist dagegen viel einfacher für mich

                                        OliverIO 1 Reply Last reply Reply Quote 0
                                        • OliverIO
                                          OliverIO @Homoran last edited by

                                          @Homoran

                                          So nun bitte nochmal testen.
                                          Allerdings will er bei mir nix in einen Datenpunkt schreiben, obwohl das alles passt und auch kein Fehler kommt.
                                          Die Namen der Datenpunkte kannst du konfigurieren (Zeile 3)
                                          Messwerte.0.Solaranlage.Info0 bis Messwerte.0.Solaranlage.Info9
                                          Da ich sonst nichts mit Skripten mache kannst du evtl. mal probieren

                                          var domain = '192.168.1.20'; // domain or ip without http:// or https:// 
                                          var url = '/api/dxs.json';
                                          var datenpunkt = 'Messwerte.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 kontrollieren1 "},
                                          {"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. Support1 "},
                                          {"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 auf1 "},
                                          {"code":"3011","type":"Interne Temperaturstörung","description":"Interne Systemstörung","action":"Support1 "},
                                          {"code":"3012","type":"Störung Varistor","description":"DC-Varistor defekt","action":"Defekten Varistor tauschen1 "},
                                          {"code":"3013","type":"Interne Temperaturstörung","description":"Übertemperatur AC/DC an Leistungsstufe","action":"Installationsbedingungen und Lüfter kontrollieren1 "},
                                          {"code":"3014","type":"Interne Temperaturstörung","description":"Übertemperatur Prozessor","action":"Installationsbedingungen und Lüfter kontrollieren1 "},
                                          {"code":"3017","type":"Externe Generatorstörung","description":"Überspannung am PV-Generator","action":"Generatorinstallation/ -auslegung kontrollieren1 "},
                                          {"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":"Support1 "},
                                          {"code":"3020","type":"Externe Generatorstörung","description":"Überstrom am PV-Generator","action":"Generatorinstallation/ -auslegung kontrollieren1 "},
                                          {"code":"3021","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Support1 "},
                                          {"code":"3022","type":"Externe Generatorstörung","description":"Überspannung am PV-Generator","action":"Generatorinstallation/ -auslegung kontrollieren1 "},
                                          {"code":"3023","type":"Externe Generatorstörung","description":"Überstrom am PV-Generator","action":"Generatorinstallation/ -auslegung kontrollieren1 "},
                                          {"code":"3024","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Support1 "},
                                          {"code":"3025","type":"Externe Generatorstörung","description":"Überspannung am PV-Generator","action":"Generatorinstallation/ -auslegung kontrollieren1 "},
                                          {"code":"3026","type":"Externe Generatorstörung","description":"Überstrom am PV-Generator","action":"Generatorinstallation/ -auslegung kontrollieren1 "},
                                          {"code":"3027","type":"Interne Temperaturstörung","description":"Interne Systemstörung","action":"Support1"},
                                          {"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 kontrollieren1 "},
                                          {"code":"3030","type":"Interne Temperaturstörung","description":"Übertemperatur AC/DC an Leistungsstufe","action":"Installationsbedingungen und Lüfter kontrollieren1 "},
                                          {"code":"3031","type":"Interne Systemstörung ","description":"Interne AC-Systemstörung","action":"Gerät führt mehrfach Prüfung durch und schaltet generell auf1 "},
                                          {"code":"3032","type":"Externe Generatorstörung","description":"Überstrom am PV-Generator","action":"Generatorinstallation/ -auslegung kontrollieren1 "},
                                          {"code":"3033","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Support1 "},
                                          {"code":"3034","type":"Interne Systemstörung ","description":"Interner Zwischenkreisfehler","action":"Das Gerät neu starten1 "},
                                          {"code":"3035","type":"Interne Systemstörung ","description":"Interner Zwischenkreisfehler","action":"Das Gerät neu starten1 "},
                                          {"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 auf1 "},
                                          {"code":"3046","type":"Interne Systemstörung ","description":"Interne AC-Systemstörung","action":"Gerät führt mehrfach Prüfung durch und schaltet generell auf.1 "},
                                          {"code":"3047","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Support1 "},
                                          {"code":"3048","type":"Interne Kommunikationsstörung","description":"Interner Kommunikationsfehler","action":"Kontrollieren Sie die internen Kommunikationsleitungen zwischen den einzelnen Leiterplatten1 "},
                                          {"code":"3049","type":"Interne Kommunikationsstörung","description":"Interner Kommunikationsfehler","action":"Kontrollieren Sie die internen Kommunikationsleitungen zwischen den einzelnen Leiterplatten1 "},
                                          {"code":"3050","type":"Interne Kommunikationsstörung","description":"Interner Kommunikationsfehler","action":"Kontrollieren Sie die internen Kommunikationsleitungen zwischen den einzelnen Leiterplatten1 "},
                                          {"code":"3051","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Support1 "},
                                          {"code":"3052","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Support1 "},
                                          {"code":"3053","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Support1"},
                                          {"code":"3054","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Support1 "},
                                          {"code":"3055","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Das Gerät neu starten1 "},
                                          {"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 kontrollieren1 "},
                                          {"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 kontaktieren "},
                                          {"code":"3061","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Keine Maßnahme notwendig1 "},
                                          {"code":"3062","type":"Interne Temperaturstörung","description":"Interne Systemstörung","action":"Keine Maßnahme notwendig1 "},
                                          {"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 notwendig1 "},
                                          {"code":"3065","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Keine Maßnahme notwendig1 "},
                                          {"code":"3066","type":"Interne Parametrierungsstörung","description":"Interne Systemstörung","action":"Support kontaktieren "},
                                          {"code":"3068","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Das Gerät neu starten1 "},
                                          {"code":"3070","type":"Interne Systemstörung ","description":"Interne AC-Systemstörung","action":"Gerät führt mehrfach eine Prüfung durch und schaltet generell auf1 "},
                                          {"code":"3071","type":"Interne Systemstörung ","description":"Interne AC-Systemstörung","action":"Gerät führt mehrfach eine Prüfung durch und schaltet generell auf1 "},
                                          {"code":"3072","type":"Interne Systemstörung ","description":"Interne AC-Systemstörung","action":"Gerät führt mehrfach eine Prüfung durch und schaltet generell auf1 "},
                                          {"code":"3073","type":"Interne Systemstörung ","description":"Interne AC-Systemstörung","action":"Gerät führt mehrfach eine Prüfung durch und schaltet generell auf1 "},
                                          {"code":"3074","type":"Interne Systemstörung ","description":"Interne AC-Systemstörung","action":"Gerät führt mehrfach eine Prüfung durch und schaltet generell auf1 "},
                                          {"code":"3075","type":"Interne Systemstörung ","description":"Interne AC-Systemstörung","action":"Gerät führt mehrfach eine Prüfung durch und schaltet generell auf1 "},
                                          {"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 starten1 "},
                                          {"code":"3080","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Das Gerät neu starten1"},
                                          {"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":"Support1 "},
                                          {"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üfen "},
                                          {"code":"3092","type":"Interne Systemstörung ","description":"Lüfter nicht korrekt angeschlossen","action":"Lüfter-Steckverbindungen prüfen "},
                                          {"code":"3093","type":"Interne Parametrierungsstörung","description":"Falsche Parametrierung","action":"Support kontaktieren "},
                                          {"code":"3094","type":"Interne Parametrierungsstörung","description":"Falsche Parametrierung","action":"Support kontaktieren "},
                                          {"code":"3095","type":"Interne Parametrierungsstörung","description":"Falsche Kalibrierung","action":"Support kontaktieren "},
                                          {"code":"3096","type":"Information","description":"Falsche Dimensionierung der PV-Generator","action":"Generatorinstallation/ -auslegung kontrollieren "},
                                          {"code":"3097","type":"Interne Parametrierungsstörung","description":"Falsche Parametrierung","action":"Support kontaktieren "},
                                          {"code":"3098","type":"Information","description":"Netz nicht vorhanden","action":"Keine Maßnahme notwendig1 "},
                                          {"code":"3101","type":"Information","description":"Interne Systemstörung","action":"Keine Maßnahme notwendig1 "},
                                          {"code":"3102","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Keine Maßnahme notwendig1 "},
                                          {"code":"3103","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Keine Maßnahme notwendig1 "},
                                          {"code":"3104","type":"Interne Systemstörung ","description":"Interne AC-Systemstörung","action":"Gerät führt mehrfach eine Prüfung durch und schaltet generell auf1 "},
                                          {"code":"3105","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Keine Maßnahme notwendig1"},
                                          {"code":"3106","type":"Information","description":"Falsche Eingabe am KomBoard oder falsche Verdrahtung","action":"Eingabe oder Verdrahtung korriegieren1 "},
                                          {"code":"4100","type":"Interne Systemstörung ","description":"Interner Softwarefehler","action":"Support1 "},
                                          {"code":"4101","type":"Interne Systemstörung ","description":"Erhöhter DC-Strom L1","action":"Support1 "},
                                          {"code":"4102","type":"Interne Systemstörung ","description":"Erhöhter DC-Strom L2","action":"Support1 "},
                                          {"code":"4103","type":"Interne Systemstörung ","description":"Erhöhter DC-Strom L3","action":"Support1 "},
                                          {"code":"4104","type":"Interne Systemstörung ","description":"Erhöhter DC-Strom L1","action":"Support1 "},
                                          {"code":"4105","type":"Interne Systemstörung ","description":"Erhöhter DC-Strom L2","action":"Support1 "},
                                          {"code":"4106","type":"Interne Systemstörung ","description":"Erhöhter DC-Strom L3","action":"Support1 "},
                                          {"code":"4110","type":"Interne Systemstörung ","description":"Interner Softwarefehler","action":"Support1 "},
                                          {"code":"4121","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Support1 "},
                                          {"code":"4122","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Support1 "},
                                          {"code":"4130","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Support1 "},
                                          {"code":"4131","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Support1 "},
                                          {"code":"4150","type":"Information","description":"Erhöhte Netzfrequenz. Oft gehäuftes Auftreten am Morgen und am Abend.","action":"Installation kontrollieren1 "},
                                          {"code":"4151","type":"Externe Netzstörung","description":"Zu niedrige Netzfrequenz","action":"Installation kontrollieren1 "},
                                          {"code":"4157","type":"Externe Netzstörung","description":"Erhöhte Netzfrequenz","action":"Keine Maßnahme notwendig1 "},
                                          {"code":"4158","type":"Externe Netzstörung","description":"Erhöhte Netzfrequenz","action":"Installation kontrollieren1 "},
                                          {"code":"4159","type":"Externe Netzstörung","description":"Erhöhte Netzfrequenz","action":"Installation kontrollieren1 "},
                                          {"code":"4160","type":"Externe Netzstörung","description":"Erhöhte Netzfrequenz","action":"Installation kontrollieren1 "},
                                          {"code":"4161","type":"Externe Netzstörung","description":"Zu niedrige Netzfrequenz","action":"Installation kontrollieren1 "},
                                          {"code":"4170","type":"Information","description":"Eine Phase ist nicht angeschlossen. Ein Sicherungsautomat wurde nicht eingeschaltet.","action":"Installation kontrollieren1 "},
                                          {"code":"4180","type":"Externe Netzstörung","description":"PE-Leitung nicht angeschlossen","action":"Installation kontrollieren1"},
                                          {"code":"4181","type":"Externe Netzstörung","description":"PE-Leitung nicht angeschlossen","action":"Installation kontrollieren1 "},
                                          {"code":"4185","type":"Interne Systemstörung ","description":"Interner Softwarefehler","action":"Support1 "},
                                          {"code":"4200","type":"Externe Netzstörung","description":"Erhöhte Netzspannung","action":"Installation kontrollieren1 "},
                                          {"code":"4201","type":"Externe Netzstörung","description":"Zu niedrige Netzspannung","action":"Installation kontrollieren1 "},
                                          {"code":"4210","type":"Externe Netzstörung","description":"Erhöhte Netzspannung","action":"Installation kontrollieren1 "},
                                          {"code":"4211","type":"Externe Netzstörung","description":"Zu niedrige Netzspannung","action":"Installation kontrollieren1 "},
                                          {"code":"4220","type":"Externe Netzstörung","description":"Spannungsmittelwert der letzten 10 Min. zu groß","action":"Installation kontrollieren1 "},
                                          {"code":"4221","type":"Externe Netzstörung","description":"Spannungsmittelwert der letzten 10 Min. zu groß","action":"Installation kontrollieren1 "},
                                          {"code":"4290","type":"Externe Netzstörung","description":"Die Netzfrequenz hat sich zu schnell verändert.","action":"Generatorinstallation kontrollieren1 "},
                                          {"code":"4300","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Support1 "},
                                          {"code":"4301","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Support1 "},
                                          {"code":"4302","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Support1 "},
                                          {"code":"4303","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Support1 "},
                                          {"code":"4304","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Support1 "},
                                          {"code":"4321","type":"Interne Parametrierungsstörung","description":"Defektes EEPROM unerlaubte Speicherzugriffe","action":"Support1 "},
                                          {"code":"4322","type":"Interne Parametrierungsstörung","description":"Softwarefehler","action":"Support kontaktieren "},
                                          {"code":"4323","type":"Interne Parametrierungsstörung","description":"Fehlerstrom","action":"Support1 "},
                                          {"code":"4324","type":"Interne Parametrierungsstörung","description":"Parameterfehler","action":"Support1 "},
                                          {"code":"4325","type":"Interne Parametrierungsstörung","description":"Parameterfehler","action":"Support1 "},
                                          {"code":"4340","type":"-","description":"","action":""},
                                          {"code":"4354","type":"Externer Fehlerstrom","description":"Fehlerstrom","action":"Generatorinstallation kontrollieren1 "},
                                          {"code":"4360","type":"-","description":"","action":""},
                                          {"code":"4421","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Support1 "},
                                          {"code":"4422","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Support kontaktieren. "},
                                          {"code":"4424","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Support1"},
                                          {"code":"4425","type":"Interne Parametrierungsstörung","description":"Parameterfehler","action":"Support1 "},
                                          {"code":"4450","type":"Externe Isolationsfehler","description":"Isolationsfehler","action":"Generatorinstallation kontrollieren1 "},
                                          {"code":"4451","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Support kontaktieren "},
                                          {"code":"4475","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Support1 "},
                                          {"code":"4476","type":"Information","description":"Schwache PV-Versorgung (z.B. morgens)","action":"Keine Maßnahme notwendig1 "},
                                          {"code":"4800","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Support1 "},
                                          {"code":"4801","type":"Interne Systemstörung ","description":"Isolationsfehler","action":"Support1 "},
                                          {"code":"4802","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Support1 "},
                                          {"code":"4803","type":"Interne Systemstörung ","description":"Isolationsfehler","action":"Support1 "},
                                          {"code":"4804","type":"Interne Systemstörung ","description":"Isolationsfehler","action":"Support1 "},
                                          {"code":"4805","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Support1 "},
                                          {"code":"4810","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Support1 "},
                                          {"code":"4850","type":"Interne Systemstörung ","description":"EVU","action":"Support1 "},
                                          {"code":"4870","type":"-","description":"","action":""},
                                          {"code":"7500","type":"Interne Systemstörung ","description":"Interne Systemstörung","action":"Support1 "},
                                          {"code":"7503","type":"Information","description":"Interne Systemstörung","action":"Keine Maßnahme notwendig1"}
                                          ];
                                          
                                          
                                          
                                          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
                                                  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);
                                                      var msgtext = 'Code: '+msg.type+' Typ: '+msg.type+' Beschreibung: '+msg.description+' Maßnahme: '+msg.action
                                                      log('message' + i+1 + ': ' + date + ' '  + code + ' '  + env + ' '+msgtext);
                                                      setState(datenpunkt+i, msgtext, 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 = a.getHours();
                                            var min = a.getMinutes();
                                            var sec = a.getSeconds();
                                            var time = date + ' ' + month + ' ' + year + ' ' + hour + ':' + min + ':' + sec ;
                                            return time;
                                          }
                                          getEvents();
                                          
                                          
                                          Homoran 2 Replies Last reply Reply Quote 0
                                          • Homoran
                                            Homoran Global Moderator Administrators @OliverIO last edited by

                                            @OliverIO
                                            Danke!

                                            war jetzt paar Tage auf Dienstreise - muss erst mal wieder "runterkommen".
                                            Werde ich dann schnellstmöglich testen

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate
                                            FAQ Cloud / IOT
                                            HowTo: Node.js-Update
                                            HowTo: Backup/Restore
                                            Downloads
                                            BLOG

                                            825
                                            Online

                                            31.9k
                                            Users

                                            80.1k
                                            Topics

                                            1.3m
                                            Posts

                                            parser
                                            3
                                            108
                                            6487
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo