Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

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

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. [GELÖST] Homepilot Umweltsensor mit Javascript auslesen

NEWS

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    10
    1
    180

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    24
    1
    1.4k

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

[GELÖST] Homepilot Umweltsensor mit Javascript auslesen

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
51 Beiträge 4 Kommentatoren 3.0k Aufrufe 1 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • M meicker

    @paul53
    Hallo Paul,
    lange war es ruhig :-) Ich habe ein klitzekleines Problem und ich versuche jetzt schon seit 3 Stunden das zu lösen, aber ich schaffe es nicht. Ich würde mich sehr freuen wenn Du mir kurz aufs Pferd helfen könntest am beispiel von temperatur unter [37]:

    974d3b78-32f3-434c-b4d5-e363341c964a-grafik.png

    5292ddd1-aafa-4762-82f1-60085a6693df-grafik.png

    Beim Homepilot hat sich alles durch ein Firmwareupdate geändert und ich möchte die daten nun wieder auslesen können. Dafür muss ich das Script anpassen was wir zusammen gemacht haben. Ich schaffe es aber nicht das selber anzupassen ...

    ich habe LINK schon geändert, da kommt nun der Inhalt vom Homepilot:
    216f921f-9201-41d8-83d8-a4ce3d6d8e91-grafik.png

    In Zeile 26 wollte ich bis hin zu capabilities kommen um dann in Zeile 42 die Temperatur auszulesen ... Aber irgendwie mache ich da was falsch :-(

    4cb78f27-5f34-4827-9574-d7df9eb7171e-grafik.png

    const request = require('request');
    const link = 'http://192.168.1.180/devices/1010005';
    const linkfsupunten = 'http://192.168.1.180/deviceajax.do?meter=1010009';
    const linkfsupoben = 'http://192.168.1.180/deviceajax.do?meter=1010008';
    //const linkcontrome1 = 'http://192.168.1.12/get/json/v1/1/temps/6/';
    
    // Datenpunkte erzeugen
    
    createState('Homepilot.Sonnenrichtung', 0, {type: 'number', unit: '°'});
    createState('Homepilot.Sonnenhöhe', 0, {type: 'number', unit: '°'});
    createState('Homepilot.Lichtwert', 0, {type: 'number', unit: 'lux'});
    createState('Homepilot.Windgeschwindigkeit', 0, {type: 'number', unit: 'm/s'});
    createState('Homepilot.Temperatur', 0, {type: 'number', unit: '°C'});
    createState('Homepilot.Regen', 0, {type: 'boolean', unit: ''});
    createState('Homepilot.Aktualisiert', 0, {type: 'string', unit: ''});
    createState('Homepilot.balkontüreoben', 0, {type: 'boolean', unit: ''});
    createState('Homepilot.balkontüreobenaktualisiert', 0, {type: 'string', unit: ''});
    createState('Homepilot.balkontüreunten', 0, {type: 'boolean', unit: ''});
    createState('Homepilot.balkontüreuntenaktualisiert', 0, {type: 'string', unit: ''});
    //createState('Controme.id', 0, {type: 'number', unit: ''});
    
    function sensordaten() {
        request(link, function(error,response, body) {
            if(error) log('Fehler request: ' + error, 'error');
            else {
                var data = JSON.parse(body).payload.device.capabilities;
                
                var dir = data[5].Sonnenrichtung;
                //log(dir);
                dir = parseFloat(dir.substr(dir.indexOf('(') + 1));
                setState('Homepilot.Sonnenrichtung', dir, true); 
                
                var ele = parseFloat(data[4].Sonnenhöhe);
                setState('Homepilot.Sonnenhöhe', ele, true); 
                
                var lux = parseFloat(data[0].Lichtwert);
                setState('Homepilot.Lichtwert', lux, true);
                
                var wind = parseFloat(data[1]['Windgeschw.']);
                setState('Homepilot.Windgeschwindigkeit', wind, true);
                
                var temp = parseFloat(capabilities[37].value);
                setState('Homepilot.Temperatur', temp, true);
                
                var regen = data[3].Regen; // Das ist ein String !
                    if(regen == 'Nicht erkannt') setState('Homepilot.Regen', false, true);
                    else setState('Homepilot.Regen', true, true);
                
                var aktualisiert = data[6].Aktualisiert; // Das ist ein String !
                setState('Homepilot.Aktualisiert', aktualisiert, true);
            }    
        });
    }
    
    function balkontuere() {
        request(linkfsupunten, function(error,response, body) {
            if(error) log('Fehler request: ' + error, 'error');
            else {
                var data = JSON.parse(body).data;
                var schliesserunten = data[0].Schließer; // Das ist ein String !
                    if(schliesserunten == 'Geöffnet') setState('Homepilot.balkontüreunten', false, true);
                    else setState('Homepilot.balkontüreunten', true, true);
                var aktualisiert = data[1].Aktualisiert; // Das ist ein String ! 
                setState('Homepilot.balkontüreuntenaktualisiert', aktualisiert, true);
            }    
        });
        request(linkfsupoben, function(error,response, body) {
            if(error) log('Fehler request: ' + error, 'error');
            else {
                var data = JSON.parse(body).data;
                var schliesseroben = data[0].Schließer; // Das ist ein String !
                    if(schliesseroben == 'Geöffnet') setState('Homepilot.balkontüreoben', false, true);
                    else setState('Homepilot.balkontüreoben', true, true);
                var aktualisiert = data[1].Aktualisiert; // Das ist ein String ! 
                setState('Homepilot.balkontüreobenaktualisiert', aktualisiert, true);
            }    
        });
    
    }
    /*function controme() {
        request(linkcontrome1, function(error,response, body) {
            if(error) log('Fehler request: ' + error, 'error');
            else {
                var data = JSON.parse(body).sensoren;
                var id = parseFloat(data[0].id);
                setState('Controme.id', id, true);
            }    
        });
    } */   
        
    function alledaten() {
       sensordaten();
       balkontuere();
       //controme();
    }
    schedule('*/30 * * * * *', alledaten); // alle 30 Sekunden
    

    hhh

    Ich würde mich sehr freuen wenn Du mir da eventuell weiter helfen könntest ... :-)

    Viele Grüße,
    Marc

    paul53P Offline
    paul53P Offline
    paul53
    schrieb am zuletzt editiert von paul53
    #41

    @meicker sagte:

    Ich würde mich sehr freuen wenn Du mir da eventuell weiter helfen könntest ..

    Ohne zu wissen, was sich geändert hat, kann ich nicht helfen.
    Ändere mal Zeile 42 in

    var temp = parseFloat(data[37].value);
    

    Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
    Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

    1 Antwort Letzte Antwort
    0
    • M Offline
      M Offline
      meicker
      schrieb am zuletzt editiert von
      #42

      @paul53
      Hi Paul,
      danke schon mal für die Rückmeldung. Habe ich geändert, ist aber glaube ich nicht richtig. Das heißt ja nicht mehr Data, das war bei dem alten JSON noch richtig.
      Schau mal in meinem ersten Post, da habe ich die neue JSON abgebildet und hier im Spoiler eingefügt.


      {"error_description":"OK","error_code":0,"payload":{"device":{"capabilities":[{"name":"TEMPERATURE_THRESH4_ENV_NAMES_CFG","value":"Temperatur 10° Winter","timestamp":-1},{"name":"WIND_THRESH1_VALUE_CFG","value":"6","min_value":"1","max_value":"32","step_size":"1","timestamp":1568054423},{"name":"SUN_THRESH5_ENV_NAMES_CFG","value":"-","timestamp":-1},{"name":"PROD_CODE_DEVICE_LOC","value":"32000064_S","timestamp":-1},{"name":"REACHABILITY_EVT","value":"true","timestamp":1568067423},{"name":"SUN_THRESH3_TEMPERATURE_VALUE_CFG","value":"21","min_value":"-5","max_value":"26","step_size":"1","timestamp":1568054418},{"name":"TEMPERATURE_THRESH5_VALUE_CFG","value":"-10","min_value":"-40","max_value":"80","step_size":"1","timestamp":1568054423},{"name":"DUSK_THRESH3_VALUE_CFG","value":"50","min_value":"1","max_value":"100","step_size":"1","timestamp":1568054415},{"name":"NAME_DEVICE_LOC","value":"Sensor UWS","timestamp":-1},{"name":"DAWN_THRESH1_ENV_NAMES_CFG","value":"Licht 20 Lux","timestamp":-1},{"name":"DUSK_THRESH2_ENV_NAMES_CFG","value":"Licht 25 Lux","timestamp":-1},{"name":"DCF_MODE_CFG","value":"true","timestamp":1568067423},{"name":"DAWN_THRESH4_VALUE_CFG","value":"80","min_value":"1","max_value":"100","step_size":"1","timestamp":1568054415},{"name":"SUN_THRESH3_TIME_2_RELEASE_CFG","value":"30","min_value":"1","max_value":"32","step_size":"1","timestamp":1568054418},{"name":"INTF_ID_DEVICE_LOC","value":"3","timestamp":-1},{"name":"TEMPERATURE_THRESH1_ENABLE_CFG","value":"true","timestamp":1568054423},{"name":"DAWN_ENABLE_THRESH4_CFG","value":"true","timestamp":1568054415},{"name":"TEMPERATURE_THRESH4_ENABLE_CFG","value":"true","timestamp":1568054423},{"name":"SUN_DIRECTION_MEA","value":"333.0","min_value":"0.0","max_value":"360.0","timestamp":1568067423},{"name":"SUN_DETECTION_MEA","value":"false","timestamp":1485440904},{"name":"WIND_SPEED_EVT","value":"0.0","min_value":"0.0","max_value":"70.0","step_size":"0.1","timestamp":1568067423},{"name":"SUN_THRESH4_ENABLE_CFG","value":"true","timestamp":1568054418},{"name":"SUN_THRESH4_TEMPERATURE_VALUE_CFG","value":"0","min_value":"-5","max_value":"26","step_size":"1","timestamp":1568054418},{"name":"WIND_SPEED_MS_MEA","value":"0.0","min_value":"0.0","max_value":"70.0","timestamp":1568067423},{"name":"WIND_THRESH3_ENV_NAMES_CFG","value":"Markise 11","timestamp":-1},{"name":"SUN_THRESH1_ELEVATION_RANGE_CFG","value":"0","min_value":"0","max_value":"52","step_size":"26","timestamp":1568054417},{"name":"DUSK_EVT","value":"5","min_value":"1","max_value":"5","step_size":"1","timestamp":1568052149},{"name":"SUN_THRESH4_VALUE_CFG","value":"20","min_value":"1","max_value":"100","step_size":"1","timestamp":1568054418},{"name":"SUN_THRESH2_TEMPERATURE_ENABLE_CFG","value":"true","timestamp":1568054417},{"name":"WIND_DETECT_FACTOR_CFG","value":"180","min_value":"1","max_value":"255","step_size":"1","timestamp":1568054425},{"name":"SUN_THRESH1_ENABLE_CFG","value":"true","timestamp":1568054417},{"name":"DAWN_THRESH3_VALUE_CFG","value":"60","min_value":"1","max_value":"100","step_size":"1","timestamp":1568054415},{"name":"DAWN_EVT","min_value":"1","max_value":"5","step_size":"1","timestamp":-1},{"name":"TEMPERATURE_START_EVT","value":"5","min_value":"1","max_value":"5","step_size":"1","timestamp":1534954010},{"name":"SUN_THRESH2_TEMPERATURE_VALUE_CFG","value":"21","min_value":"-5","max_value":"26","step_size":"1","timestamp":1568054417},{"name":"WIND_THRESH2_VALUE_CFG","value":"25","min_value":"1","max_value":"32","step_size":"1","timestamp":1568054423},{"name":"WIND_THRESH5_ENABLE_CFG","value":"false","timestamp":1568054423},{"name":"TEMP_CURR_DEG_MEA","value":"12.1","min_value":"-40.0","max_value":"80.0","timestamp":1568067423},{"name":"TEMPERATURE_THRESH4_VALUE_CFG","value":"10","min_value":"-40","max_value":"80","step_size":"1","timestamp":1568054423},{"name":"SUN_THRESH4_USE_AZIMUTH_CFG","value":"true","timestamp":1568054418},{"name":"SENS_STATUS_INTERVAL_CFG","value":"1","min_value":"1","max_value":"100","step_size":"1","timestamp":1568054425},{"name":"SUN_THRESH1_USE_AZIMUTH_CFG","value":"true","timestamp":1568054417},{"name":"TEMPERATURE_THRESH1_ENV_NAMES_CFG","value":"Temperatur 35° FREI","timestamp":-1},{"name":"DEGREE_LATITUDE_CFG","value":"51","min_value":"-90","max_value":"90","step_size":"1","timestamp":1568054425},{"name":"SUN_THRESH5_TARGET_ELEVATION_CFG","value":"13","min_value":"13","max_value":"78","step_size":"13","timestamp":1568054420},{"name":"SUN_THRESH2_ELEVATION_RANGE_CFG","value":"0","min_value":"0","max_value":"52","step_size":"26","timestamp":1568054417},{"name":"DUSK_THRESH2_VALUE_CFG","value":"25","min_value":"1","max_value":"100","step_size":"1","timestamp":1568054415},{"name":"SUN_THRESH1_TEMPERATURE_VALUE_CFG","value":"21","min_value":"-5","max_value":"26","step_size":"1","timestamp":1568054417},{"name":"SUN_THRESH3_TEMPERATURE_ENABLE_CFG","value":"true","timestamp":1568054418},{"name":"SUN_THRESH4_TIME_2_RELEASE_CFG","value":"20","min_value":"1","max_value":"32","step_size":"1","timestamp":1568054418},{"name":"TEMPERATURE_THRESH3_VALUE_CFG","value":"18","min_value":"-40","max_value":"80","step_size":"1","timestamp":1568054423},{"name":"TEMPERATURE_INT_CFG","value":"12.1","min_value":"-40.0","max_value":"80.0","step_size":"0.1","timestamp":1568067423},{"name":"DAWN_THRESH2_VALUE_CFG","value":"40","min_value":"1","max_value":"100","step_size":"1","timestamp":1568054415},{"name":"VERSION_CFG","value":"0.3","timestamp":1568067125},{"name":"DUSK_ENABLE_THRESH3_CFG","value":"true","timestamp":1568054415},{"name":"DEGREE_LONGITUDE_CFG","value":"7","min_value":"0","max_value":"360","step_size":"1","timestamp":1568054425},{"name":"DATE_TIME_CFG","value":"1568060671","timestamp":1568061932},{"name":"SUN_THRESH3_ENABLE_CFG","value":"true","timestamp":1568054418},{"name":"DAWN_THRESH3_ENV_NAMES_CFG","value":"Licht 60 Lux","timestamp":-1},{"name":"WIND_THRESH1_ENV_NAMES_CFG","value":"Markise 5","timestamp":-1},{"name":"SUN_THRESH2_TIME_2_RELEASE_CFG","value":"20","min_value":"1","max_value":"32","step_size":"1","timestamp":1568054417},{"name":"ICONSET_LOC","value":"iconset25","timestamp":-1},{"name":"DAWN_THRESH4_ENV_NAMES_CFG","value":"Licht 80 Lux","timestamp":-1},{"name":"SUN_START_EVT","min_value":"1","max_value":"5","step_size":"1","timestamp":-1},{"name":"DEVICE_TYPE_LOC","value":"3","timestamp":-1},{"name":"DUSK_ENABLE_THRESH1_CFG","value":"true","timestamp":1568054415},{"name":"DUSK_THRESH4_ENV_NAMES_CFG","value":"Licht 75 Lux","timestamp":-1},{"name":"ICONSET_INV_LOC","value":"false","timestamp":-1},{"name":"SUN_THRESH4_TARGET_ELEVATION_CFG","value":"13","min_value":"13","max_value":"78","step_size":"13","timestamp":1568054418},{"name":"DCF_VALID_EVT","value":"false","timestamp":1568067423},{"name":"DUSK_THRESH1_VALUE_CFG","value":"10","min_value":"1","max_value":"100","step_size":"1","timestamp":1568054415},{"name":"RESET_FULL_CMD","timestamp":-1},{"name":"SUN_THRESH1_TIME_2_DETECT_CFG","value":"15","min_value":"1","max_value":"32","step_size":"1","timestamp":1568054417},{"name":"PAIRING_CONFIRMED_LOC","value":"true","timestamp":-1},{"name":"DUSK_ENABLE_THRESH5_CFG","value":"true","timestamp":1568054417},{"name":"SUN_THRESH2_VALUE_CFG","value":"30","min_value":"1","max_value":"100","step_size":"1","timestamp":1568054417},{"name":"REQ_DATE_TIME_CMD","timestamp":-1},{"name":"DAWN_THRESH5_VALUE_CFG","value":"100","min_value":"1","max_value":"100","step_size":"1","timestamp":1568054417},{"name":"SUN_THRESH5_ENABLE_CFG","value":"true","timestamp":1568054420},{"name":"DAWN_ENABLE_THRESH2_CFG","value":"true","timestamp":1568054415},{"name":"DUSK_THRESH4_VALUE_CFG","value":"75","min_value":"1","max_value":"100","step_size":"1","timestamp":1568054415},{"name":"DAWN_THRESH5_ENV_NAMES_CFG","value":"Licht 100 Lux","timestamp":-1},{"name":"CURR_BRIGHTN_CFG","value":"0","min_value":"0","max_value":"150000","step_size":"1","timestamp":1568067423},{"name":"WIND_THRESH3_VALUE_CFG","value":"12","min_value":"1","max_value":"32","step_size":"1","timestamp":1568054423},{"name":"SUN_THRESH1_AZIMUTH_RANGE_CFG","value":"90.0","min_value":"0.0","max_value":"180.0","step_size":"45.0","timestamp":1568054417},{"name":"SUN_THRESH4_USE_ELEVATION_CFG","value":"false","timestamp":1568054418},{"name":"SUN_THRESH5_VALUE_CFG","value":"100","min_value":"1","max_value":"100","step_size":"1","timestamp":1568054420},{"name":"DUSK_THRESH5_ENV_NAMES_CFG","value":"Licht 100 Lux","timestamp":-1},{"name":"RAIN_START_EVT","timestamp":-1},{"name":"SUN_THRESH3_TARGET_ELEVATION_CFG","value":"39","min_value":"13","max_value":"78","step_size":"13","timestamp":1568054418},{"name":"SUN_THRESH1_TEMPERATURE_ENABLE_CFG","value":"true","timestamp":1568054417},{"name":"SUN_STOP_EVT","value":"5","min_value":"1","max_value":"5","step_size":"1","timestamp":1485440904},{"name":"SUN_THRESH5_AZIMUTH_RANGE_CFG","value":"0.0","min_value":"0.0","max_value":"180.0","step_size":"45.0","timestamp":1568054420},{"name":"TIME_ZONE_CFG","value":"1","min_value":"-11","max_value":"13","step_size":"1","timestamp":1568054425},{"name":"SUN_THRESH1_VALUE_CFG","value":"30","min_value":"1","max_value":"100","step_size":"1","timestamp":1568054417},{"name":"SUN_THRESH1_TIME_2_RELEASE_CFG","value":"30","min_value":"1","max_value":"32","step_size":"1","timestamp":1568054417},{"name":"SUN_THRESH3_TIME_2_DETECT_CFG","value":"10","min_value":"1","max_value":"32","step_size":"1","timestamp":1568054418},{"name":"SUN_THRESH3_USE_ELEVATION_CFG","value":"false","timestamp":1568054418},{"name":"SUN_THRESH5_TIME_2_RELEASE_CFG","value":"20","min_value":"1","max_value":"32","step_size":"1","timestamp":1568054420},{"name":"SUN_THRESH2_USE_ELEVATION_CFG","value":"false","timestamp":1568054417},{"name":"SUN_THRESH3_USE_AZIMUTH_CFG","value":"true","timestamp":1568054418},{"name":"WIND_THRESH4_ENABLE_CFG","value":"false","timestamp":1568054423},{"name":"DAWN_THRESH1_VALUE_CFG","value":"20","min_value":"1","max_value":"100","step_size":"1","timestamp":1568054415},{"name":"SUN_THRESH2_TARGET_ELEVATION_CFG","value":"13","min_value":"13","max_value":"78","step_size":"13","timestamp":1568054417},{"name":"DAWN_ENABLE_THRESH5_CFG","value":"true","timestamp":1568054417},{"name":"TEMPERATURE_THRESH2_VALUE_CFG","value":"25","min_value":"-40","max_value":"80","step_size":"1","timestamp":1568054423},{"name":"WIND_THRESH4_VALUE_CFG","value":"2","min_value":"1","max_value":"32","step_size":"1","timestamp":1568054423},{"name":"SUN_THRESH2_TIME_2_DETECT_CFG","value":"10","min_value":"1","max_value":"32","step_size":"1","timestamp":1568054417},{"name":"DAWN_THRESH2_ENV_NAMES_CFG","value":"Licht 40 Lux","timestamp":-1},{"name":"LIGHT_VAL_LUX_MEA","value":"0","min_value":"0","max_value":"150000","timestamp":1568067423},{"name":"ID_DEVICE_LOC","value":"1010005","timestamp":-1},{"name":"PROTOCOL_ID_CFG","value":"690732","timestamp":-1},{"name":"SUN_THRESH4_ENV_NAMES_CFG","value":"Sonne O - SW / 20Klux Winter","timestamp":-1},{"name":"SUN_HEIGHT_EVT","value":"-29","min_value":"-90","max_value":"90","step_size":"1","timestamp":1568067423},{"name":"SUN_THRESH1_USE_ELEVATION_CFG","value":"false","timestamp":1568054417},{"name":"SUN_THRESH4_TIME_2_DETECT_CFG","value":"5","min_value":"1","max_value":"32","step_size":"1","timestamp":1568054418},{"name":"SUN_THRESH3_AZIMUTH_RANGE_CFG","value":"90.0","min_value":"0.0","max_value":"180.0","step_size":"45.0","timestamp":1568054418},{"name":"TEMPERATURE_THRESH3_ENABLE_CFG","value":"true","timestamp":1568054423},{"name":"SUN_THRESH1_ENV_NAMES_CFG","value":"Sonne O - S / 30 KLux Sommer","timestamp":-1},{"name":"RAIN_STOP_EVT","timestamp":1568016601},{"name":"TEMPERATURE_THRESH5_ENV_NAMES_CFG","value":"Temperatur -10° FREI","timestamp":-1},{"name":"RAIN_DETECTION_ENABLE_CFG","value":"true","timestamp":1568054423},{"name":"DUSK_THRESH3_ENV_NAMES_CFG","value":"Licht 50 Lux","timestamp":-1},{"name":"SUN_THRESH4_AZIMUTH_RANGE_CFG","value":"135.0","min_value":"0.0","max_value":"180.0","step_size":"45.0","timestamp":1568054418},{"name":"WIND_THRESH5_VALUE_CFG","value":"2","min_value":"1","max_value":"32","step_size":"1","timestamp":1568054423},{"name":"VIS_DEVICE_LOC","value":"true","timestamp":-1},{"name":"SUN_THRESH1_TARGET_ELEVATION_CFG","value":"13","min_value":"13","max_value":"78","step_size":"13","timestamp":1568054417},{"name":"WIND_THRESH2_ENV_NAMES_CFG","value":"Rolläden","timestamp":-1},{"name":"REQ_SENS_INFO_CMD","timestamp":-1},{"name":"TEMPERATURE_THRESH2_ENABLE_CFG","value":"true","timestamp":1568054423},{"name":"TEMPERATURE_THRESH1_VALUE_CFG","value":"35","min_value":"-40","max_value":"80","step_size":"1","timestamp":1568054423},{"name":"SUN_THRESH2_ENABLE_CFG","value":"true","timestamp":1568054417},{"name":"DESCR_DEVICE_LOC","value":"Balkon","timestamp":-1},{"name":"RAIN_DETECTION_MEA","value":"false","timestamp":1568067423},{"name":"SUN_THRESH2_USE_AZIMUTH_CFG","value":"true","timestamp":1568054417},{"name":"DUSK_THRESH5_VALUE_CFG","value":"100","min_value":"1","max_value":"100","step_size":"1","timestamp":1568054417},{"name":"SUN_THRESH2_AZIMUTH_RANGE_CFG","value":"135.0","min_value":"0.0","max_value":"180.0","step_size":"45.0","timestamp":1568054417},{"name":"TEMPERATURE_THRESH5_ENABLE_CFG","value":"true","timestamp":1568054423},{"name":"SUN_THRESH5_USE_ELEVATION_CFG","value":"false","timestamp":1568054420},{"name":"DUSK_ENABLE_THRESH2_CFG","value":"true","timestamp":1568054415},{"name":"SUN_THRESH3_VALUE_CFG","value":"30","min_value":"1","max_value":"100","step_size":"1","timestamp":1568054418},{"name":"RESET_WO_PAIR_CMD","timestamp":-1},{"name":"SUN_THRESH3_ENV_NAMES_CFG","value":"Sonne W - NW / 30 KLux Sommer","timestamp":-1},{"name":"PROT_ID_DEVICE_LOC","value":"690732_S_1","timestamp":-1},{"name":"WIND_THRESH3_ENABLE_CFG","value":"true","timestamp":1568054423},{"name":"SUN_THRESH3_ELEVATION_RANGE_CFG","value":"0","min_value":"0","max_value":"52","step_size":"26","timestamp":1568054418},{"name":"WIND_DETECT_TIME_CFG","value":"1","min_value":"1","max_value":"255","step_size":"1","timestamp":1568054425},{"name":"DAWN_ENABLE_THRESH1_CFG","value":"true","timestamp":1568054415},{"name":"TEMPERATURE_STOP_EVT","value":"3","min_value":"1","max_value":"5","step_size":"1","timestamp":1568038009},{"name":"SUN_THRESH2_ENV_NAMES_CFG","value":"Sonne S - W / 30 KLux Sommer","timestamp":-1},{"name":"WIND_START_EVT","min_value":"1","max_value":"5","step_size":"1","timestamp":-1},{"name":"SUN_THRESH1_TARGET_AZIMUTH_CFG","value":"135.0","min_value":"22.5","max_value":"315.0","step_size":"22.5","timestamp":1568054417},{"name":"SUN_HEIGHT_DEG_MEA","value":"-29","min_value":"-90","max_value":"90","timestamp":1568067423},{"name":"TEMPERATURE_THRESH2_ENV_NAMES_CFG","value":"Temperatur 25° Sonne","timestamp":-1},{"name":"AUTOMATIC_SOMMERTIME_CFG","value":"false","timestamp":1568061932},{"name":"RMT_STOP_PAIR_CMD","timestamp":-1},{"name":"REQ_SENS_CFG_CMD","timestamp":-1},{"name":"SUN_THRESH5_TIME_2_DETECT_CFG","value":"1","min_value":"1","max_value":"32","step_size":"1","timestamp":1568054420},{"name":"SENS_STATUS_MODE_CFG","value":"true","timestamp":1568054425},{"name":"SUN_THRESH4_TEMPERATURE_ENABLE_CFG","value":"false","timestamp":1568054418},{"name":"WIND_THRESH5_ENV_NAMES_CFG","value":"Mein Reaktionswert 5","timestamp":-1},{"name":"SUN_THRESH5_TARGET_AZIMUTH_CFG","value":"22.5","min_value":"22.5","max_value":"315.0","step_size":"22.5","timestamp":1568054420},{"name":"SUN_THRESH4_ELEVATION_RANGE_CFG","value":"0","min_value":"0","max_value":"52","step_size":"26","timestamp":1568054418},{"name":"TEMPERATURE_THRESH3_ENV_NAMES_CFG","value":"Temperatur 18° Ventilator","timestamp":-1},{"name":"SUN_THRESH5_TEMPERATURE_VALUE_CFG","value":"0","min_value":"-5","max_value":"26","step_size":"1","timestamp":1568054420},{"name":"WIND_STOP_EVT","value":"5","min_value":"1","max_value":"5","step_size":"1","timestamp":1568067121},{"name":"RAIN_DETECTED_EVT","value":"false","timestamp":1568067423},{"name":"RMT_START_PAIR_CMD","timestamp":-1},{"name":"SUN_THRESH4_TARGET_AZIMUTH_CFG","value":"157.5","min_value":"22.5","max_value":"315.0","step_size":"22.5","timestamp":1568054418},{"name":"SUN_THRESH3_TARGET_AZIMUTH_CFG","value":"292.5","min_value":"22.5","max_value":"315.0","step_size":"22.5","timestamp":1568054418},{"name":"SUN_THRESH2_TARGET_AZIMUTH_CFG","value":"157.5","min_value":"22.5","max_value":"315.0","step_size":"22.5","timestamp":1568054417},{"name":"DUSK_THRESH1_ENV_NAMES_CFG","value":"Licht 10 Lux","timestamp":-1},{"name":"WIND_THRESH1_ENABLE_CFG","value":"true","timestamp":1568054423},{"name":"WIND_THRESH2_ENABLE_CFG","value":"true","timestamp":1568054423},{"name":"USE_SECURE_WIND_FCT_CFG","value":"true","timestamp":1568054425},{"name":"SUN_DIRECTION_EVT","value":"333.0","min_value":"0.0","max_value":"360.0","step_size":"1.5","timestamp":1568067423},{"name":"SUN_THRESH5_TEMPERATURE_ENABLE_CFG","value":"false","timestamp":1568054420},{"name":"RMT_START_UNPAIR_CMD","timestamp":-1},{"name":"SUN_THRESH5_USE_AZIMUTH_CFG","value":"false","timestamp":1568054420},{"name":"DUSK_ENABLE_THRESH4_CFG","value":"true","timestamp":1568054415},{"name":"SUN_THRESH5_ELEVATION_RANGE_CFG","value":"0","min_value":"0","max_value":"52","step_size":"26","timestamp":1568054420},{"name":"DAWN_ENABLE_THRESH3_CFG","value":"true","timestamp":1568054415},{"name":"WIND_THRESH4_ENV_NAMES_CFG","value":"Mein Reaktionswert 4","timestamp":-1}],"scenes":[]}}}

      Wichtig ist doch jetzt erst einmal der Weg zu den Daten. Wenn ich das richtig sehe ist das Zeile 26 Die habe ich geändert von
      var data = JSON.parse(body).data; in
      var data = JSON.parse(body).payload.device.capabilities;
      um es an die neue JSON anzupassen

      In Zeile 42/43 soll dann auf [37] zugegriffen werden und die Daten übertragen werden.

      Kannst Du damit jetzt mehr anfangen ? Das Script ist hier im Spoiler noch mal drin


      const request = require('request');
      const link = 'http://192.168.1.180/devices/1010005';
      //const linkfsupunten = 'http://192.168.1.180/deviceajax.do?meter=1010009';
      //const linkfsupoben = 'http://192.168.1.180/deviceajax.do?meter=1010008';

      // Datenpunkte erzeugen

      createState('Homepilot.Sonnenrichtung', 0, {type: 'number', unit: '°'});
      createState('Homepilot.Sonnenhöhe', 0, {type: 'number', unit: '°'});
      createState('Homepilot.Lichtwert', 0, {type: 'number', unit: 'lux'});
      createState('Homepilot.Windgeschwindigkeit', 0, {type: 'number', unit: 'm/s'});
      createState('Homepilot.Temperatur', 0, {type: 'number', unit: '°C'});
      createState('Homepilot.Regen', 0, {type: 'boolean', unit: ''});
      createState('Homepilot.Aktualisiert', 0, {type: 'string', unit: ''});
      createState('Homepilot.balkontüreoben', 0, {type: 'boolean', unit: ''});
      createState('Homepilot.balkontüreobenaktualisiert', 0, {type: 'string', unit: ''});
      createState('Homepilot.balkontüreunten', 0, {type: 'boolean', unit: ''});
      createState('Homepilot.balkontüreuntenaktualisiert', 0, {type: 'string', unit: ''});

      function sensordaten() {
      request(link, function(error,response, body) {
      if(error) log('Fehler request: ' + error, 'error');
      else {
      var data = JSON.parse(body).payload.device.capabilities;

              var dir = data[5].Sonnenrichtung;
              //log(dir);
              dir = parseFloat(dir.substr(dir.indexOf('(') + 1));
              setState('Homepilot.Sonnenrichtung', dir, true); 
              
              var ele = parseFloat(data[4].Sonnenhöhe);
              setState('Homepilot.Sonnenhöhe', ele, true); 
              
              var lux = parseFloat(data[0].Lichtwert);
              setState('Homepilot.Lichtwert', lux, true);
              
              var wind = parseFloat(data[1]['Windgeschw.']);
              setState('Homepilot.Windgeschwindigkeit', wind, true);
              
              var temp = parseFloat(data[37].value);
              setState('Homepilot.Temperatur', temp, true);
              
              var regen = data[3].Regen; // Das ist ein String !
                  if(regen == 'Nicht erkannt') setState('Homepilot.Regen', false, true);
                  else setState('Homepilot.Regen', true, true);
              
              var aktualisiert = data[6].Aktualisiert; // Das ist ein String !
              setState('Homepilot.Aktualisiert', aktualisiert, true);
          }    
      });
      

      }

      function balkontuere() {
      request(linkfsupunten, function(error,response, body) {
      if(error) log('Fehler request: ' + error, 'error');
      else {
      var data = JSON.parse(body).data;
      var schliesserunten = data[0].Schließer; // Das ist ein String !
      if(schliesserunten == 'Geöffnet') setState('Homepilot.balkontüreunten', false, true);
      else setState('Homepilot.balkontüreunten', true, true);
      var aktualisiert = data[1].Aktualisiert; // Das ist ein String !
      setState('Homepilot.balkontüreuntenaktualisiert', aktualisiert, true);
      }
      });
      request(linkfsupoben, function(error,response, body) {
      if(error) log('Fehler request: ' + error, 'error');
      else {
      var data = JSON.parse(body).data;
      var schliesseroben = data[0].Schließer; // Das ist ein String !
      if(schliesseroben == 'Geöffnet') setState('Homepilot.balkontüreoben', false, true);
      else setState('Homepilot.balkontüreoben', true, true);
      var aktualisiert = data[1].Aktualisiert; // Das ist ein String !
      setState('Homepilot.balkontüreobenaktualisiert', aktualisiert, true);
      }
      });

      }
      /*function controme() {
      request(linkcontrome1, function(error,response, body) {
      if(error) log('Fehler request: ' + error, 'error');
      else {
      var data = JSON.parse(body).sensoren;
      var id = parseFloat(data[0].id);
      setState('Controme.id', id, true);
      }
      });
      } */

      function alledaten() {
      sensordaten();
      balkontuere();
      //controme();
      }
      schedule('*/30 * * * * *', alledaten); // alle 30 Sekunden

      Vielen dank nochmal und viele Grüße,
      Marc

      paul53P 1 Antwort Letzte Antwort
      0
      • M meicker

        @paul53
        Hi Paul,
        danke schon mal für die Rückmeldung. Habe ich geändert, ist aber glaube ich nicht richtig. Das heißt ja nicht mehr Data, das war bei dem alten JSON noch richtig.
        Schau mal in meinem ersten Post, da habe ich die neue JSON abgebildet und hier im Spoiler eingefügt.


        {"error_description":"OK","error_code":0,"payload":{"device":{"capabilities":[{"name":"TEMPERATURE_THRESH4_ENV_NAMES_CFG","value":"Temperatur 10° Winter","timestamp":-1},{"name":"WIND_THRESH1_VALUE_CFG","value":"6","min_value":"1","max_value":"32","step_size":"1","timestamp":1568054423},{"name":"SUN_THRESH5_ENV_NAMES_CFG","value":"-","timestamp":-1},{"name":"PROD_CODE_DEVICE_LOC","value":"32000064_S","timestamp":-1},{"name":"REACHABILITY_EVT","value":"true","timestamp":1568067423},{"name":"SUN_THRESH3_TEMPERATURE_VALUE_CFG","value":"21","min_value":"-5","max_value":"26","step_size":"1","timestamp":1568054418},{"name":"TEMPERATURE_THRESH5_VALUE_CFG","value":"-10","min_value":"-40","max_value":"80","step_size":"1","timestamp":1568054423},{"name":"DUSK_THRESH3_VALUE_CFG","value":"50","min_value":"1","max_value":"100","step_size":"1","timestamp":1568054415},{"name":"NAME_DEVICE_LOC","value":"Sensor UWS","timestamp":-1},{"name":"DAWN_THRESH1_ENV_NAMES_CFG","value":"Licht 20 Lux","timestamp":-1},{"name":"DUSK_THRESH2_ENV_NAMES_CFG","value":"Licht 25 Lux","timestamp":-1},{"name":"DCF_MODE_CFG","value":"true","timestamp":1568067423},{"name":"DAWN_THRESH4_VALUE_CFG","value":"80","min_value":"1","max_value":"100","step_size":"1","timestamp":1568054415},{"name":"SUN_THRESH3_TIME_2_RELEASE_CFG","value":"30","min_value":"1","max_value":"32","step_size":"1","timestamp":1568054418},{"name":"INTF_ID_DEVICE_LOC","value":"3","timestamp":-1},{"name":"TEMPERATURE_THRESH1_ENABLE_CFG","value":"true","timestamp":1568054423},{"name":"DAWN_ENABLE_THRESH4_CFG","value":"true","timestamp":1568054415},{"name":"TEMPERATURE_THRESH4_ENABLE_CFG","value":"true","timestamp":1568054423},{"name":"SUN_DIRECTION_MEA","value":"333.0","min_value":"0.0","max_value":"360.0","timestamp":1568067423},{"name":"SUN_DETECTION_MEA","value":"false","timestamp":1485440904},{"name":"WIND_SPEED_EVT","value":"0.0","min_value":"0.0","max_value":"70.0","step_size":"0.1","timestamp":1568067423},{"name":"SUN_THRESH4_ENABLE_CFG","value":"true","timestamp":1568054418},{"name":"SUN_THRESH4_TEMPERATURE_VALUE_CFG","value":"0","min_value":"-5","max_value":"26","step_size":"1","timestamp":1568054418},{"name":"WIND_SPEED_MS_MEA","value":"0.0","min_value":"0.0","max_value":"70.0","timestamp":1568067423},{"name":"WIND_THRESH3_ENV_NAMES_CFG","value":"Markise 11","timestamp":-1},{"name":"SUN_THRESH1_ELEVATION_RANGE_CFG","value":"0","min_value":"0","max_value":"52","step_size":"26","timestamp":1568054417},{"name":"DUSK_EVT","value":"5","min_value":"1","max_value":"5","step_size":"1","timestamp":1568052149},{"name":"SUN_THRESH4_VALUE_CFG","value":"20","min_value":"1","max_value":"100","step_size":"1","timestamp":1568054418},{"name":"SUN_THRESH2_TEMPERATURE_ENABLE_CFG","value":"true","timestamp":1568054417},{"name":"WIND_DETECT_FACTOR_CFG","value":"180","min_value":"1","max_value":"255","step_size":"1","timestamp":1568054425},{"name":"SUN_THRESH1_ENABLE_CFG","value":"true","timestamp":1568054417},{"name":"DAWN_THRESH3_VALUE_CFG","value":"60","min_value":"1","max_value":"100","step_size":"1","timestamp":1568054415},{"name":"DAWN_EVT","min_value":"1","max_value":"5","step_size":"1","timestamp":-1},{"name":"TEMPERATURE_START_EVT","value":"5","min_value":"1","max_value":"5","step_size":"1","timestamp":1534954010},{"name":"SUN_THRESH2_TEMPERATURE_VALUE_CFG","value":"21","min_value":"-5","max_value":"26","step_size":"1","timestamp":1568054417},{"name":"WIND_THRESH2_VALUE_CFG","value":"25","min_value":"1","max_value":"32","step_size":"1","timestamp":1568054423},{"name":"WIND_THRESH5_ENABLE_CFG","value":"false","timestamp":1568054423},{"name":"TEMP_CURR_DEG_MEA","value":"12.1","min_value":"-40.0","max_value":"80.0","timestamp":1568067423},{"name":"TEMPERATURE_THRESH4_VALUE_CFG","value":"10","min_value":"-40","max_value":"80","step_size":"1","timestamp":1568054423},{"name":"SUN_THRESH4_USE_AZIMUTH_CFG","value":"true","timestamp":1568054418},{"name":"SENS_STATUS_INTERVAL_CFG","value":"1","min_value":"1","max_value":"100","step_size":"1","timestamp":1568054425},{"name":"SUN_THRESH1_USE_AZIMUTH_CFG","value":"true","timestamp":1568054417},{"name":"TEMPERATURE_THRESH1_ENV_NAMES_CFG","value":"Temperatur 35° FREI","timestamp":-1},{"name":"DEGREE_LATITUDE_CFG","value":"51","min_value":"-90","max_value":"90","step_size":"1","timestamp":1568054425},{"name":"SUN_THRESH5_TARGET_ELEVATION_CFG","value":"13","min_value":"13","max_value":"78","step_size":"13","timestamp":1568054420},{"name":"SUN_THRESH2_ELEVATION_RANGE_CFG","value":"0","min_value":"0","max_value":"52","step_size":"26","timestamp":1568054417},{"name":"DUSK_THRESH2_VALUE_CFG","value":"25","min_value":"1","max_value":"100","step_size":"1","timestamp":1568054415},{"name":"SUN_THRESH1_TEMPERATURE_VALUE_CFG","value":"21","min_value":"-5","max_value":"26","step_size":"1","timestamp":1568054417},{"name":"SUN_THRESH3_TEMPERATURE_ENABLE_CFG","value":"true","timestamp":1568054418},{"name":"SUN_THRESH4_TIME_2_RELEASE_CFG","value":"20","min_value":"1","max_value":"32","step_size":"1","timestamp":1568054418},{"name":"TEMPERATURE_THRESH3_VALUE_CFG","value":"18","min_value":"-40","max_value":"80","step_size":"1","timestamp":1568054423},{"name":"TEMPERATURE_INT_CFG","value":"12.1","min_value":"-40.0","max_value":"80.0","step_size":"0.1","timestamp":1568067423},{"name":"DAWN_THRESH2_VALUE_CFG","value":"40","min_value":"1","max_value":"100","step_size":"1","timestamp":1568054415},{"name":"VERSION_CFG","value":"0.3","timestamp":1568067125},{"name":"DUSK_ENABLE_THRESH3_CFG","value":"true","timestamp":1568054415},{"name":"DEGREE_LONGITUDE_CFG","value":"7","min_value":"0","max_value":"360","step_size":"1","timestamp":1568054425},{"name":"DATE_TIME_CFG","value":"1568060671","timestamp":1568061932},{"name":"SUN_THRESH3_ENABLE_CFG","value":"true","timestamp":1568054418},{"name":"DAWN_THRESH3_ENV_NAMES_CFG","value":"Licht 60 Lux","timestamp":-1},{"name":"WIND_THRESH1_ENV_NAMES_CFG","value":"Markise 5","timestamp":-1},{"name":"SUN_THRESH2_TIME_2_RELEASE_CFG","value":"20","min_value":"1","max_value":"32","step_size":"1","timestamp":1568054417},{"name":"ICONSET_LOC","value":"iconset25","timestamp":-1},{"name":"DAWN_THRESH4_ENV_NAMES_CFG","value":"Licht 80 Lux","timestamp":-1},{"name":"SUN_START_EVT","min_value":"1","max_value":"5","step_size":"1","timestamp":-1},{"name":"DEVICE_TYPE_LOC","value":"3","timestamp":-1},{"name":"DUSK_ENABLE_THRESH1_CFG","value":"true","timestamp":1568054415},{"name":"DUSK_THRESH4_ENV_NAMES_CFG","value":"Licht 75 Lux","timestamp":-1},{"name":"ICONSET_INV_LOC","value":"false","timestamp":-1},{"name":"SUN_THRESH4_TARGET_ELEVATION_CFG","value":"13","min_value":"13","max_value":"78","step_size":"13","timestamp":1568054418},{"name":"DCF_VALID_EVT","value":"false","timestamp":1568067423},{"name":"DUSK_THRESH1_VALUE_CFG","value":"10","min_value":"1","max_value":"100","step_size":"1","timestamp":1568054415},{"name":"RESET_FULL_CMD","timestamp":-1},{"name":"SUN_THRESH1_TIME_2_DETECT_CFG","value":"15","min_value":"1","max_value":"32","step_size":"1","timestamp":1568054417},{"name":"PAIRING_CONFIRMED_LOC","value":"true","timestamp":-1},{"name":"DUSK_ENABLE_THRESH5_CFG","value":"true","timestamp":1568054417},{"name":"SUN_THRESH2_VALUE_CFG","value":"30","min_value":"1","max_value":"100","step_size":"1","timestamp":1568054417},{"name":"REQ_DATE_TIME_CMD","timestamp":-1},{"name":"DAWN_THRESH5_VALUE_CFG","value":"100","min_value":"1","max_value":"100","step_size":"1","timestamp":1568054417},{"name":"SUN_THRESH5_ENABLE_CFG","value":"true","timestamp":1568054420},{"name":"DAWN_ENABLE_THRESH2_CFG","value":"true","timestamp":1568054415},{"name":"DUSK_THRESH4_VALUE_CFG","value":"75","min_value":"1","max_value":"100","step_size":"1","timestamp":1568054415},{"name":"DAWN_THRESH5_ENV_NAMES_CFG","value":"Licht 100 Lux","timestamp":-1},{"name":"CURR_BRIGHTN_CFG","value":"0","min_value":"0","max_value":"150000","step_size":"1","timestamp":1568067423},{"name":"WIND_THRESH3_VALUE_CFG","value":"12","min_value":"1","max_value":"32","step_size":"1","timestamp":1568054423},{"name":"SUN_THRESH1_AZIMUTH_RANGE_CFG","value":"90.0","min_value":"0.0","max_value":"180.0","step_size":"45.0","timestamp":1568054417},{"name":"SUN_THRESH4_USE_ELEVATION_CFG","value":"false","timestamp":1568054418},{"name":"SUN_THRESH5_VALUE_CFG","value":"100","min_value":"1","max_value":"100","step_size":"1","timestamp":1568054420},{"name":"DUSK_THRESH5_ENV_NAMES_CFG","value":"Licht 100 Lux","timestamp":-1},{"name":"RAIN_START_EVT","timestamp":-1},{"name":"SUN_THRESH3_TARGET_ELEVATION_CFG","value":"39","min_value":"13","max_value":"78","step_size":"13","timestamp":1568054418},{"name":"SUN_THRESH1_TEMPERATURE_ENABLE_CFG","value":"true","timestamp":1568054417},{"name":"SUN_STOP_EVT","value":"5","min_value":"1","max_value":"5","step_size":"1","timestamp":1485440904},{"name":"SUN_THRESH5_AZIMUTH_RANGE_CFG","value":"0.0","min_value":"0.0","max_value":"180.0","step_size":"45.0","timestamp":1568054420},{"name":"TIME_ZONE_CFG","value":"1","min_value":"-11","max_value":"13","step_size":"1","timestamp":1568054425},{"name":"SUN_THRESH1_VALUE_CFG","value":"30","min_value":"1","max_value":"100","step_size":"1","timestamp":1568054417},{"name":"SUN_THRESH1_TIME_2_RELEASE_CFG","value":"30","min_value":"1","max_value":"32","step_size":"1","timestamp":1568054417},{"name":"SUN_THRESH3_TIME_2_DETECT_CFG","value":"10","min_value":"1","max_value":"32","step_size":"1","timestamp":1568054418},{"name":"SUN_THRESH3_USE_ELEVATION_CFG","value":"false","timestamp":1568054418},{"name":"SUN_THRESH5_TIME_2_RELEASE_CFG","value":"20","min_value":"1","max_value":"32","step_size":"1","timestamp":1568054420},{"name":"SUN_THRESH2_USE_ELEVATION_CFG","value":"false","timestamp":1568054417},{"name":"SUN_THRESH3_USE_AZIMUTH_CFG","value":"true","timestamp":1568054418},{"name":"WIND_THRESH4_ENABLE_CFG","value":"false","timestamp":1568054423},{"name":"DAWN_THRESH1_VALUE_CFG","value":"20","min_value":"1","max_value":"100","step_size":"1","timestamp":1568054415},{"name":"SUN_THRESH2_TARGET_ELEVATION_CFG","value":"13","min_value":"13","max_value":"78","step_size":"13","timestamp":1568054417},{"name":"DAWN_ENABLE_THRESH5_CFG","value":"true","timestamp":1568054417},{"name":"TEMPERATURE_THRESH2_VALUE_CFG","value":"25","min_value":"-40","max_value":"80","step_size":"1","timestamp":1568054423},{"name":"WIND_THRESH4_VALUE_CFG","value":"2","min_value":"1","max_value":"32","step_size":"1","timestamp":1568054423},{"name":"SUN_THRESH2_TIME_2_DETECT_CFG","value":"10","min_value":"1","max_value":"32","step_size":"1","timestamp":1568054417},{"name":"DAWN_THRESH2_ENV_NAMES_CFG","value":"Licht 40 Lux","timestamp":-1},{"name":"LIGHT_VAL_LUX_MEA","value":"0","min_value":"0","max_value":"150000","timestamp":1568067423},{"name":"ID_DEVICE_LOC","value":"1010005","timestamp":-1},{"name":"PROTOCOL_ID_CFG","value":"690732","timestamp":-1},{"name":"SUN_THRESH4_ENV_NAMES_CFG","value":"Sonne O - SW / 20Klux Winter","timestamp":-1},{"name":"SUN_HEIGHT_EVT","value":"-29","min_value":"-90","max_value":"90","step_size":"1","timestamp":1568067423},{"name":"SUN_THRESH1_USE_ELEVATION_CFG","value":"false","timestamp":1568054417},{"name":"SUN_THRESH4_TIME_2_DETECT_CFG","value":"5","min_value":"1","max_value":"32","step_size":"1","timestamp":1568054418},{"name":"SUN_THRESH3_AZIMUTH_RANGE_CFG","value":"90.0","min_value":"0.0","max_value":"180.0","step_size":"45.0","timestamp":1568054418},{"name":"TEMPERATURE_THRESH3_ENABLE_CFG","value":"true","timestamp":1568054423},{"name":"SUN_THRESH1_ENV_NAMES_CFG","value":"Sonne O - S / 30 KLux Sommer","timestamp":-1},{"name":"RAIN_STOP_EVT","timestamp":1568016601},{"name":"TEMPERATURE_THRESH5_ENV_NAMES_CFG","value":"Temperatur -10° FREI","timestamp":-1},{"name":"RAIN_DETECTION_ENABLE_CFG","value":"true","timestamp":1568054423},{"name":"DUSK_THRESH3_ENV_NAMES_CFG","value":"Licht 50 Lux","timestamp":-1},{"name":"SUN_THRESH4_AZIMUTH_RANGE_CFG","value":"135.0","min_value":"0.0","max_value":"180.0","step_size":"45.0","timestamp":1568054418},{"name":"WIND_THRESH5_VALUE_CFG","value":"2","min_value":"1","max_value":"32","step_size":"1","timestamp":1568054423},{"name":"VIS_DEVICE_LOC","value":"true","timestamp":-1},{"name":"SUN_THRESH1_TARGET_ELEVATION_CFG","value":"13","min_value":"13","max_value":"78","step_size":"13","timestamp":1568054417},{"name":"WIND_THRESH2_ENV_NAMES_CFG","value":"Rolläden","timestamp":-1},{"name":"REQ_SENS_INFO_CMD","timestamp":-1},{"name":"TEMPERATURE_THRESH2_ENABLE_CFG","value":"true","timestamp":1568054423},{"name":"TEMPERATURE_THRESH1_VALUE_CFG","value":"35","min_value":"-40","max_value":"80","step_size":"1","timestamp":1568054423},{"name":"SUN_THRESH2_ENABLE_CFG","value":"true","timestamp":1568054417},{"name":"DESCR_DEVICE_LOC","value":"Balkon","timestamp":-1},{"name":"RAIN_DETECTION_MEA","value":"false","timestamp":1568067423},{"name":"SUN_THRESH2_USE_AZIMUTH_CFG","value":"true","timestamp":1568054417},{"name":"DUSK_THRESH5_VALUE_CFG","value":"100","min_value":"1","max_value":"100","step_size":"1","timestamp":1568054417},{"name":"SUN_THRESH2_AZIMUTH_RANGE_CFG","value":"135.0","min_value":"0.0","max_value":"180.0","step_size":"45.0","timestamp":1568054417},{"name":"TEMPERATURE_THRESH5_ENABLE_CFG","value":"true","timestamp":1568054423},{"name":"SUN_THRESH5_USE_ELEVATION_CFG","value":"false","timestamp":1568054420},{"name":"DUSK_ENABLE_THRESH2_CFG","value":"true","timestamp":1568054415},{"name":"SUN_THRESH3_VALUE_CFG","value":"30","min_value":"1","max_value":"100","step_size":"1","timestamp":1568054418},{"name":"RESET_WO_PAIR_CMD","timestamp":-1},{"name":"SUN_THRESH3_ENV_NAMES_CFG","value":"Sonne W - NW / 30 KLux Sommer","timestamp":-1},{"name":"PROT_ID_DEVICE_LOC","value":"690732_S_1","timestamp":-1},{"name":"WIND_THRESH3_ENABLE_CFG","value":"true","timestamp":1568054423},{"name":"SUN_THRESH3_ELEVATION_RANGE_CFG","value":"0","min_value":"0","max_value":"52","step_size":"26","timestamp":1568054418},{"name":"WIND_DETECT_TIME_CFG","value":"1","min_value":"1","max_value":"255","step_size":"1","timestamp":1568054425},{"name":"DAWN_ENABLE_THRESH1_CFG","value":"true","timestamp":1568054415},{"name":"TEMPERATURE_STOP_EVT","value":"3","min_value":"1","max_value":"5","step_size":"1","timestamp":1568038009},{"name":"SUN_THRESH2_ENV_NAMES_CFG","value":"Sonne S - W / 30 KLux Sommer","timestamp":-1},{"name":"WIND_START_EVT","min_value":"1","max_value":"5","step_size":"1","timestamp":-1},{"name":"SUN_THRESH1_TARGET_AZIMUTH_CFG","value":"135.0","min_value":"22.5","max_value":"315.0","step_size":"22.5","timestamp":1568054417},{"name":"SUN_HEIGHT_DEG_MEA","value":"-29","min_value":"-90","max_value":"90","timestamp":1568067423},{"name":"TEMPERATURE_THRESH2_ENV_NAMES_CFG","value":"Temperatur 25° Sonne","timestamp":-1},{"name":"AUTOMATIC_SOMMERTIME_CFG","value":"false","timestamp":1568061932},{"name":"RMT_STOP_PAIR_CMD","timestamp":-1},{"name":"REQ_SENS_CFG_CMD","timestamp":-1},{"name":"SUN_THRESH5_TIME_2_DETECT_CFG","value":"1","min_value":"1","max_value":"32","step_size":"1","timestamp":1568054420},{"name":"SENS_STATUS_MODE_CFG","value":"true","timestamp":1568054425},{"name":"SUN_THRESH4_TEMPERATURE_ENABLE_CFG","value":"false","timestamp":1568054418},{"name":"WIND_THRESH5_ENV_NAMES_CFG","value":"Mein Reaktionswert 5","timestamp":-1},{"name":"SUN_THRESH5_TARGET_AZIMUTH_CFG","value":"22.5","min_value":"22.5","max_value":"315.0","step_size":"22.5","timestamp":1568054420},{"name":"SUN_THRESH4_ELEVATION_RANGE_CFG","value":"0","min_value":"0","max_value":"52","step_size":"26","timestamp":1568054418},{"name":"TEMPERATURE_THRESH3_ENV_NAMES_CFG","value":"Temperatur 18° Ventilator","timestamp":-1},{"name":"SUN_THRESH5_TEMPERATURE_VALUE_CFG","value":"0","min_value":"-5","max_value":"26","step_size":"1","timestamp":1568054420},{"name":"WIND_STOP_EVT","value":"5","min_value":"1","max_value":"5","step_size":"1","timestamp":1568067121},{"name":"RAIN_DETECTED_EVT","value":"false","timestamp":1568067423},{"name":"RMT_START_PAIR_CMD","timestamp":-1},{"name":"SUN_THRESH4_TARGET_AZIMUTH_CFG","value":"157.5","min_value":"22.5","max_value":"315.0","step_size":"22.5","timestamp":1568054418},{"name":"SUN_THRESH3_TARGET_AZIMUTH_CFG","value":"292.5","min_value":"22.5","max_value":"315.0","step_size":"22.5","timestamp":1568054418},{"name":"SUN_THRESH2_TARGET_AZIMUTH_CFG","value":"157.5","min_value":"22.5","max_value":"315.0","step_size":"22.5","timestamp":1568054417},{"name":"DUSK_THRESH1_ENV_NAMES_CFG","value":"Licht 10 Lux","timestamp":-1},{"name":"WIND_THRESH1_ENABLE_CFG","value":"true","timestamp":1568054423},{"name":"WIND_THRESH2_ENABLE_CFG","value":"true","timestamp":1568054423},{"name":"USE_SECURE_WIND_FCT_CFG","value":"true","timestamp":1568054425},{"name":"SUN_DIRECTION_EVT","value":"333.0","min_value":"0.0","max_value":"360.0","step_size":"1.5","timestamp":1568067423},{"name":"SUN_THRESH5_TEMPERATURE_ENABLE_CFG","value":"false","timestamp":1568054420},{"name":"RMT_START_UNPAIR_CMD","timestamp":-1},{"name":"SUN_THRESH5_USE_AZIMUTH_CFG","value":"false","timestamp":1568054420},{"name":"DUSK_ENABLE_THRESH4_CFG","value":"true","timestamp":1568054415},{"name":"SUN_THRESH5_ELEVATION_RANGE_CFG","value":"0","min_value":"0","max_value":"52","step_size":"26","timestamp":1568054420},{"name":"DAWN_ENABLE_THRESH3_CFG","value":"true","timestamp":1568054415},{"name":"WIND_THRESH4_ENV_NAMES_CFG","value":"Mein Reaktionswert 4","timestamp":-1}],"scenes":[]}}}

        Wichtig ist doch jetzt erst einmal der Weg zu den Daten. Wenn ich das richtig sehe ist das Zeile 26 Die habe ich geändert von
        var data = JSON.parse(body).data; in
        var data = JSON.parse(body).payload.device.capabilities;
        um es an die neue JSON anzupassen

        In Zeile 42/43 soll dann auf [37] zugegriffen werden und die Daten übertragen werden.

        Kannst Du damit jetzt mehr anfangen ? Das Script ist hier im Spoiler noch mal drin


        const request = require('request');
        const link = 'http://192.168.1.180/devices/1010005';
        //const linkfsupunten = 'http://192.168.1.180/deviceajax.do?meter=1010009';
        //const linkfsupoben = 'http://192.168.1.180/deviceajax.do?meter=1010008';

        // Datenpunkte erzeugen

        createState('Homepilot.Sonnenrichtung', 0, {type: 'number', unit: '°'});
        createState('Homepilot.Sonnenhöhe', 0, {type: 'number', unit: '°'});
        createState('Homepilot.Lichtwert', 0, {type: 'number', unit: 'lux'});
        createState('Homepilot.Windgeschwindigkeit', 0, {type: 'number', unit: 'm/s'});
        createState('Homepilot.Temperatur', 0, {type: 'number', unit: '°C'});
        createState('Homepilot.Regen', 0, {type: 'boolean', unit: ''});
        createState('Homepilot.Aktualisiert', 0, {type: 'string', unit: ''});
        createState('Homepilot.balkontüreoben', 0, {type: 'boolean', unit: ''});
        createState('Homepilot.balkontüreobenaktualisiert', 0, {type: 'string', unit: ''});
        createState('Homepilot.balkontüreunten', 0, {type: 'boolean', unit: ''});
        createState('Homepilot.balkontüreuntenaktualisiert', 0, {type: 'string', unit: ''});

        function sensordaten() {
        request(link, function(error,response, body) {
        if(error) log('Fehler request: ' + error, 'error');
        else {
        var data = JSON.parse(body).payload.device.capabilities;

                var dir = data[5].Sonnenrichtung;
                //log(dir);
                dir = parseFloat(dir.substr(dir.indexOf('(') + 1));
                setState('Homepilot.Sonnenrichtung', dir, true); 
                
                var ele = parseFloat(data[4].Sonnenhöhe);
                setState('Homepilot.Sonnenhöhe', ele, true); 
                
                var lux = parseFloat(data[0].Lichtwert);
                setState('Homepilot.Lichtwert', lux, true);
                
                var wind = parseFloat(data[1]['Windgeschw.']);
                setState('Homepilot.Windgeschwindigkeit', wind, true);
                
                var temp = parseFloat(data[37].value);
                setState('Homepilot.Temperatur', temp, true);
                
                var regen = data[3].Regen; // Das ist ein String !
                    if(regen == 'Nicht erkannt') setState('Homepilot.Regen', false, true);
                    else setState('Homepilot.Regen', true, true);
                
                var aktualisiert = data[6].Aktualisiert; // Das ist ein String !
                setState('Homepilot.Aktualisiert', aktualisiert, true);
            }    
        });
        

        }

        function balkontuere() {
        request(linkfsupunten, function(error,response, body) {
        if(error) log('Fehler request: ' + error, 'error');
        else {
        var data = JSON.parse(body).data;
        var schliesserunten = data[0].Schließer; // Das ist ein String !
        if(schliesserunten == 'Geöffnet') setState('Homepilot.balkontüreunten', false, true);
        else setState('Homepilot.balkontüreunten', true, true);
        var aktualisiert = data[1].Aktualisiert; // Das ist ein String !
        setState('Homepilot.balkontüreuntenaktualisiert', aktualisiert, true);
        }
        });
        request(linkfsupoben, function(error,response, body) {
        if(error) log('Fehler request: ' + error, 'error');
        else {
        var data = JSON.parse(body).data;
        var schliesseroben = data[0].Schließer; // Das ist ein String !
        if(schliesseroben == 'Geöffnet') setState('Homepilot.balkontüreoben', false, true);
        else setState('Homepilot.balkontüreoben', true, true);
        var aktualisiert = data[1].Aktualisiert; // Das ist ein String !
        setState('Homepilot.balkontüreobenaktualisiert', aktualisiert, true);
        }
        });

        }
        /*function controme() {
        request(linkcontrome1, function(error,response, body) {
        if(error) log('Fehler request: ' + error, 'error');
        else {
        var data = JSON.parse(body).sensoren;
        var id = parseFloat(data[0].id);
        setState('Controme.id', id, true);
        }
        });
        } */

        function alledaten() {
        sensordaten();
        balkontuere();
        //controme();
        }
        schedule('*/30 * * * * *', alledaten); // alle 30 Sekunden

        Vielen dank nochmal und viele Grüße,
        Marc

        paul53P Offline
        paul53P Offline
        paul53
        schrieb am zuletzt editiert von
        #43

        @meicker sagte:

        ist aber glaube ich nicht richtig.

        Ist doch richtig, denn die Variable data enthält das Array, an dessen Index 37 das Objekt mit der Temperatur enthalten ist.

        JSON_Homepilot.JPG

        Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
        Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

        1 Antwort Letzte Antwort
        0
        • M Offline
          M Offline
          meicker
          schrieb am zuletzt editiert von
          #44

          @paul53
          jetzt hab ich es verstanden :-) Es funktioniert. Ich war mir nicht sicher. Ich dachte halt ich habe das total falsch angefangen ... Danke für den Hinweis !

          Ich versuche gleich mal die anderen einfachen Dinge ... aber da waren auch noch kompliziertere Datenpunkte drin wo was umgewandelt wurde. Ich versuche es erstmal und wenn ich nicht klar komme darfst Du mir gerne wieder einen denkanstoß geben :-)

          Danke DIR !
          vg
          Marc

          1 Antwort Letzte Antwort
          0
          • M Offline
            M Offline
            meicker
            schrieb am zuletzt editiert von
            #45

            @paul53
            klappt soweit, komme gut weiter ...

            Ich bekomme bei einem datenpunkt ein 'warn' - er funktioniert, aktuell ist er 'true'

            createState('Homepilot.Regen', 0, {type: 'boolean', unit: ''});
            var regen = data[133].value;
            setState('Homepilot.Regen', regen, true);

            und die Logmeldung ist:
            javascript.0 at Request._callback (script.js.Homepilot.Sensordaten1:46:13)

            Zeile 46 ist -> setState('Homepilot.Regen', regen, true);

            Hast Du eine Idee ?
            vg
            Marc

            paul53P 1 Antwort Letzte Antwort
            0
            • M meicker

              @paul53
              klappt soweit, komme gut weiter ...

              Ich bekomme bei einem datenpunkt ein 'warn' - er funktioniert, aktuell ist er 'true'

              createState('Homepilot.Regen', 0, {type: 'boolean', unit: ''});
              var regen = data[133].value;
              setState('Homepilot.Regen', regen, true);

              und die Logmeldung ist:
              javascript.0 at Request._callback (script.js.Homepilot.Sensordaten1:46:13)

              Zeile 46 ist -> setState('Homepilot.Regen', regen, true);

              Hast Du eine Idee ?
              vg
              Marc

              paul53P Offline
              paul53P Offline
              paul53
              schrieb am zuletzt editiert von
              #46

              @meicker sagte:

              var regen = data[133].value;

              Es wird ein String geliefert, deshalb ändere es:

              var regen = false;
              if(data[133].value == 'true') regen = true;
              

              Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
              Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

              1 Antwort Letzte Antwort
              0
              • M Offline
                M Offline
                meicker
                schrieb am zuletzt editiert von
                #47

                SUPER :-) Klappt natürlich ... DANKE !!!

                Und jetzt hab ich noch eine Kleinigkeit ... wie wandle ich den Timestamp in ein Datum mit Zeit um ? Was ich im Netz gefunden habe war alles ellenlanger code ...

                var aktualisiert = data[37].timestamp;
                setState('Homepilot.Aktualisiert', aktualisiert, true);

                Geht das überhaupt einfach ?

                paul53P 1 Antwort Letzte Antwort
                0
                • M meicker

                  SUPER :-) Klappt natürlich ... DANKE !!!

                  Und jetzt hab ich noch eine Kleinigkeit ... wie wandle ich den Timestamp in ein Datum mit Zeit um ? Was ich im Netz gefunden habe war alles ellenlanger code ...

                  var aktualisiert = data[37].timestamp;
                  setState('Homepilot.Aktualisiert', aktualisiert, true);

                  Geht das überhaupt einfach ?

                  paul53P Offline
                  paul53P Offline
                  paul53
                  schrieb am zuletzt editiert von paul53
                  #48

                  @meicker sagte:

                  Geht das überhaupt einfach ?

                  Ja, mit formatDate(). Der Datenpunkt muss vom Typ "string" sein.

                  var aktualisiert = formatDate(data[37].timestamp, 'DD.MM.YY hh:mm:ss');
                  

                  Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                  Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                  1 Antwort Letzte Antwort
                  0
                  • M Offline
                    M Offline
                    meicker
                    schrieb am zuletzt editiert von
                    #49

                    @paul53 said in [GELÖST] Homepilot Umweltsensor mit Javascript auslesen:

                    var aktualisiert = formatDate(data[37].timestamp, 'DD.MM.YY hh:mm:ss');

                    Ganz herzlichen Dank Paul !!!

                    1 Antwort Letzte Antwort
                    0
                    • S Offline
                      S Offline
                      slkschlumpf
                      schrieb am zuletzt editiert von
                      #50

                      Hallo,

                      gibt es für mein Schalten der Aktoren auch schon eine Lösung ?

                      die Kommandos

                      command_on: curl "http://192.168.2.2/deviceajax.do?cid=10&did=1010022&command=1"
                      command_off: curl "http://192.168.2.2/deviceajax.do?cid=11&did=1010022&command=1"

                      funktionieren nicht mehr.

                      1 Antwort Letzte Antwort
                      0
                      • M Offline
                        M Offline
                        meicker
                        schrieb am zuletzt editiert von
                        #51

                        @slkschlumpf
                        soweit ich aktuell weiß noch nicht ... aber ich frage mal eben jemanden ...

                        Das Problem ist das es noch nicht genügend Leute gibt die Informationen bekommen haben ... Rademacher sagt zwar auf Youtube das die Schnittstelle extra überarbeitet wurde um das Zusammenspiel zu vereinfachen, auf der anderen Seite habe ich 'noch' keine Informationen dazu bekommen können ...

                        Ich weiß das wenigstens einer an einem Adapter arbeitet. Dort habe ich gerade gefragt. Wenn ich was höre gebe ich Bescheid ...

                        vg
                        Marc

                        1 Antwort Letzte Antwort
                        0
                        Antworten
                        • In einem neuen Thema antworten
                        Anmelden zum Antworten
                        • Älteste zuerst
                        • Neuste zuerst
                        • Meiste Stimmen


                        Support us

                        ioBroker
                        Community Adapters
                        Donate

                        773

                        Online

                        32.5k

                        Benutzer

                        81.7k

                        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