Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Luftdate.info per Skript einlesen

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Luftdate.info per Skript einlesen

    This topic has been deleted. Only users with topic management privileges can see it.
    • L
      Linedancer last edited by

      Hallo,

      danke für dieses hilfreiche Script.

      Es funktioniert, holt die Daten, aber es bringt jedes mal die Javascript zum Stillstand. Hab ich leider erst gemerkt als einiges andere nicht wie erwartet funktioniert hatte.

      Hab dem Luftdaten Script jetzt eine eigene Instanz spendiert sodas der Rest wenigstens unbeeinflusst läuft.

      Hier mien Fehlerlog:

      ! host.HTPC 2017-08-07 13:53:51.875 info Restart adapter system.adapter.javascript.1 because enabled
      ! host.HTPC 2017-08-07 13:53:51.875 error instance system.adapter.javascript.1 terminated with code 6 (uncaught exception)
      ! javascript.1 2017-08-07 13:53:15.125 info script.js.common.Luftdaten: Luftdaten aktualisiert
      ! javascript.1 2017-08-07 13:53:15.125 info script.js.common.Luftdaten: registered 1 subscription and 1 schedule
      ! javascript.1 2017-08-07 13:53:15.125 info Start javascript script.js.common.Luftdaten
      ! javascript.1 2017-08-07 13:52:55.562 info received all objects
      ! javascript.1 2017-08-07 13:52:52.609 info received all states
      ! javascript.1 2017-08-07 13:52:43.812 info requesting all objects
      ! javascript.1 2017-08-07 13:52:43.812 info requesting all states
      ! javascript.1 2017-08-07 13:52:43.797 info starting. Version 3.3.11 in C:/iobroker/node_modules/iobroker.javascript, node: v4.4.7
      ! host.HTPC 2017-08-07 13:52:39.952 info instance system.adapter.javascript.1 started with pid 5740
      ! host.HTPC 2017-08-07 13:52:09.906 info Restart adapter system.adapter.javascript.1 because enabled
      ! host.HTPC 2017-08-07 13:52:09.906 error instance system.adapter.javascript.1 terminated with code 0 (OK)
      ! javascript.1 2017-08-07 13:52:09.718 error at emitNone (events.js:72:20)
      ! javascript.1 2017-08-07 13:52:09.718 error at IncomingMessage.g (events.js:260:16)
      ! javascript.1 2017-08-07 13:52:09.718 error at IncomingMessage. (C:\iobroker\node_modules\iobroker.javascript\node_modules\request\request.js:1091:12)
      ! javascript.1 2017-08-07 13:52:09.718 error at Request.emit (events.js:169:7)
      ! javascript.1 2017-08-07 13:52:09.718 error at emitOne (events.js:77:13)
      ! javascript.1 2017-08-07 13:52:09.718 error at Request. (C:\iobroker\node_modules\iobroker.javascript\node_modules\request\request.js:1171:10)
      ! javascript.1 2017-08-07 13:52:09.718 error at Request.emit (events.js:172:7)
      ! javascript.1 2017-08-07 13:52:09.718 error at emitTwo (events.js:87:13)
      ! javascript.1 2017-08-07 13:52:09.718 error at Request.self.callback (C:\iobroker\node_modules\iobroker.javascript\node_modules\request\request.js:188:22)
      ! javascript.1 2017-08-07 13:52:09.718 error at Request._callback (script.js.common.Luftdaten:146:53)
      ! javascript.1 2017-08-07 13:52:09.718 error TypeError: Cannot read property 'sensor' of undefined
      ! javascript.1 2017-08-07 13:52:09.718 error uncaught exception: Cannot read property 'sensor' of undefined
      ! javascript.1 2017-08-07 13:51:18.390 info script.js.common.Luftdaten: Luftdaten aktualisiert
      ! javascript.1 2017-08-07 13:51:15.968 info script.js.common.Luftdaten: registered 1 subscription and 1 schedule
      ! javascript.1 2017-08-07 13:51:15.890 info Start javascript script.js.common.Luftdaten
      ! javascript.1 2017-08-07 13:51:13.890 info received all objects
      ! javascript.1 2017-08-07 13:51:10.453 info received all states
      ! javascript.1 2017-08-07 13:51:02.171 info requesting all objects
      ! javascript.1 2017-08-07 13:51:02.156 info requesting all states
      ! javascript.1 2017-08-07 13:51:02.140 info starting. Version 3.3.11 in C:/iobroker/node_modules/iobroker.javascript, node: v4.4.7
      ! host.HTPC 2017-08-07 13:50:58.297 info instance system.adapter.javascript.1 started with pid 2968
      ! host.HTPC 2017-08-07 13:50:28.280 info Restart adapter system.adapter.javascript.1 because enabled

      gibt's hier Ideeen wie das zu beheben wäre?

      1 Reply Last reply Reply Quote 0
      • P
        pix last edited by

        Hallo,

        das Fehlerhandling klappt noch nicht so recht.

        Cannot read property 'sensor' of undefined

        Wenn der Sensor mal keine Daten liefert, dann gibt es Probleme. Neulich war die SensorID meines nächsten Sensors auf Luftdaten.inof komplett verschwunden. Musste ich mir einen neuen Nächsten suchen….

        Ich kann mal versuchen, mit einer weiter Abfrage einen Fehler beim Abarbeiten zu verhindern. Ich probiere es aus.

        try {
                request(options, function (error, response, body) {
                    if (!error && response.statusCode == 200) {              // kein Fehler, Inhalt in body
                        var p1, p2;
                        var json = JSON.parse(body);
                        if (logging) log('JSON: ' + JSON.stringify(json));
                        setState(pfad + 'json', JSON.stringify(json));
                        if (json[0].sensor.id.toString() != undefined) {         // <--------- Abfrage hier neu
                            setState(pfad + 'sensor_id', json[0].sensor.id.toString());
                            // ... hier sind noch mehr Daten
                        } else log('Fehler beim Parsen!", 'error');                 // <---------  Anweisung hier neu
                    } else {
                        log("StatusCode = "+response.statusCode);
                        log(error,'error');                               // Error beim Einlesen
                    }
                });
                log('Luftdaten aktualisiert');
            } catch (e) {
                log('Fehler (try) Luftdaten.info: ' + e, 'error');
            }
        

        Gruß

        Pix

        1 Reply Last reply Reply Quote 0
        • P
          pix last edited by

          Hallo,

          habe nachgesehen und den gleichen Fehler gestern zwei drei mal gehabt:

          2017-08-06 08:00:24.939  - [31merror[39m: javascript.2 uncaught exception: Cannot read property 'value' of undefined
          2017-08-06 08:00:24.946  - [31merror[39m: javascript.2 TypeError: Cannot read property 'value' of undefined
              at Request._callback (script.js.Test.Test_Luftdaten:937:103)
              at Request.self.callback (/Users/pix/Documents/iobroker/node_modules/request/request.js:188:22)
              at emitTwo (events.js:87:13)
              at Request.emit (events.js:172:7)
              at Request. <anonymous>(/Users/pix/Documents/iobroker/node_modules/request/request.js:1171:10)
              at emitOne (events.js:77:13)
              at Request.emit (events.js:169:7)
              at IncomingMessage. <anonymous>(/Users/pix/Documents/iobroker/node_modules/request/request.js:1091:12)
              at IncomingMessage.g (events.js:260:16)
              at emitNone (events.js:72:20)
              at IncomingMessage.emit (events.js:166:7)
          2017-08-06 08:00:25.212  - [31merror[39m: host.MacMini.local instance system.adapter.javascript.2 terminated with code 0 (OK)
          2017-08-06 08:00:25.213  - [32minfo[39m: host.MacMini.local Restart adapter system.adapter.javascript.2 because enabled</anonymous></anonymous> 
          

          Bei mir sieht das Skript schon so aus:

          ! ````
          /* Luftdaten
          ! Liest Daten eines Feinstaub-Sensors
          von luftdaten.info aus
          ! http://api.luftdaten.info/v1/sensor/####/
          ! 05.06.2017 erstellt von Pix
          10.07.2017 Code angepasst nach Fehler
          12.07.2017 Fehler abfangen, wenn JSON leer
          30.07.2017 Zoomstufe für VIS
          */
          ! const sensorid = "4395"; //
          ! const logging = false;
          const instanz = 'javascript.' + instance + '.';
          const pfad = 'Luftdaten.' + sensorid + '.';
          const cronStr = "14,29,44,59 * * * *";
          ! function createStates () {
          // Nur für VIS Bedienung
          createState('Luftdaten.Zoom', {
          name: 'Zoom',
          desc: 'Zoomstufe Karte in VIS',
          type: 'number',
          min: 0,
          max: 13,
          def: 11
          }, function () {
          if (logging) log('Objekt ' + instanz + 'Luftdaten.Zoom erstellt');
          });

          // Allgemein   
          createState(pfad + 'json', {
              name: 'JSON',
              desc: 'JSON Ausgabe',
              type: 'string',
              role: 'json'
          }, function () {
              if (logging) log('Objekt ' + instanz + pfad + 'json erstellt');
          });
          

          ! createState(pfad + 'sensor_id', {
          name: 'ID',
          desc: 'ID-Nummer des Sensors',
          type: 'string',
          role: 'text'
          }, function () {
          if (logging) log('Objekt ' + instanz + pfad + 'sensor_id erstellt');
          });

          createState(pfad + 'sensor_type', {
              name: 'Typ',
              desc: 'Type des Sensors',
              type: 'string',
              role: 'text'
          }, function () {
              if (logging) log('Objekt ' + instanz + pfad + 'sensor_type erstellt');
          });
          

          ! createState(pfad + 'location', {
          name: 'Ort',
          desc: 'Location des Sensors',
          type: 'string',
          role: 'text'
          }, function () {
          if (logging) log('Objekt ' + instanz + pfad + 'location erstellt');
          });

          createState(pfad + 'lat', {
              name: 'Latitude',
              desc: 'Geographische Lage des Sensors - Breite',
              type: 'number',
              unit: '°',
              role: 'val'
          }, function () {
              if (logging) log('Objekt ' + instanz + pfad + 'latitude erstellt');
          });
          
          createState(pfad + 'lon', {
              name: 'Longitude',
              desc: 'Geographische Lage des Sensors - Länge',
              type: 'number',
              unit: '°',
              role: 'val'
          }, function () {
              if (logging) log('Objekt ' + instanz + pfad + 'longitude erstellt');
          });
          
          createState(pfad + 'country', {
              name: 'Country Code',
              desc: 'Geographische Lage des Sensors - Landeskürzel',
              type: 'string',
              role: 'text'
          }, function () {
              if (logging) log('Objekt ' + instanz + pfad + 'country erstellt');
          });
          
          createState(pfad + 'Messung.timestamp', {
              name: 'Zeitstempel',
              desc: 'Zeitstempel der Messung',
              type: 'string',
              role: 'text'
          }, function () {
              if (logging) log('Objekt ' + instanz + pfad + 'timestamp erstellt');
          });
          
          createState(pfad + 'Messung.P1', {
              name: 'P1',
              desc: 'Messung P1',
              type: 'number',
              role: 'val',
              custom: {
                  "influxdb.0": {
                  "enabled": true,
                  "changesOnly": true,
                  "debounce": "",
                  "retention": 63072000
                  }
              }
          }, function () {
              if (logging) log('Objekt ' + instanz + pfad + 'Messung.P1 erstellt');
          });
          

          ! createState(pfad + 'Messung.P2', {
          name: 'P2',
          desc: 'Messung P2',
          type: 'number',
          role: 'val',
          custom: {
          "influxdb.0": {
          "enabled": true,
          "changesOnly": true,
          "debounce": "",
          "retention": 63072000
          }
          }
          }, function () {
          if (logging) log('Objekt ' + instanz + pfad + 'Messung.P2 erstellt');
          });
          ! createState(pfad + 'forceRefresh', {
          name: 'aktualisieren',
          desc: 'Werte neu einlesen',
          type: 'boolean',
          def: false,
          role: 'indicator'
          }, function () {
          if (logging) log('Objekt ' + instanz + pfad + 'forceRefresh erstellt');
          });
          }
          ! function readData() {
          var request = require('request');
          var options = {
          url: 'http://api.luftdaten.info/v1/sensor/' + sensorid + '/',
          headers: {
          'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; WOW64; rv:40.0) Gecko/20100101 Firefox/40.1'
          }
          };
          try {
          request(options, function (error, response, body) {
          if (!error && response.statusCode == 200) { // kein Fehler, Inhalt in body
          var p1, p2;
          var json = JSON.parse(body);
          if (logging) log('JSON: ' + JSON.stringify(json));

                      if (JSON.stringify(json).length <= 2) {
                          log ('JSON Daten sind nicht empfangbar', 'warn');
                      } else {
                          setState(pfad + 'json', JSON.stringify(json));
                          setState(pfad + 'sensor_id', json[0].sensor.id.toString());
                          setState(pfad + 'sensor_type', json[0].sensor.sensor_type.name + ' by ' + json[0].sensor.sensor_type.manufacturer);
                          setState(pfad + 'location', json[0].location.id.toString());
                          setState(pfad + 'lat', parseFloat(json[0].location.latitude));
                          setState(pfad + 'lon', parseFloat(json[0].location.longitude));
                          setState(pfad + 'country', json[0].location.country);
                          setState(pfad + 'Messung.timestamp', json[0].timestamp);
          
                          if (json[0].sensordatavalues[0].value !== undefined && json[0].sensordatavalues[1].value !== undefined) {
                              p1 = json[0].sensordatavalues[0].value;
                              p2 = json[0].sensordatavalues[1].value;
          
                              setState(pfad + 'Messung.P1', parseFloat(p1));
                              setState(pfad + 'Messung.P2', parseFloat(p2));
                              log('Luftdaten aktualisiert');
                          } else {
                              log('Luftdaten nicht aktualisiert, da keine Messdaten', 'warn');
                          }
                      }
                  } else {
                      log("StatusCode = " + response.statusCode);
                      log(error, 'error');                               // Error beim Einlesen
                  }
              });
          } catch (e) {
              log('Fehler (try) Luftdaten.info: ' + e, 'error');
          }
          

          }

          ! // regelmässige Wiederholungen
          schedule(cronStr, readData);
          ! // einmaliger Start bei Skriptstart
          createStates();
          setTimeout(readData, 1500);
          ! // Start beim Setzen auf true
          on(instanz + pfad + 'forceRefresh', function (obj) {
          if (!obj.state.ack && obj.state.val) readData();
          });
          ! ````

          Vielleicht kann noch jemand helfen?

          Gruß

          Pix

          1 Reply Last reply Reply Quote 0
          • paul53
            paul53 last edited by

                                if (json[0].sensordatavalues[0].value !== undefined && json[0].sensordatavalues[1].value !== undefined) {
            

            Ändere mal die Abfrage in

                                if (json[0].sensordatavalues[0] && json[0].sensordatavalues[1]) {
            
            
            1 Reply Last reply Reply Quote 0
            • P
              pix last edited by

              Vielen Dank, paul53.

              Z.Zt. ist mein Lieblingssender wieder offline. Daher

              20:29:00.784	[warn]	javascript.2 script.js.Test.Test_Luftdaten: JSON Daten sind nicht empfangbar
              

              Es greift also die Abfrage:

                              if (JSON.stringify(json).length <= 2) {
                                  log ('JSON Daten sind nicht empfangbar', 'warn');
                              }
              

              Wenn der Sender wieder online ist, werde ich die Code Korrektur prüfen können.

              Gruß

              Pix

              1 Reply Last reply Reply Quote 0
              • L
                Linedancer last edited by

                Hallo Pix,

                Hab die Änderung eingebaut. Scheint zu kaufen, allerdings kann ich noch nicht testen, da meine gewählte ID jetzt wieder sendet.

                Dank dir

                1 Reply Last reply Reply Quote 0
                • P
                  pix last edited by

                  Hier - für die Vollständigkeit - eine Darstellung mit Grafana.

                  http://forum.iobroker.net/viewtopic.php … ana#p99946

                  Pix

                  1 Reply Last reply Reply Quote 0
                  • S
                    Solear last edited by

                    @fruehwi:

                    Nun habe ich mir noch einen zweiten Sensor gebaut der in der Wohnung verbaut ist. (Kachelofen Überwachung) Dieser soll nicht die Daten an den Luftdaten.info Server senden.

                    Daher möchte ich die Daten per Parser auslesen (IP-Sensor/values).

                    Laut https://regex101.com/habe ich die Kombinationen gefunden

                    PM2.5

                    (?:PM2[^]*)(?=[^]* class='r'>)([0-9.]{1,})
                    

                    PM10

                    (?:PM10[^]*)(?=[^]* class='r'>)([0-9.]{1,})
                    

                    Temperatur

                    (?:Temper[^]*)(?=[^]* class='r'>)([0-9.]{1,})
                    

                    Luftfreuchte

                    (?:rel[^]*)(?=[^]* class='r'>)([0-9.]{1,})
                    

                    Hoffe das mir jemand helfen kann. `

                    Hallo,

                    bist du hier (oder jemand anderes) schon weiter?

                    Ich möchte gerne einen Feinstaubsensor im Haus installieren und in iobroker auswerten, aber ohne über eine Cloud zu gehen. Analog zu den Dingern wie es die Luftreiniger haben (Xiaomi Air Purifer etc).

                    Oder gibt es einen anderen Staubsensor den man einbinden kann?

                    1 Reply Last reply Reply Quote 0
                    • A
                      Ace-k last edited by

                      also erstmal , coole sache.

                      Funktioniert und das Skript liest die Daten aus.

                      Werde mir auch selber noch eine Station bauen.

                      aber ich benötige bitte mal die erklärung der Daten.

                      p1= PM10 ?

                      p2= Pm2,5 ?

                      Welcher Wert und welches Widget stellt mir die 24h anzeige dar?

                      Besten Dank

                      1 Reply Last reply Reply Quote 0
                      • A
                        Ace-k last edited by

                        Hallo

                        nach Rücksprache, nunalles in der History und dann per Flot.

                        Wenn ich die Zahnräder anklicke kann ich zwar "aktivieren" aber nicht speichern. Er macht einfach nix.

                        Andere Sachen speichert er, aber nicht P1 und P2.

                        Woran kann das liegen?
                        2562_32.jpg

                        1 Reply Last reply Reply Quote 0
                        • P
                          pix last edited by

                          Hallo Ace-k,

                          ich verstehe dein Problem nicht. Wenn du in das Zahnrad klickst, die Speicherdauer auswählst und aktivierst (Haken links oben setzen), dann werden die eingelesenen Werte in der Datenbank gespeichert. Nach einigen Stunden (ein paar Durchgängen des Einlesens) kannst du mit Flot eine Grafik erstellen. 261_bildschirmfoto_2018-02-07_um_18.41.45.png
                          Gruß

                          Pix~~@Ace-k:~~

                          aber ich benötige bitte mal die erklärung der Daten.

                          p1= PM10 ?

                          p2= Pm2,5 ?

                          Welcher Wert und welches Widget stellt mir die 24h anzeige dar? `
                          Infos zu PM10 und PM2,5 https://www.umweltbundesamt.de/themen/luft/luftschadstoffe/feinstaub

                          Es gibt keinen 24 Stunden Wert, der wird nicht in der API von luftdaten.info zur Verfügung gestellt und kann somit nicht eingelesen werden. Wie oben erklärt, kannst du mit der ioBroker History-FUnktion selbst einen Chart erzeugen (und im iFrame Widget von VIS anzeigen), Mittelwerte berechnen, usw.

                          Gruß

                          Pix

                          1 Reply Last reply Reply Quote 0
                          • A
                            Ace-k last edited by

                            Ich kann wenn ich den Haken bei aktivieren setze nicht auf speichern klicken .

                            1 Reply Last reply Reply Quote 0
                            • C
                              chris last edited by

                              Hallo,

                              das Problem mit dem speichern hatte ich auch.

                              Pix verwendet wohl influxdb und du history. Tausche im Script "influxdb.0" gegen "history.0".

                              Ich musste allerdings unter Objekte den Ordner "Luftdaten" einmal löschen und und das Script dann neu starten.

                              Speichern war dann automatisch aktiviert.

                              Gruß

                              Chris

                              1 Reply Last reply Reply Quote 0
                              • A
                                Ace-k last edited by

                                da wollte ich auch gerade mal reinschauen ob im Skript evtl was anderes ist.

                                aber ob ich genau draufgekommen wäre :lol:

                                besten dank. es scheint zu gehen!

                                1 Reply Last reply Reply Quote 0
                                • P
                                  pix last edited by

                                  @chris:

                                  Hallo,

                                  das Problem mit dem speichern hatte ich auch.

                                  Pix verwendet wohl influxdb und du history. Tausche im Script "influxdb.0" gegen "history.0".

                                  Ich musste allerdings unter Objekte den Ordner "Luftdaten" einmal löschen und und das Script dann neu starten.

                                  Speichern war dann automatisch aktiviert.

                                  Gruß

                                  Chris `
                                  Darauf hätte ich auch mal kommen können. Danke für den Hinweis.

                                  Gruß

                                  Pix

                                  1 Reply Last reply Reply Quote 0
                                  • P
                                    pix last edited by

                                    Hallo,

                                    die Daten des eigenen Sensors und fremder Geräte lassen sich auch über Apollon77's neuen iobroker.ham - Adapter einlesen.

                                    Folgt diesem Link: viewtopic.php?f=36&t=14972&p=156438#p156438

                                    Gruß

                                    Pix

                                    1 Reply Last reply Reply Quote 0
                                    • umbm
                                      umbm last edited by

                                      Es gibt inzwischen einen Adapter.

                                      Da ich kein Doppelposting machen möchte, bitte hier lesen

                                      viewtopic.php?f=8&t=9865&p=157989#p157989

                                      1 Reply Last reply Reply Quote 0
                                      • Segway
                                        Segway last edited by

                                        Wahrscheinlich völlig falsche Widgets genommen - aber egal 🙂 mir gefällts - DANKE pix

                                        1043_bildschirmfoto_2018-08-09_um_18.12.33.png

                                        1 Reply Last reply Reply Quote 0
                                        • Segway
                                          Segway last edited by

                                          Anmerkung:

                                          Im Log finde ich immer folgende Meldungen - da wird die verbindung zur DB verloren:

                                          javascript.0	2018-08-12 10:56:16.427	warn	Reconnection to DB.
                                          javascript.0	2018-08-12 10:56:16.404	warn	Reconnection to DB.
                                          host.RaPi03-FHEM-Prod	2018-08-12 10:55:15.029	info	instance system.adapter.luftdaten.0 terminated with code 0 (OK)
                                          luftdaten.0	2018-08-12 10:55:04.376	info	starting. Version 0.0.6 in /opt/iobroker/node_modules/iobroker.luftdaten, node: v6.14.3
                                          

                                          Ist das richtig so ?

                                          1 Reply Last reply Reply Quote 0
                                          • S
                                            schittl last edited by

                                            Hallo pix,

                                            erstmal vielen Dank für das geniale Skript. Wie immer von Dir super Arbeit. Ich habe nur ein kleines Problem. Falls der Sensor nicht erreichbar ist, bekomme ich folgenden Fehler und JS startet sich immer neu. Kann man das irgendwie umgehen?

                                            ! javascript.0 2018-08-13 11:28:36.350 error at Socket.emit (events.js:188:7)
                                            ! javascript.0 2018-08-13 11:28:36.350 error at emitOne (events.js:96:13)
                                            ! javascript.0 2018-08-13 11:28:36.350 error at Socket.socketErrorListener (_http_client.js:310:9)
                                            ! javascript.0 2018-08-13 11:28:36.350 error at ClientRequest.emit (events.js:188:7)
                                            ! javascript.0 2018-08-13 11:28:36.350 error at emitOne (events.js:96:13)
                                            ! javascript.0 2018-08-13 11:28:36.350 error at Request.onRequestError (/opt/iobroker/node_modules/iobroker.javascript/node_modules/request/request.js:878:8)
                                            ! javascript.0 2018-08-13 11:28:36.350 error at Request.emit (events.js:188:7)
                                            ! javascript.0 2018-08-13 11:28:36.350 error at emitOne (events.js:96:13)
                                            ! javascript.0 2018-08-13 11:28:36.350 error at self.callback (/opt/iobroker/node_modules/iobroker.javascript/node_modules/request/request.js:186:22)
                                            ! javascript.0 2018-08-13 11:28:36.350 error at Request._callback (script.js.XSkripte.Luftdaten:613:47)
                                            ! javascript.0 2018-08-13 11:28:36.350 error TypeError: Cannot read property 'statusCode' of undefined
                                            ! javascript.0 2018-08-13 11:28:36.349 error uncaught exception: Cannot read property 'statusCode' of undefined

                                            Mein Skript sieht aktuell so aus (Auszug):

                                            ! ````
                                            try {
                                            request(options, function (error, response, body) {
                                            if (!error && response.statusCode == 200) { // kein Fehler, Inhalt in body
                                            var p1, p2, note;
                                            var json = JSON.parse(body);
                                            if (logging) log('body: ' + body);

                                                        if (logging) log('JSON: ' + JSON.stringify(json));
                                                        setState(pfad + 'json', JSON.stringify(json));
                                            
                                                        if (json[0].sensor.id.toString() !== undefined) {
                                                        .....
                                            

                                            ! ````

                                            Aktuell scheint die Seite gar nicht mehr zu gehen. Kommt gar nix zurück…

                                            Danke Dir und vg

                                            Falk

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            818
                                            Online

                                            31.7k
                                            Users

                                            79.7k
                                            Topics

                                            1.3m
                                            Posts

                                            18
                                            38
                                            7169
                                            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