Weiter zum Inhalt
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Hell
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dunkel
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

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

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. JavaScript
  5. Lightmanager, (v9.x) json Datei auslesen und DP erzeugen

NEWS

  • Neuer ioBroker-Blog online: Monatsrückblick März/April 2026
    BluefoxB
    Bluefox
    8
    1
    776

  • Verwendung von KI bitte immer deutlich kennzeichnen
    HomoranH
    Homoran
    10
    1
    583

  • Monatsrückblick Januar/Februar 2026 ist online!
    BluefoxB
    Bluefox
    18
    1
    1.1k

Lightmanager, (v9.x) json Datei auslesen und DP erzeugen

Geplant Angeheftet Gesperrt Verschoben JavaScript
3 Beiträge 2 Kommentatoren 405 Aufrufe 4 Beobachtet
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • D Offline
    D Offline
    dos1973
    schrieb am zuletzt editiert von
    #1

    Hallo,

    das Thema wurde bereits in der Vergangenheit erfolgreich gelöst und lief auch hervorragend.
    Alter Thread

    Allerdings hat JBMedia den Lightmanager upgedatet (v9.x) und die json Datei hat sich verändert. Das Script kann die json Datei nicht mehr korrekt auslesen.

    könnte sich das jemand anschauen.

    die neue json Datei, welche ausgelesen werden soll.

    {
      "chenabled": "4095",
      "chhead": "0",
      "channel0": {
        "temperature": "24.6",
        "humidity": "0"    
      },
      "channel1": {
        "temperature": "",
        "humidity": ""
      },
      "channel2": {
        "temperature": "24.6",
        "humidity": "35"
      },
      "channel3": {
        "temperature": "",
        "humidity": ""
      },
      "channel4": {
        "temperature": "",
        "humidity": ""
      },
      "channel5": {
        "temperature": "",
        "humidity": ""
      },
      "channel6": {
        "temperature": "24.6",
        "humidity": "43"
      },
      "channel7": {
        "temperature": "24.5",
        "humidity": "39"
      },
      "channel8": {
        "temperature": "23.6",
        "humidity": "47"
      },
      "channel9": {
        "temperature": "23.8",
        "humidity": "41"
      },
      "channel10": {
        "temperature": "23.9",
        "humidity": "40"
      },
      "channel11": {
        "temperature": "17.3",
        "humidity": "45",
        "weather id": "801"
      }
    }
    

    und hier das alte Script, welches bis vor dem Update die Daten lesen konnte.

    var logOn           = false;     // Skript Logausgabe ein- (true) / ausschalten (false). Fehler werden immer ausgegeben.
    var forecreation    = true;    // Default: false. true: Datenpunkte werden überschrieben (wenn z.B. Bezeichnungen geändert wurden)
    var http = require('http');     // Node Module http verwenden
    var RQoptions = {             // URL, die abgefragt, bzw. gesendet werden soll
          host: '192.168.10.71',
          path: '/weather.json',
          method: 'GET',
          headers: {
            'User-Agent' : 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/57.0.2987.133 Safari/537.36',
            'content-Type': 'text/plain',
            'Accept' : 'application/json, text/javascript'
          }
    };
    
    // Datenpunkte anlegen:
    // -----------------------------------------------------------------------------
    	// Datenpunkt-Variablen:
    	// -------------------------------------------------------------------------
    	var idVariablenDP;
    	var dpGruppe;
    	var dpPunkt;
    	// -------------------------------------------------------------------------
    // --- GRUPPE "os selected"
    var dpGruppe = "os_selected";
    var dpPunkt = "inside";
    var idVariablenDP = "lmair.temp-sensoren." + dpGruppe + "." + dpPunkt;     // Pfad und Name, unter dem in der Javascript-Instanz der Datenpunkte angelegt wird
    createState(idVariablenDP, 0, forecreation, {                        // Datenpunkt wird angelegt
         name: dpPunkt,               // <-- !!!!!
         desc: dpPunkt + ' von ' + dpGruppe,      // <-- !!!!!
         type: 'number',
         def:  0.0,
         role: 'value'
    });
    var dpPunkt = "outside";
    var idVariablenDP = "lmair.temp-sensoren." + dpGruppe + "." + dpPunkt;     // Pfad und Name, unter dem in der Javascript-Instanz der Datenpunkte angelegt wird
    createState(idVariablenDP, 0, forecreation, {                        // Datenpunkt wird angelegt
         name: dpPunkt,               // <-- !!!!!
         desc: dpPunkt + ' von ' + dpGruppe,      // <-- !!!!!
         type: 'number',
         def:  0.0,
         role: 'value'
    });
    // --- GRUPPE "internal"
    var dpGruppe = "internal";
    var dpPunkt = "temperature";
    var idVariablenDP = "lmair.temp-sensoren." + dpGruppe + "." + dpPunkt;     // Pfad und Name, unter dem in der Javascript-Instanz der Datenpunkte angelegt wird
    createState(idVariablenDP, 0, forecreation, {                        // Datenpunkt wird angelegt
         name: dpPunkt,               // <-- !!!!!
         desc: dpPunkt + ' von ' + dpGruppe,      // <-- !!!!!
         type: 'number',
         def:  0.0,
         role: 'value'
    });
    // --- GRUPPE "channel1"
    var dpGruppe = "channel1";
    var dpPunkt = "temperature";
    var idVariablenDP = "lmair.temp-sensoren." + dpGruppe + "." + dpPunkt;     // Pfad und Name, unter dem in der Javascript-Instanz der Datenpunkte angelegt wird
    createState(idVariablenDP, 0, forecreation, {                        // Datenpunkt wird angelegt
         name: dpPunkt,               // <-- !!!!!
         desc: dpPunkt + ' von ' + dpGruppe,      // <-- !!!!!
         type: 'number',
         def:  0.0,
         role: 'value'
    });
    var dpPunkt = "humidity";
    var idVariablenDP = "lmair.temp-sensoren." + dpGruppe + "." + dpPunkt;     // Pfad und Name, unter dem in der Javascript-Instanz der Datenpunkte angelegt wird
    createState(idVariablenDP, 0, forecreation, {                        // Datenpunkt wird angelegt
         name: dpPunkt,               // <-- !!!!!
         desc: dpPunkt + ' von ' + dpGruppe,      // <-- !!!!!
         type: 'number',
         def:  0.0,
         role: 'value'
    });
    // --- GRUPPE "channel2"
    var dpGruppe = "channel2-bad";
    var dpPunkt = "temperature";
    var idVariablenDP = "lmair.temp-sensoren." + dpGruppe + "." + dpPunkt;     // Pfad und Name, unter dem in der Javascript-Instanz der Datenpunkte angelegt wird
    createState(idVariablenDP, 0, forecreation, {                        // Datenpunkt wird angelegt
         name: dpPunkt,               // <-- !!!!!
         desc: dpPunkt + ' von ' + dpGruppe,      // <-- !!!!!
         type: 'number',
         def:  0.0,
         role: 'value'
    });
    var dpPunkt = "humidity";
    var idVariablenDP = "lmair.temp-sensoren." + dpGruppe + "." + dpPunkt;     // Pfad und Name, unter dem in der Javascript-Instanz der Datenpunkte angelegt wird
    createState(idVariablenDP, 0, forecreation, {                        // Datenpunkt wird angelegt
         name: dpPunkt,               // <-- !!!!!
         desc: dpPunkt + ' von ' + dpGruppe,      // <-- !!!!!
         type: 'number',
         def:  0.0,
         role: 'value'
    });
    // --- GRUPPE "channel3"
    var dpGruppe = "channel3";
    var dpPunkt = "temperature";
    var idVariablenDP = "lmair.temp-sensoren." + dpGruppe + "." + dpPunkt;     // Pfad und Name, unter dem in der Javascript-Instanz der Datenpunkte angelegt wird
    createState(idVariablenDP, 0, forecreation, {                        // Datenpunkt wird angelegt
         name: dpPunkt,               // <-- !!!!!
         desc: dpPunkt + ' von ' + dpGruppe,      // <-- !!!!!
         type: 'number',
         def:  0.0,
         role: 'value'
    });
    var dpPunkt = "humidity";
    var idVariablenDP = "lmair.temp-sensoren." + dpGruppe + "." + dpPunkt;     // Pfad und Name, unter dem in der Javascript-Instanz der Datenpunkte angelegt wird
    createState(idVariablenDP, 0, forecreation, {                        // Datenpunkt wird angelegt
         name: dpPunkt,               // <-- !!!!!
         desc: dpPunkt + ' von ' + dpGruppe,      // <-- !!!!!
         type: 'number',
         def:  0.0,
         role: 'value'
    });
    // --- GRUPPE "channel4"
    var dpGruppe = "channel4";
    var dpPunkt = "temperature";
    var idVariablenDP = "lmair.temp-sensoren." + dpGruppe + "." + dpPunkt;     // Pfad und Name, unter dem in der Javascript-Instanz der Datenpunkte angelegt wird
    createState(idVariablenDP, 0, forecreation, {                        // Datenpunkt wird angelegt
         name: dpPunkt,               // <-- !!!!!
         desc: dpPunkt + ' von ' + dpGruppe,      // <-- !!!!!
         type: 'number',
         def:  0.0,
         role: 'value'
    });
    var dpPunkt = "humidity";
    var idVariablenDP = "lmair.temp-sensoren." + dpGruppe + "." + dpPunkt;     // Pfad und Name, unter dem in der Javascript-Instanz der Datenpunkte angelegt wird
    createState(idVariablenDP, 0, forecreation, {                        // Datenpunkt wird angelegt
         name: dpPunkt,               // <-- !!!!!
         desc: dpPunkt + ' von ' + dpGruppe,      // <-- !!!!!
         type: 'number',
         def:  0.0,
         role: 'value'
    });
    // --- GRUPPE "channel5"
    var dpGruppe = "channel5";
    var dpPunkt = "temperature";
    var idVariablenDP = "lmair.temp-sensoren." + dpGruppe + "." + dpPunkt;     // Pfad und Name, unter dem in der Javascript-Instanz der Datenpunkte angelegt wird
    createState(idVariablenDP, 0, forecreation, {                        // Datenpunkt wird angelegt
         name: dpPunkt,               // <-- !!!!!
         desc: dpPunkt + ' von ' + dpGruppe,      // <-- !!!!!
         type: 'number',
         def:  0.0,
         role: 'value'
    });
    var dpPunkt = "humidity";
    var idVariablenDP = "lmair.temp-sensoren." + dpGruppe + "." + dpPunkt;     // Pfad und Name, unter dem in der Javascript-Instanz der Datenpunkte angelegt wird
    createState(idVariablenDP, 0, forecreation, {                        // Datenpunkt wird angelegt
         name: dpPunkt,               // <-- !!!!!
         desc: dpPunkt + ' von ' + dpGruppe,      // <-- !!!!!
         type: 'number',
         def:  0.0,
         role: 'value'
    });
    // --- GRUPPE "channel6"
    var dpGruppe = "channel6-daniel";
    var dpPunkt = "temperature";
    var idVariablenDP = "lmair.temp-sensoren." + dpGruppe + "." + dpPunkt;     // Pfad und Name, unter dem in der Javascript-Instanz der Datenpunkte angelegt wird
    createState(idVariablenDP, 0, forecreation, {                        // Datenpunkt wird angelegt
         name: dpPunkt,               // <-- !!!!!
         desc: dpPunkt + ' von ' + dpGruppe,      // <-- !!!!!
         type: 'number',
         def:  0.0,
         role: 'value'
    });
    var dpPunkt = "humidity";
    var idVariablenDP = "lmair.temp-sensoren." + dpGruppe + "." + dpPunkt;     // Pfad und Name, unter dem in der Javascript-Instanz der Datenpunkte angelegt wird
    createState(idVariablenDP, 0, forecreation, {                        // Datenpunkt wird angelegt
         name: dpPunkt,               // <-- !!!!!
         desc: dpPunkt + ' von ' + dpGruppe,      // <-- !!!!!
         type: 'number',
         def:  0.0,
         role: 'value'
    });
    // --- GRUPPE "channel7"
    var dpGruppe = "channel7-jessica";
    var dpPunkt = "temperature";
    var idVariablenDP = "lmair.temp-sensoren." + dpGruppe + "." + dpPunkt;     // Pfad und Name, unter dem in der Javascript-Instanz der Datenpunkte angelegt wird
    createState(idVariablenDP, 0, forecreation, {                        // Datenpunkt wird angelegt
         name: dpPunkt,               // <-- !!!!!
         desc: dpPunkt + ' von ' + dpGruppe,      // <-- !!!!!
         type: 'number',
         def:  0.0,
         role: 'value'
    });
    var dpPunkt = "humidity";
    var idVariablenDP = "lmair.temp-sensoren." + dpGruppe + "." + dpPunkt;     // Pfad und Name, unter dem in der Javascript-Instanz der Datenpunkte angelegt wird
    createState(idVariablenDP, 0, forecreation, {                        // Datenpunkt wird angelegt
         name: dpPunkt,               // <-- !!!!!
         desc: dpPunkt + ' von ' + dpGruppe,      // <-- !!!!!
         type: 'number',
         def:  0.0,
         role: 'value'
    });
    // --- GRUPPE "channel8"
    var dpGruppe = "channel8-schlafzimmer";
    var dpPunkt = "temperature";
    var idVariablenDP = "lmair.temp-sensoren." + dpGruppe + "." + dpPunkt;     // Pfad und Name, unter dem in der Javascript-Instanz der Datenpunkte angelegt wird
    createState(idVariablenDP, 0, forecreation, {                        // Datenpunkt wird angelegt
         name: dpPunkt,               // <-- !!!!!
         desc: dpPunkt + ' von ' + dpGruppe,      // <-- !!!!!
         type: 'number',
         def:  0.0,
         role: 'value'
    });
    var dpPunkt = "humidity";
    var idVariablenDP = "lmair.temp-sensoren." + dpGruppe + "." + dpPunkt;     // Pfad und Name, unter dem in der Javascript-Instanz der Datenpunkte angelegt wird
    createState(idVariablenDP, 0, forecreation, {                        // Datenpunkt wird angelegt
         name: dpPunkt,               // <-- !!!!!
         desc: dpPunkt + ' von ' + dpGruppe,      // <-- !!!!!
         type: 'number',
         def:  0.0,
         role: 'value'
    });
    // --- GRUPPE "channel9"
    var dpGruppe = "channel9-kueche";
    var dpPunkt = "temperature";
    var idVariablenDP = "lmair.temp-sensoren." + dpGruppe + "." + dpPunkt;     // Pfad und Name, unter dem in der Javascript-Instanz der Datenpunkte angelegt wird
    createState(idVariablenDP, 0, forecreation, {                        // Datenpunkt wird angelegt
         name: dpPunkt,               // <-- !!!!!
         desc: dpPunkt + ' von ' + dpGruppe,      // <-- !!!!!
         type: 'number',
         def:  0.0,
         role: 'value'
    });
    var dpPunkt = "humidity";
    var idVariablenDP = "lmair.temp-sensoren." + dpGruppe + "." + dpPunkt;     // Pfad und Name, unter dem in der Javascript-Instanz der Datenpunkte angelegt wird
    createState(idVariablenDP, 0, forecreation, {                        // Datenpunkt wird angelegt
         name: dpPunkt,               // <-- !!!!!
         desc: dpPunkt + ' von ' + dpGruppe,      // <-- !!!!!
         type: 'number',
         def:  0.0,
         role: 'value'
    });
    // --- GRUPPE "channel10"
    var dpGruppe = "channel10-wohnzimmer";
    var dpPunkt = "temperature";
    var idVariablenDP = "lmair.temp-sensoren." + dpGruppe + "." + dpPunkt;     // Pfad und Name, unter dem in der Javascript-Instanz der Datenpunkte angelegt wird
    createState(idVariablenDP, 0, forecreation, {                        // Datenpunkt wird angelegt
         name: dpPunkt,               // <-- !!!!!
         desc: dpPunkt + ' von ' + dpGruppe,      // <-- !!!!!
         type: 'number',
         def:  0.0,
         role: 'value'
    });
    var dpPunkt = "humidity";
    var idVariablenDP = "lmair.temp-sensoren." + dpGruppe + "." + dpPunkt;     // Pfad und Name, unter dem in der Javascript-Instanz der Datenpunkte angelegt wird
    createState(idVariablenDP, 0, forecreation, {                        // Datenpunkt wird angelegt
         name: dpPunkt,               // <-- !!!!!
         desc: dpPunkt + ' von ' + dpGruppe,      // <-- !!!!!
         type: 'number',
         def:  0.0,
         role: 'value'
    });
    // --- GRUPPE "owm"
    var dpGruppe = "owm";
    var dpPunkt = "temperature";
    var idVariablenDP = "lmair.temp-sensoren." + dpGruppe + "." + dpPunkt;     // Pfad und Name, unter dem in der Javascript-Instanz der Datenpunkte angelegt wird
    createState(idVariablenDP, 0, forecreation, {                        // Datenpunkt wird angelegt
         name: dpPunkt,               // <-- !!!!!
         desc: dpPunkt + ' von ' + dpGruppe,      // <-- !!!!!
         type: 'number',
         def:  0.0,
         role: 'value'
    });
    var dpPunkt = "humidity";
    var idVariablenDP = "lmair.temp-sensoren." + dpGruppe + "." + dpPunkt;     // Pfad und Name, unter dem in der Javascript-Instanz der Datenpunkte angelegt wird
    createState(idVariablenDP, 0, forecreation, {                        // Datenpunkt wird angelegt
         name: dpPunkt,               // <-- !!!!!
         desc: dpPunkt + ' von ' + dpGruppe,      // <-- !!!!!
         type: 'number',
         def:  0.0,
         role: 'value'
    });
    var dpPunkt = "wind";
    var idVariablenDP = "lmair.temp-sensoren." + dpGruppe + "." + dpPunkt;     // Pfad und Name, unter dem in der Javascript-Instanz der Datenpunkte angelegt wird
    createState(idVariablenDP, 0, forecreation, {                        // Datenpunkt wird angelegt
         name: dpPunkt,               // <-- !!!!!
         desc: dpPunkt + ' von ' + dpGruppe,      // <-- !!!!!
         type: 'number',
         def:  0.0,
         role: 'value'
    });
    var dpPunkt = "rain";
    var idVariablenDP = "lmair.temp-sensoren." + dpGruppe + "." + dpPunkt;     // Pfad und Name, unter dem in der Javascript-Instanz der Datenpunkte angelegt wird
    createState(idVariablenDP, 0, forecreation, {                        // Datenpunkt wird angelegt
         name: dpPunkt,               // <-- !!!!!
         desc: dpPunkt + ' von ' + dpGruppe,      // <-- !!!!!
         type: 'number',
         def:  0.0,
         role: 'value'
    });
    var dpPunkt = "weather_id";
    var idVariablenDP = "lmair.temp-sensoren." + dpGruppe + "." + dpPunkt;     // Pfad und Name, unter dem in der Javascript-Instanz der Datenpunkte angelegt wird
    createState(idVariablenDP, 0, forecreation, {                        // Datenpunkt wird angelegt
         name: dpPunkt,               // <-- !!!!!
         desc: dpPunkt + ' von ' + dpGruppe,      // <-- !!!!!
         type: 'number',
         def:  0.0,
         role: 'value'
    });
    
    // Funktionen:
    // -----------------------------------------------------------------------------
    function DatenAuslesen() {
        var req = http.get(RQoptions, function(res) {
        if(logOn) log('STATUS: ' + res.statusCode);               // Statuscode
        if(logOn) log('HEADERS: ' + JSON.stringify(res.headers)); // Header (Rückmeldung vom Webserver)
        // Buffer the body entirely for processing as a whole.
        var bodyChunks  = [];
        var chunkLine   = 0;
        res.on('data', function(chunk) {
            chunkLine = chunkLine + 1;
            if(logOn)  log("Zeilennummer: " + chunkLine+ " ,Inhalt: " +  chunk);
            // Hier können die einzelnen Zeilen verarbeitet werden...
            bodyChunks.push(chunk);
        }).on('end', function() {
            if(logOn) log("ARRAY mit den einzelnen Zeilen: " + bodyChunks);
            if(logOn) log("ARRAY Länge: " + bodyChunks.length);
    
            var body = Buffer.concat(bodyChunks);// erhaltene Daten
    
            if(logOn) log('BODY: ' + body);     // ...und/oder das Gesamtergebnis.
            DatenVerarbeiten(body);				// Abrufen der Bearbeitungs-Funktion
            });
        });
        req.on('error', function(e) { // Fehler abfangen
            log('ERROR: ' + e.message,"warn");
            return("error");
        });
    }
    // -----------------------------------------------------------------------------
    function DatenVerarbeiten(result) {
        var json = JSON.parse(result);
    	
    	if (json !== null) {
    		// GRUPPE "os selected"
    		setState("javascript.0.lmair.temp-sensoren.os_selected.inside", parseFloat(json["os selected"].inside));
    		setState("javascript.0.lmair.temp-sensoren.os_selected.outside", parseFloat(json["os selected"].outside));
    		// GRUPPE "internal"
    		setState("javascript.0.lmair.temp-sensoren.internal.temperature", parseFloat(json.internal.temperature));
    		// GRUPPE "channel1"
    		setState("javascript.0.lmair.temp-sensoren.channel1.temperature", parseFloat(json.channel1.temperature));
    		setState("javascript.0.lmair.temp-sensoren.channel1.humidity", parseFloat(json.channel1.humidity));
    		// GRUPPE "channel2"
    		setState("javascript.0.lmair.temp-sensoren.channel2-bad.temperature", parseFloat(json.channel2.temperature));
    		setState("javascript.0.lmair.temp-sensoren.channel2-bad.humidity", parseFloat(json.channel2.humidity));
    		// GRUPPE "channel3"
    		setState("javascript.0.lmair.temp-sensoren.channel3.temperature", parseFloat(json.channel3.temperature));
    		setState("javascript.0.lmair.temp-sensoren.channel3.humidity", parseFloat(json.channel3.humidity));
    		// GRUPPE "channel4"
    		setState("javascript.0.lmair.temp-sensoren.channel4.temperature", parseFloat(json.channel4.temperature));
    		setState("javascript.0.lmair.temp-sensoren.channel4.humidity", parseFloat(json.channel4.humidity));
    		// GRUPPE "channel5"
    		setState("javascript.0.lmair.temp-sensoren.channel5.temperature", parseFloat(json.channel5.temperature));
    		setState("javascript.0.lmair.temp-sensoren.channel5.humidity", parseFloat(json.channel5.humidity));
    		// GRUPPE "channel6"
    		setState("javascript.0.lmair.temp-sensoren.channel6-daniel.temperature", parseFloat(json.channel6.temperature));
    		setState("javascript.0.lmair.temp-sensoren.channel6-daniel.humidity", parseFloat(json.channel6.humidity));
    		// GRUPPE "channel7"
    		setState("javascript.0.lmair.temp-sensoren.channel7-jessica.temperature", parseFloat(json.channel7.temperature));
    		setState("javascript.0.lmair.temp-sensoren.channel7-jessica.humidity", parseFloat(json.channel7.humidity));
    		// GRUPPE "channel8"
    		setState("javascript.0.lmair.temp-sensoren.channel8-schlafzimmer.temperature", parseFloat(json.channel8.temperature));
    		setState("javascript.0.lmair.temp-sensoren.channel8-schlafzimmer.humidity", parseFloat(json.channel8.humidity));
    		// GRUPPE "channel9"
    		setState("javascript.0.lmair.temp-sensoren.channel9-kueche.temperature", parseFloat(json.channel9.temperature));
    		setState("javascript.0.lmair.temp-sensoren.channel9-kueche.humidity", parseFloat(json.channel9.humidity));
    		// GRUPPE "channel10"
    		setState("javascript.0.lmair.temp-sensoren.channel10-wohnzimmer.temperature", parseFloat(json.channel10.temperature));
    		setState("javascript.0.lmair.temp-sensoren.channel10-wohnzimmer.humidity", parseFloat(json.channel10.humidity));
    		// GRUPPE "owm"
    		setState("javascript.0.lmair.temp-sensoren.owm.temperature", parseFloat(json.owm.temperature));
    		setState("javascript.0.lmair.temp-sensoren.owm.humidity", parseFloat(json.owm.humidity));
    		setState("javascript.0.lmair.temp-sensoren.owm.wind", parseFloat(json.owm.wind));
    		setState("javascript.0.lmair.temp-sensoren.owm.rain", parseFloat(json.owm.rain));
    		setState("javascript.0.lmair.temp-sensoren.owm.weather_id", parseFloat(json.owm["weather id"]));
    	} else {
    		log ("Fehler beim Einlesen der Daten.");
    	}
    }
    
    // Beim Skriptstart die Werte auslesen:
    // --------------------------------------------------------------------------
    setTimeout(DatenAuslesen, 1000);
    
    // Werte automatisch aktualisieren:
    // --------------------------------------------------------------------------
    schedule('*/30 * * * * *', DatenAuslesen);  // alle 30 sekunden 
    //
    

    Fehler mit dem jetzigen Script

    2.5.2019, 18:47:52.000	[info ]: javascript.0 Stop script script.js.Lightmanager.json_Abruf.weather_json
    2.5.2019, 18:47:52.068	[info ]: javascript.0 Start javascript script.js.Lightmanager.json_Abruf.weather_json
    2.5.2019, 18:47:52.068	[info ]: javascript.0 script.js.Lightmanager.json_Abruf.weather_json: registered 0 subscriptions and 1 schedule
    2.5.2019, 18:47:53.146	[error]: javascript.0 script.js.Lightmanager.json_Abruf.weather_json: TypeError: Cannot read property 'inside' of undefined
    2.5.2019, 18:47:53.146	[error]: javascript.0     at DatenVerarbeiten (script.js.Lightmanager.json_Abruf.weather_json:337:98)
    2.5.2019, 18:47:53.146	[error]: javascript.0     at IncomingMessage.<anonymous> (script.js.Lightmanager.json_Abruf.weather_json:323:9)
    2.5.2019, 18:48:00.123	[error]: javascript.0 script.js.Lightmanager.json_Abruf.weather_json: TypeError: Cannot read property 'inside' of undefined
    2.5.2019, 18:48:00.123	[error]: javascript.0     at DatenVerarbeiten (script.js.Lightmanager.json_Abruf.weather_json:337:98)
    2.5.2019, 18:48:00.123	[error]: javascript.0     at IncomingMessage.<anonymous> (script.js.Lightmanager.json_Abruf.weather_json:323:9)
    2.5.2019, 18:48:30.155	[error]: javascript.0 script.js.Lightmanager.json_Abruf.weather_json: TypeError: Cannot read property 'inside' of undefined
    2.5.2019, 18:48:30.156	[error]: javascript.0     at DatenVerarbeiten (script.js.Lightmanager.json_Abruf.weather_json:337:98)
    2.5.2019, 18:48:30.156	[error]: javascript.0     at IncomingMessage.<anonymous> (script.js.Lightmanager.json_Abruf.weather_json:323:9)
    2.5.2019, 18:49:00.091	[error]: javascript.0 script.js.Lightmanager.json_Abruf.weather_json: TypeError: Cannot read property 'inside' of undefined
    2.5.2019, 18:49:00.091	[error]: javascript.0     at DatenVerarbeiten (script.js.Lightmanager.json_Abruf.weather_json:337:98)
    2.5.2019, 18:49:00.091	[error]: javascript.0     at IncomingMessage.<anonymous> (script.js.Lightmanager.json_Abruf.weather_json:323:9)
    2.5.2019, 18:49:30.293	[error]: javascript.0 script.js.Lightmanager.json_Abruf.weather_json: TypeError: Cannot read property 'inside' of undefined
    2.5.2019, 18:49:30.293	[error]: javascript.0     at DatenVerarbeiten (script.js.Lightmanager.json_Abruf.weather_json:337:98)
    2.5.2019, 18:49:30.293	[error]: javascript.0     at IncomingMessage.<anonymous> (script.js.Lightmanager.json_Abruf.weather_json:323:9)
    2.5.2019, 18:50:00.074	[error]: javascript.0 script.js.Lightmanager.json_Abruf.weather_json: TypeError: Cannot read property 'inside' of undefined
    2.5.2019, 18:50:00.074	[error]: javascript.0     at DatenVerarbeiten (script.js.Lightmanager.json_Abruf.weather_json:337:98)
    2.5.2019, 18:50:00.075	[error]: javascript.0     at IncomingMessage.<anonymous> (script.js.Lightmanager.json_Abruf.weather_json:323:9)
    2.5.2019, 18:50:30.148	[error]: javascript.0 script.js.Lightmanager.json_Abruf.weather_json: TypeError: Cannot read property 'inside' of undefined
    2.5.2019, 18:50:30.149	[error]: javascript.0     at DatenVerarbeiten (script.js.Lightmanager.json_Abruf.weather_json:337:98)
    2.5.2019, 18:50:30.149	[error]: javascript.0     at IncomingMessage.<anonymous> (script.js.Lightmanager.json_Abruf.weather_json:323:9)
    2.5.2019, 18:51:00.091	[error]: javascript.0 script.js.Lightmanager.json_Abruf.weather_json: TypeError: Cannot read property 'inside' of undefined
    2.5.2019, 18:51:00.091	[error]: javascript.0     at DatenVerarbeiten (script.js.Lightmanager.json_Abruf.weather_json:337:98)
    2.5.2019, 18:51:00.091	[error]: javascript.0     at IncomingMessage.<anonymous> (script.js.Lightmanager.json_Abruf.weather_json:323:9)
    2.5.2019, 18:51:30.154	[error]: javascript.0 script.js.Lightmanager.json_Abruf.weather_json: TypeError: Cannot read property 'inside' of undefined
    2.5.2019, 18:51:30.154	[error]: javascript.0     at DatenVerarbeiten (script.js.Lightmanager.json_Abruf.weather_json:337:98)
    2.5.2019, 18:51:30.154	[error]: javascript.0     at IncomingMessage.<anonymous> (script.js.Lightmanager.json_Abruf.weather_json:323:9)
    2.5.2019, 18:52:00.106	[error]: javascript.0 script.js.Lightmanager.json_Abruf.weather_json: TypeError: Cannot read property 'inside' of undefined
    2.5.2019, 18:52:00.107	[error]: javascript.0     at DatenVerarbeiten (script.js.Lightmanager.json_Abruf.weather_json:337:98)
    2.5.2019, 18:52:00.107	[error]: javascript.0     at IncomingMessage.<anonymous> (script.js.Lightmanager.json_Abruf.weather_json:323:9)
    2.5.2019, 18:52:30.144	[error]: javascript.0 script.js.Lightmanager.json_Abruf.weather_json: TypeError: Cannot read property 'inside' of undefined
    2.5.2019, 18:52:30.144	[error]: javascript.0     at DatenVerarbeiten (script.js.Lightmanager.json_Abruf.weather_json:337:98)
    2.5.2019, 18:52:30.144	[error]: javascript.0     at IncomingMessage.<anonymous> (script.js.Lightmanager.json_Abruf.weather_json:323:9)
    2.5.2019, 18:53:00.081	[error]: javascript.0 script.js.Lightmanager.json_Abruf.weather_json: TypeError: Cannot read property 'inside' of undefined
    2.5.2019, 18:53:00.082	[error]: javascript.0     at DatenVerarbeiten (script.js.Lightmanager.json_Abruf.weather_json:337:98)
    2.5.2019, 18:53:00.082	[error]: javascript.0     at IncomingMessage.<anonymous> (script.js.Lightmanager.json_Abruf.weather_json:323:9)
    2.5.2019, 18:53:30.143	[error]: javascript.0 script.js.Lightmanager.json_Abruf.weather_json: TypeError: Cannot read property 'inside' of undefined
    2.5.2019, 18:53:30.143	[error]: javascript.0     at DatenVerarbeiten (script.js.Lightmanager.json_Abruf.weather_json:337:98)
    2.5.2019, 18:53:30.143	[error]: javascript.0     at IncomingMessage.<anonymous> (script.js.Lightmanager.json_Abruf.weather_json:323:9)
    2.5.2019, 18:54:00.080	[error]: javascript.0 script.js.Lightmanager.json_Abruf.weather_json: TypeError: Cannot read property 'inside' of undefined
    2.5.2019, 18:54:00.081	[error]: javascript.0     at DatenVerarbeiten (script.js.Lightmanager.json_Abruf.weather_json:337:98)
    2.5.2019, 18:54:00.082	[error]: javascript.0     at IncomingMessage.<anonymous> (script.js.Lightmanager.json_Abruf.weather_json:323:9)
    2.5.2019, 18:54:30.142	[error]: javascript.0 script.js.Lightmanager.json_Abruf.weather_json: TypeError: Cannot read property 'inside' of undefined
    2.5.2019, 18:54:30.143	[error]: javascript.0     at DatenVerarbeiten (script.js.Lightmanager.json_Abruf.weather_json:337:98)
    2.5.2019, 18:54:30.143	[error]: javascript.0     at IncomingMessage.<anonymous> (script.js.Lightmanager.json_Abruf.weather_json:323:9)
    2.5.2019, 18:55:00.080	[error]: javascript.0 script.js.Lightmanager.json_Abruf.weather_json: TypeError: Cannot read property 'inside' of undefined
    2.5.2019, 18:55:00.081	[error]: javascript.0     at DatenVerarbeiten (script.js.Lightmanager.json_Abruf.weather_json:337:98)
    2.5.2019, 18:55:00.081	[error]: javascript.0     at IncomingMessage.<anonymous> (script.js.Lightmanager.json_Abruf.weather_json:323:9)
    2.5.2019, 18:55:30.146	[error]: javascript.0 script.js.Lightmanager.json_Abruf.weather_json: TypeError: Cannot read property 'inside' of undefined
    2.5.2019, 18:55:30.148	[error]: javascript.0     at DatenVerarbeiten (script.js.Lightmanager.json_Abruf.weather_json:337:98)
    2.5.2019, 18:55:30.148	[error]: javascript.0     at IncomingMessage.<anonymous> (script.js.Lightmanager.json_Abruf.weather_json:323:9)
    2.5.2019, 18:56:00.123	[error]: javascript.0 script.js.Lightmanager.json_Abruf.weather_json: TypeError: Cannot read property 'inside' of undefined
    2.5.2019, 18:56:00.124	[error]: javascript.0     at DatenVerarbeiten (script.js.Lightmanager.json_Abruf.weather_json:337:98)
    2.5.2019, 18:56:00.124	[error]: javascript.0     at IncomingMessage.<anonymous> (script.js.Lightmanager.json_Abruf.weather_json:323:9)
    2.5.2019, 18:56:30.146	[error]: javascript.0 script.js.Lightmanager.json_Abruf.weather_json: TypeError: Cannot read property 'inside' of undefined
    2.5.2019, 18:56:30.147	[error]: javascript.0     at DatenVerarbeiten (script.js.Lightmanager.json_Abruf.weather_json:337:98)
    2.5.2019, 18:56:30.147	[error]: javascript.0     at IncomingMessage.<anonymous> (script.js.Lightmanager.json_Abruf.weather_json:323:9)
    2.5.2019, 18:57:00.099	[error]: javascript.0 script.js.Lightmanager.json_Abruf.weather_json: TypeError: Cannot read property 'inside' of undefined
    2.5.2019, 18:57:00.099	[error]: javascript.0     at DatenVerarbeiten (script.js.Lightmanager.json_Abruf.weather_json:337:98)
    2.5.2019, 18:57:00.099	[error]: javascript.0     at IncomingMessage.<anonymous> (script.js.Lightmanager.json_Abruf.weather_json:323:9)
    

    Vielen Dank im voraus.

    1 Antwort Letzte Antwort
    0
    • arteckA Offline
      arteckA Offline
      arteck
      Developer Most Active
      schrieb am zuletzt editiert von
      #2

      na so wie es aussieht sind die Datenpunkte

      inside
      outside
      

      ausgefallen

      kommentiere die zeilen 337 und 338 aus

      // setState("javascript.0.lmair.temp-sensoren.os_selected.inside", parseFloat(json["os selected"].inside));
      // setState("javascript.0.lmair.temp-sensoren.os_selected.outside", parseFloat(json["os selected"].outside));
      

      zigbee hab ich, zwave auch, nuc's genauso und HA auch

      1 Antwort Letzte Antwort
      1
      • D Offline
        D Offline
        dos1973
        schrieb am zuletzt editiert von
        #3

        Danke Arteck, ich habe etwas weiter "auskommentiert und via copy/ paste :-) auch die Änderungen eingefügt...

        das Script funktioniert mit dem LightManager Air Version 9.1

        var logOn           = false;     // Skript Logausgabe ein- (true) / ausschalten (false). Fehler werden immer ausgegeben.
        var forecreation    = true;    // Default: false. true: Datenpunkte werden überschrieben (wenn z.B. Bezeichnungen geändert wurden)
        var http = require('http');     // Node Module http verwenden
        var RQoptions = {             // URL, die abgefragt, bzw. gesendet werden soll
              host: '192.168.10.71',
              path: '/weather.json',
              method: 'GET',
              headers: {
                'User-Agent' : 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/57.0.2987.133 Safari/537.36',
                'content-Type': 'text/plain',
                'Accept' : 'application/json, text/javascript'
              }
        };
        
        // Datenpunkte anlegen:
        // -----------------------------------------------------------------------------
        	// Datenpunkt-Variablen:
        	// -------------------------------------------------------------------------
        	var idVariablenDP;
        	var dpGruppe;
        	var dpPunkt;
        	// -------------------------------------------------------------------------
        
        // --- GRUPPE "channel0"
        var dpGruppe = "channel0";
        var dpPunkt = "temperature";
        var idVariablenDP = "lmair.temp-sensoren." + dpGruppe + "." + dpPunkt;     // Pfad und Name, unter dem in der Javascript-Instanz der Datenpunkte angelegt wird
        createState(idVariablenDP, 0, forecreation, {                        // Datenpunkt wird angelegt
             name: dpPunkt,               // <-- !!!!!
             desc: dpPunkt + ' von ' + dpGruppe,      // <-- !!!!!
             type: 'number',
             def:  0.0,
             role: 'value'
        });
        var dpPunkt = "humidity";
        var idVariablenDP = "lmair.temp-sensoren." + dpGruppe + "." + dpPunkt;     // Pfad und Name, unter dem in der Javascript-Instanz der Datenpunkte angelegt wird
        createState(idVariablenDP, 0, forecreation, {                        // Datenpunkt wird angelegt
             name: dpPunkt,               // <-- !!!!!
             desc: dpPunkt + ' von ' + dpGruppe,      // <-- !!!!!
             type: 'number',
             def:  0.0,
             role: 'value'
        });
        
        // --- GRUPPE "channel1"
        var dpGruppe = "channel1";
        var dpPunkt = "temperature";
        var idVariablenDP = "lmair.temp-sensoren." + dpGruppe + "." + dpPunkt;     // Pfad und Name, unter dem in der Javascript-Instanz der Datenpunkte angelegt wird
        createState(idVariablenDP, 0, forecreation, {                        // Datenpunkt wird angelegt
             name: dpPunkt,               // <-- !!!!!
             desc: dpPunkt + ' von ' + dpGruppe,      // <-- !!!!!
             type: 'number',
             def:  0.0,
             role: 'value'
        });
        var dpPunkt = "humidity";
        var idVariablenDP = "lmair.temp-sensoren." + dpGruppe + "." + dpPunkt;     // Pfad und Name, unter dem in der Javascript-Instanz der Datenpunkte angelegt wird
        createState(idVariablenDP, 0, forecreation, {                        // Datenpunkt wird angelegt
             name: dpPunkt,               // <-- !!!!!
             desc: dpPunkt + ' von ' + dpGruppe,      // <-- !!!!!
             type: 'number',
             def:  0.0,
             role: 'value'
        });
        // --- GRUPPE "channel2"
        var dpGruppe = "channel2-bad";
        var dpPunkt = "temperature";
        var idVariablenDP = "lmair.temp-sensoren." + dpGruppe + "." + dpPunkt;     // Pfad und Name, unter dem in der Javascript-Instanz der Datenpunkte angelegt wird
        createState(idVariablenDP, 0, forecreation, {                        // Datenpunkt wird angelegt
             name: dpPunkt,               // <-- !!!!!
             desc: dpPunkt + ' von ' + dpGruppe,      // <-- !!!!!
             type: 'number',
             def:  0.0,
             role: 'value'
        });
        var dpPunkt = "humidity";
        var idVariablenDP = "lmair.temp-sensoren." + dpGruppe + "." + dpPunkt;     // Pfad und Name, unter dem in der Javascript-Instanz der Datenpunkte angelegt wird
        createState(idVariablenDP, 0, forecreation, {                        // Datenpunkt wird angelegt
             name: dpPunkt,               // <-- !!!!!
             desc: dpPunkt + ' von ' + dpGruppe,      // <-- !!!!!
             type: 'number',
             def:  0.0,
             role: 'value'
        });
        // --- GRUPPE "channel3"
        var dpGruppe = "channel3";
        var dpPunkt = "temperature";
        var idVariablenDP = "lmair.temp-sensoren." + dpGruppe + "." + dpPunkt;     // Pfad und Name, unter dem in der Javascript-Instanz der Datenpunkte angelegt wird
        createState(idVariablenDP, 0, forecreation, {                        // Datenpunkt wird angelegt
             name: dpPunkt,               // <-- !!!!!
             desc: dpPunkt + ' von ' + dpGruppe,      // <-- !!!!!
             type: 'number',
             def:  0.0,
             role: 'value'
        });
        var dpPunkt = "humidity";
        var idVariablenDP = "lmair.temp-sensoren." + dpGruppe + "." + dpPunkt;     // Pfad und Name, unter dem in der Javascript-Instanz der Datenpunkte angelegt wird
        createState(idVariablenDP, 0, forecreation, {                        // Datenpunkt wird angelegt
             name: dpPunkt,               // <-- !!!!!
             desc: dpPunkt + ' von ' + dpGruppe,      // <-- !!!!!
             type: 'number',
             def:  0.0,
             role: 'value'
        });
        // --- GRUPPE "channel4"
        var dpGruppe = "channel4";
        var dpPunkt = "temperature";
        var idVariablenDP = "lmair.temp-sensoren." + dpGruppe + "." + dpPunkt;     // Pfad und Name, unter dem in der Javascript-Instanz der Datenpunkte angelegt wird
        createState(idVariablenDP, 0, forecreation, {                        // Datenpunkt wird angelegt
             name: dpPunkt,               // <-- !!!!!
             desc: dpPunkt + ' von ' + dpGruppe,      // <-- !!!!!
             type: 'number',
             def:  0.0,
             role: 'value'
        });
        var dpPunkt = "humidity";
        var idVariablenDP = "lmair.temp-sensoren." + dpGruppe + "." + dpPunkt;     // Pfad und Name, unter dem in der Javascript-Instanz der Datenpunkte angelegt wird
        createState(idVariablenDP, 0, forecreation, {                        // Datenpunkt wird angelegt
             name: dpPunkt,               // <-- !!!!!
             desc: dpPunkt + ' von ' + dpGruppe,      // <-- !!!!!
             type: 'number',
             def:  0.0,
             role: 'value'
        });
        // --- GRUPPE "channel5"
        var dpGruppe = "channel5";
        var dpPunkt = "temperature";
        var idVariablenDP = "lmair.temp-sensoren." + dpGruppe + "." + dpPunkt;     // Pfad und Name, unter dem in der Javascript-Instanz der Datenpunkte angelegt wird
        createState(idVariablenDP, 0, forecreation, {                        // Datenpunkt wird angelegt
             name: dpPunkt,               // <-- !!!!!
             desc: dpPunkt + ' von ' + dpGruppe,      // <-- !!!!!
             type: 'number',
             def:  0.0,
             role: 'value'
        });
        var dpPunkt = "humidity";
        var idVariablenDP = "lmair.temp-sensoren." + dpGruppe + "." + dpPunkt;     // Pfad und Name, unter dem in der Javascript-Instanz der Datenpunkte angelegt wird
        createState(idVariablenDP, 0, forecreation, {                        // Datenpunkt wird angelegt
             name: dpPunkt,               // <-- !!!!!
             desc: dpPunkt + ' von ' + dpGruppe,      // <-- !!!!!
             type: 'number',
             def:  0.0,
             role: 'value'
        });
        // --- GRUPPE "channel6"
        var dpGruppe = "channel6-daniel";
        var dpPunkt = "temperature";
        var idVariablenDP = "lmair.temp-sensoren." + dpGruppe + "." + dpPunkt;     // Pfad und Name, unter dem in der Javascript-Instanz der Datenpunkte angelegt wird
        createState(idVariablenDP, 0, forecreation, {                        // Datenpunkt wird angelegt
             name: dpPunkt,               // <-- !!!!!
             desc: dpPunkt + ' von ' + dpGruppe,      // <-- !!!!!
             type: 'number',
             def:  0.0,
             role: 'value'
        });
        var dpPunkt = "humidity";
        var idVariablenDP = "lmair.temp-sensoren." + dpGruppe + "." + dpPunkt;     // Pfad und Name, unter dem in der Javascript-Instanz der Datenpunkte angelegt wird
        createState(idVariablenDP, 0, forecreation, {                        // Datenpunkt wird angelegt
             name: dpPunkt,               // <-- !!!!!
             desc: dpPunkt + ' von ' + dpGruppe,      // <-- !!!!!
             type: 'number',
             def:  0.0,
             role: 'value'
        });
        // --- GRUPPE "channel7"
        var dpGruppe = "channel7-jessica";
        var dpPunkt = "temperature";
        var idVariablenDP = "lmair.temp-sensoren." + dpGruppe + "." + dpPunkt;     // Pfad und Name, unter dem in der Javascript-Instanz der Datenpunkte angelegt wird
        createState(idVariablenDP, 0, forecreation, {                        // Datenpunkt wird angelegt
             name: dpPunkt,               // <-- !!!!!
             desc: dpPunkt + ' von ' + dpGruppe,      // <-- !!!!!
             type: 'number',
             def:  0.0,
             role: 'value'
        });
        var dpPunkt = "humidity";
        var idVariablenDP = "lmair.temp-sensoren." + dpGruppe + "." + dpPunkt;     // Pfad und Name, unter dem in der Javascript-Instanz der Datenpunkte angelegt wird
        createState(idVariablenDP, 0, forecreation, {                        // Datenpunkt wird angelegt
             name: dpPunkt,               // <-- !!!!!
             desc: dpPunkt + ' von ' + dpGruppe,      // <-- !!!!!
             type: 'number',
             def:  0.0,
             role: 'value'
        });
        // --- GRUPPE "channel8"
        var dpGruppe = "channel8-schlafzimmer";
        var dpPunkt = "temperature";
        var idVariablenDP = "lmair.temp-sensoren." + dpGruppe + "." + dpPunkt;     // Pfad und Name, unter dem in der Javascript-Instanz der Datenpunkte angelegt wird
        createState(idVariablenDP, 0, forecreation, {                        // Datenpunkt wird angelegt
             name: dpPunkt,               // <-- !!!!!
             desc: dpPunkt + ' von ' + dpGruppe,      // <-- !!!!!
             type: 'number',
             def:  0.0,
             role: 'value'
        });
        var dpPunkt = "humidity";
        var idVariablenDP = "lmair.temp-sensoren." + dpGruppe + "." + dpPunkt;     // Pfad und Name, unter dem in der Javascript-Instanz der Datenpunkte angelegt wird
        createState(idVariablenDP, 0, forecreation, {                        // Datenpunkt wird angelegt
             name: dpPunkt,               // <-- !!!!!
             desc: dpPunkt + ' von ' + dpGruppe,      // <-- !!!!!
             type: 'number',
             def:  0.0,
             role: 'value'
        });
        // --- GRUPPE "channel9"
        var dpGruppe = "channel9-kueche";
        var dpPunkt = "temperature";
        var idVariablenDP = "lmair.temp-sensoren." + dpGruppe + "." + dpPunkt;     // Pfad und Name, unter dem in der Javascript-Instanz der Datenpunkte angelegt wird
        createState(idVariablenDP, 0, forecreation, {                        // Datenpunkt wird angelegt
             name: dpPunkt,               // <-- !!!!!
             desc: dpPunkt + ' von ' + dpGruppe,      // <-- !!!!!
             type: 'number',
             def:  0.0,
             role: 'value'
        });
        var dpPunkt = "humidity";
        var idVariablenDP = "lmair.temp-sensoren." + dpGruppe + "." + dpPunkt;     // Pfad und Name, unter dem in der Javascript-Instanz der Datenpunkte angelegt wird
        createState(idVariablenDP, 0, forecreation, {                        // Datenpunkt wird angelegt
             name: dpPunkt,               // <-- !!!!!
             desc: dpPunkt + ' von ' + dpGruppe,      // <-- !!!!!
             type: 'number',
             def:  0.0,
             role: 'value'
        });
        // --- GRUPPE "channel10"
        var dpGruppe = "channel10-wohnzimmer";
        var dpPunkt = "temperature";
        var idVariablenDP = "lmair.temp-sensoren." + dpGruppe + "." + dpPunkt;     // Pfad und Name, unter dem in der Javascript-Instanz der Datenpunkte angelegt wird
        createState(idVariablenDP, 0, forecreation, {                        // Datenpunkt wird angelegt
             name: dpPunkt,               // <-- !!!!!
             desc: dpPunkt + ' von ' + dpGruppe,      // <-- !!!!!
             type: 'number',
             def:  0.0,
             role: 'value'
        });
        var dpPunkt = "humidity";
        var idVariablenDP = "lmair.temp-sensoren." + dpGruppe + "." + dpPunkt;     // Pfad und Name, unter dem in der Javascript-Instanz der Datenpunkte angelegt wird
        createState(idVariablenDP, 0, forecreation, {                        // Datenpunkt wird angelegt
             name: dpPunkt,               // <-- !!!!!
             desc: dpPunkt + ' von ' + dpGruppe,      // <-- !!!!!
             type: 'number',
             def:  0.0,
             role: 'value'
        });
        
        // --- GRUPPE "channel11"
        var dpGruppe = "channel11";
        var dpPunkt = "temperature";
        var idVariablenDP = "lmair.temp-sensoren." + dpGruppe + "." + dpPunkt;     // Pfad und Name, unter dem in der Javascript-Instanz der Datenpunkte angelegt wird
        createState(idVariablenDP, 0, forecreation, {                        // Datenpunkt wird angelegt
             name: dpPunkt,               // <-- !!!!!
             desc: dpPunkt + ' von ' + dpGruppe,      // <-- !!!!!
             type: 'number',
             def:  0.0,
             role: 'value'
        });
        var dpPunkt = "humidity";
        var idVariablenDP = "lmair.temp-sensoren." + dpGruppe + "." + dpPunkt;     // Pfad und Name, unter dem in der Javascript-Instanz der Datenpunkte angelegt wird
        createState(idVariablenDP, 0, forecreation, {                        // Datenpunkt wird angelegt
             name: dpPunkt,               // <-- !!!!!
             desc: dpPunkt + ' von ' + dpGruppe,      // <-- !!!!!
             type: 'number',
             def:  0.0,
             role: 'value'
        });
        
        
        // Funktionen:
        // -----------------------------------------------------------------------------
        function DatenAuslesen() {
            var req = http.get(RQoptions, function(res) {
            if(logOn) log('STATUS: ' + res.statusCode);               // Statuscode
            if(logOn) log('HEADERS: ' + JSON.stringify(res.headers)); // Header (Rückmeldung vom Webserver)
            // Buffer the body entirely for processing as a whole.
            var bodyChunks  = [];
            var chunkLine   = 0;
            res.on('data', function(chunk) {
                chunkLine = chunkLine + 1;
                if(logOn)  log("Zeilennummer: " + chunkLine+ " ,Inhalt: " +  chunk);
                // Hier können die einzelnen Zeilen verarbeitet werden...
                bodyChunks.push(chunk);
            }).on('end', function() {
                if(logOn) log("ARRAY mit den einzelnen Zeilen: " + bodyChunks);
                if(logOn) log("ARRAY Länge: " + bodyChunks.length);
        
                var body = Buffer.concat(bodyChunks);// erhaltene Daten
        
                if(logOn) log('BODY: ' + body);     // ...und/oder das Gesamtergebnis.
                DatenVerarbeiten(body);				// Abrufen der Bearbeitungs-Funktion
                });
            });
            req.on('error', function(e) { // Fehler abfangen
                log('ERROR: ' + e.message,"warn");
                return("error");
            });
        }
        // -----------------------------------------------------------------------------
        function DatenVerarbeiten(result) {
            var json = JSON.parse(result);
        	
        	if (json !== null) {
        		// GRUPPE "channel0"
        		setState("javascript.0.lmair.temp-sensoren.channel0.temperature", parseFloat(json.channel0.temperature));
        		setState("javascript.0.lmair.temp-sensoren.channel0.humidity", parseFloat(json.channel0.humidity));
                // GRUPPE "channel1"
        		setState("javascript.0.lmair.temp-sensoren.channel1.temperature", parseFloat(json.channel1.temperature));
        		setState("javascript.0.lmair.temp-sensoren.channel1.humidity", parseFloat(json.channel1.humidity));
        		// GRUPPE "channel2"
        		setState("javascript.0.lmair.temp-sensoren.channel2-bad.temperature", parseFloat(json.channel2.temperature));
        		setState("javascript.0.lmair.temp-sensoren.channel2-bad.humidity", parseFloat(json.channel2.humidity));
        		// GRUPPE "channel3"
        		setState("javascript.0.lmair.temp-sensoren.channel3.temperature", parseFloat(json.channel3.temperature));
        		setState("javascript.0.lmair.temp-sensoren.channel3.humidity", parseFloat(json.channel3.humidity));
        		// GRUPPE "channel4"
        		setState("javascript.0.lmair.temp-sensoren.channel4.temperature", parseFloat(json.channel4.temperature));
        		setState("javascript.0.lmair.temp-sensoren.channel4.humidity", parseFloat(json.channel4.humidity));
        		// GRUPPE "channel5"
        		setState("javascript.0.lmair.temp-sensoren.channel5.temperature", parseFloat(json.channel5.temperature));
        		setState("javascript.0.lmair.temp-sensoren.channel5.humidity", parseFloat(json.channel5.humidity));
        		// GRUPPE "channel6"
        		setState("javascript.0.lmair.temp-sensoren.channel6-daniel.temperature", parseFloat(json.channel6.temperature));
        		setState("javascript.0.lmair.temp-sensoren.channel6-daniel.humidity", parseFloat(json.channel6.humidity));
        		// GRUPPE "channel7"
        		setState("javascript.0.lmair.temp-sensoren.channel7-jessica.temperature", parseFloat(json.channel7.temperature));
        		setState("javascript.0.lmair.temp-sensoren.channel7-jessica.humidity", parseFloat(json.channel7.humidity));
        		// GRUPPE "channel8"
        		setState("javascript.0.lmair.temp-sensoren.channel8-schlafzimmer.temperature", parseFloat(json.channel8.temperature));
        		setState("javascript.0.lmair.temp-sensoren.channel8-schlafzimmer.humidity", parseFloat(json.channel8.humidity));
        		// GRUPPE "channel9"
        		setState("javascript.0.lmair.temp-sensoren.channel9-kueche.temperature", parseFloat(json.channel9.temperature));
        		setState("javascript.0.lmair.temp-sensoren.channel9-kueche.humidity", parseFloat(json.channel9.humidity));
        		// GRUPPE "channel10"
        		setState("javascript.0.lmair.temp-sensoren.channel10-wohnzimmer.temperature", parseFloat(json.channel10.temperature));
        		setState("javascript.0.lmair.temp-sensoren.channel10-wohnzimmer.humidity", parseFloat(json.channel10.humidity));
        		// GRUPPE "channel11"
        		setState("javascript.0.lmair.temp-sensoren.channel11.temperature", parseFloat(json.channel11.temperature));
        		setState("javascript.0.lmair.temp-sensoren.channel11.humidity", parseFloat(json.channel11.humidity));
        	} else {
        		log ("Fehler beim Einlesen der Daten.");
        	}
        }
        
        // Beim Skriptstart die Werte auslesen:
        // --------------------------------------------------------------------------
        setTimeout(DatenAuslesen, 1000);
        
        // Werte automatisch aktualisieren:
        // --------------------------------------------------------------------------
        schedule('*/30 * * * * *', DatenAuslesen);  // alle 30 sekunden 
        //
        
        1 Antwort Letzte Antwort
        0

        Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.

        Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.

        Mit deinem Input könnte dieser Beitrag noch besser werden 💗

        Registrieren Anmelden
        Antworten
        • In einem neuen Thema antworten
        Anmelden zum Antworten
        • Älteste zuerst
        • Neuste zuerst
        • Meiste Stimmen


        Support us

        ioBroker
        Community Adapters
        Donate

        557

        Online

        32.8k

        Benutzer

        82.9k

        Themen

        1.3m

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

        • Du hast noch kein Konto? Registrieren

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