var alwx, carx, etox, etoxd, nrg, nrg_7x, nrg_8x, nrg_9x, nrg_11x, dwsx, ampx, apiurl = "http://192.168.1.15/status"
// Trigger 1 min
schedule("*/1 * * * *", function () {
try {
require("request")('http://192.168.1.15/status', function (error, response, result) {
setState("javascript.0.GoE_Charger.Objekt", result, true);
}).on("error", function (e) {console.error(e);});
} catch (e) { console.error(e); }
data = (function () {
try {
return JSON.parse(getState("javascript.0.GoE_Charger.Objekt").val)
;}
catch(e) {
return {};
}
})();
var alwx = parseInt(data["alw"]);
setState("javascript.0.GoE_Charger.alw_0", alwx, true);
var ampx = parseInt(data["amp"]);
setState("javascript.0.GoE_Charger.amp_0", ampx, true);
var dwsx = parseInt(data["dws"]);
setState("javascript.0.GoE_Charger.dws_0", dwsx/360000, true);
var carx = parseInt(data["car"]);
setState("javascript.0.GoE_Charger.LadeStatus", carx, true);
var etoxd = parseInt(data["eto"]);
//Umrechnung in 1kWh
var etox = etoxd / 100 / 60 / 60;
setState("javascript.0.GoE_Charger.eto_0", etox, true);
var nrg = data["nrg"];
//console.log(nrg);
var nrg_7x = parseInt(nrg[7]);
//Umrechnung in 1kW
setState("javascript.0.GoE_Charger.nrg_7", nrg_7x/10, true);
var nrg_8x = parseInt(nrg[8]);
//Umrechnung in 1kW
setState("javascript.0.GoE_Charger.nrg_8", nrg_8x/10, true);
var nrg_9x = parseInt(nrg[9]);
//Umrechnung in 1kW
setState("javascript.0.GoE_Charger.nrg_9", nrg_9x/10, true);
var nrg_11x = parseInt(nrg[11]);
//Umrechnung in 1kW
setState("javascript.0.GoE_Charger.nrg_11", nrg_11x/100, true);
});
Allerdings bekomme ich Fehlermeldungen und der erste Teil schägt schon fehl, wo das Script das Json aus der API in einen Datenpunkt schreiben soll. Der Datenpunkt vom Typ Objekt ist aber leer.
Ist der DP überhaupt angelegt, da es kein CreateState in dem Script gibt und die Fehlermeldung besagt, dass er den Wert nicht finden kann?
Wenn man in den Objekten schaut:
javascript.0
--- GoE_Charger.
------ Objekt