NEWS
UNSOLVED update javascript -> photovoltaik script läuft auch nicht mehr !!!
-
Ne, mehr Infos gibt es nicht.
hab ich oben alle eingehängt.
@Homoran sagte in update javascript -> photovoltaik script läuft auch nicht mehr !!!:
Im MOment sind es ja auch "nur" Fehler, die der Controller noch abfängt.
Und richtig abfangen tut der Controller nicht; javascript stürzt komplett ab und startet neu.
-
Nur mal was mir auffällt - kann aber sein dass mir da nur gewisse Spezialitäten von Javascript noch unbekannt sind und ich mich blamiere;-)
$ = cheerio.load(body); var d = $("td");
Kann man "$" wirklich als Variablenname verwenden?
-
Das Script stammt aus dem Homematic Forum; was ich dann in 01/2017 auf ioB umgeschrieben habe.
Seit dem lief dies einwandfrei.
Und seit heute nun nicht mehr.
-
So, ich teste, habe aber bisher keine Lösung gefunden.
eq ist seit dem update wohl nicht mehr möglich.
Ich weiß, dass mehere hier das Script in Benutz haben.
Falls jemand eine Lösung hat bitte hier teilen.
Danke.
-
Meine Vermutung ist, dass nicht "eq" das Problem ist, sondern dass die Variable "d" leer bzw. Nothing ist. Kannst deren Wert ja zur Kontrolle mal ins Log schreiben lassen...
-
$ = cheerio.load(body); log (cheerio.load(body)); var d = $("td"); log ("d= " + d);
-
if(d) log ("d= " + JSON.stringify(d));
-
@paul53 sagte in update javascript -> photovoltaik script läuft auch nicht mehr !!!:
if(d) log ("d= " + JSON.stringify(d));
-
OK. Dann vergiss mein ganzes Geschreibsel. Dann war meine Vermutung komplett ein Holzweg und ich habe ein Wissensloch
Vielleicht kann mich ja gelegentlich jemand mal aufklären was die Zeile:
$ = cheerio.load(body);
eigentlich tut...?
-
@bahnuhr Das Objekt enthält offenbar nur {length:0};. Dann kann der Rest des Skriptes nicht funktionieren.
-
Das sehe ich jetzt auch so.
Aber warum ist das so?
Lief ja monate lang ohne Probleme.
-
@bahnuhr sagte in update javascript -> photovoltaik script läuft auch nicht mehr !!!:
upgadatet: admin und javascript
Welche Versionen?
-
admin: 3.6.0
javascript: 4.1.12 -
@Homoran sagte in update javascript -> photovoltaik script läuft auch nicht mehr !!!:
bzw. welche Versionen hast du bei
- admin
- js-controller (Hosts)
- node
- npm
Bitte von allem, damit wir es einkreisen können
-
node.js: 8.12.0
npm: 6.4.1
js-controller : 1.4.2 -
@bahnuhr
Danke!Nodejs 8.12 hat ein Problem, bitte auf 8.15.x updaten - das sollte aber nicht zu diesem Problem führen.
Ich wüsste, wie im Parallelthread bereits gesagt, wirklich gerne ob es ein Bug ist, oder ob es ein Szenario wie:
"ich habe bisher immer mein Schwarzgeld nach Luxemburg geschafft - wieso geht das jetzt nicht mehr"Soll heißen:
Wurde in der neuen Version vielleicht nur etwas dahingehend geändert, dass jetzt undokumentierte Funktionen nicht mehr funktionieren, oder ist da wirklich ein Bug drin ist.Daher die Frage:
du schriebst irgendwo dass du zig Skripte ändern musstest.- Liefen diese danach?
- wenn ja, was musstest du ändern?
-
vorher:
setTimeout( setState('sayit.0.tts.text', "Waschmaschine ist fertig.") , 3000);
alles lief einwandfrei.Dann update; und o.g. Befehl funktioniert nicht mehr.
jetzt:
setTimeout(function() { setState('sayit.0.tts.text', "Waschmaschine ist fertig.") } , 3000);und es geht wieder.
-
@bahnuhr sagte:
setTimeout( setState('sayit.0.tts.text', "Waschmaschine ist fertig.") , 3000);
Auf die Idee, dass es so auch funktionieren könnte, bin ich nie gekommen.
-
Hattest du mal einen Downgrade des JavaScript Adapters auf Version <4 versucht?
-
@wendy2702 sagte in update javascript -> photovoltaik script läuft auch nicht mehr !!!:
Hattest du mal einen Downgrade des JavaScript Adapters auf Version <4 versucht?
Ne, hab ich nicht.
Kann ich aber gerne gleich mal machen.