NEWS
JS Fehler seit Update des Script Engines Adapters auf 4.0.1
-
Guten Morgen, bekommen seit dem Update auf die neue Version 4.0.1 folgenden Fehler:
Habe leider selbst gerade keine Zeit zu schauen was das ist, vermutlich nur ne Kleinigkeit.
Hat jemand auf die schnelle eine Idee?
Das Skript (von Dieter Müller hier aus dem Forum) welches den Fehler auslöst ist hier:
/* Photovoltaik: Piko 5.5 Anlage @bahnuhr 02.01.2017 Dieter Müller http://forum.iobroker.net/viewtopic.php?p=45203#p45203 */ var logging = true; //var cron = '*/1 * * * *'; var cron = '*/10 * * * * *'; var instanz = 'javascript.' + instance; var pfad = '.Strom.Photovoltaik.'; var idaktuell = instanz + pfad + 'Leistung_aktuell'; var idTag = instanz + pfad + 'Tagesleistung'; var idall = instanz + pfad + 'Leistung_gesamt'; var idP1 = instanz + pfad + 'Leistung_Strang1'; var idP2 = instanz + pfad + 'Leistung_Strang2'; var tmp_idTag = getState(idTag).val; var NameAnlage = 'xxxxxxxxxxxxxx'; // Nutzername der Photovoltaik-Anlage var PassAnlage = 'xxxxxxxxxxxxxx'; // Password der Photovoltaik-Anlage var IPAnlage = '192.168.1.70'; // IP der Photovoltaik-Anlage createState(idaktuell, { type: 'number', name: 'Leistung aktuell', min: 0, def: 0, role: 'value' }); createState(idTag, { type: 'number', name: 'Tagesleistung', min: 0, def: 0, role: 'value' }); createState(idall, { type: 'number', name: 'Leistung gesamt', min: 0, def: 0, role: 'value' }); createState(idP1, { type: 'number', name: 'Leistung Strang 1', min: 0, def: 0, role: 'value' }); createState(idP2, { type: 'number', name: 'Leistung Strang 2', min: 0, def: 0, role: 'value' }); function Piko() { var cheerio = require('cheerio'); var request = require('request'); if (logging) log("Piko Wechselrichter auslesen"); request('http://' + NameAnlage + ':' + PassAnlage +'@' + IPAnlage, function (error, response, body) { $ = cheerio.load(body); var d = $("td"); var pwr = parseFloat(d.eq(14).text().trim()); var day = parseFloat(d.eq(26).text().trim()); var all = parseFloat(d.eq(17).text().trim()); var v1 = d.eq(56).text().trim(); var i1 = d.eq(65).text().trim(); var p1 = v1 * i1; var v2 = d.eq(82).text().trim(); var i2 = d.eq(91).text().trim(); var p2 = v2 * i2; if (isNaN(pwr)) pwr = 0; if (isNaN(p1)) p1 = 0; if (isNaN(p2)) p2 = 0; if (logging) log("Leistung aktuell= " + pwr); if (logging) log("Tagesleistung= " + day); if (logging) log("Leistung gesamt= " + all); if (logging) log("Leistung Strang 1= " + p1); if (logging) log("Leistung Strang 2= " + p2); setState(idaktuell, pwr); setState(idTag, day); setState(idall, all); setState(idP1, p1); setState(idP2, p2); // Idee / TODO // Wenn Wert Tag = 0 dann vor Tageswert speichern in neuem State // alter Wert = var tmp_idTag = getState(idTag).val; //if (day == 0) setState(idVorTag, tmp_idTag); }); } // Skript ausführen schedule(cron, function () { Piko(); });
-
Ist dein cheerio als Zusatz Library noch eingetragen? Wenn nicht nimm mal raus und neu rein das es gg neu installiert wird.
Gesendet vom Handy …
-
Hallo, hatte leider jetzt erst wieder die Muse mit die 4.0.x anzuschauen.
Auch mit der 4.0.7 bekomme ich diesen Fehler.
Request / Cheerio habe ich jeweils entfernt und wiederhinzugefügt.
Edit: Auch auf einer frischen Testumgebung bekomme ich diesen Fehler. Muss am JS liegen, was nutze ich da aktuell was nicht mehr unterstützt wird?
-
Muss die Frage nochmal nach oben holen
-
Muss nochmal pushen - konnte das Problem bisher noch nicht lösen … Niemand eine Idee?
-
Auch 4.0.12 tut nicht?
Gesendet vom Handy …
-
Leider nicht, immer noch
d.eq is not a function