NEWS
Fehler nach Update js-controller
-
Hast du alle Adapter auf dem neuesten Stand? `
Denke ja.
Bei "iobroker update" und im Admin sind alle Adapter auf neuestem Stand.
Einzig kam bei der Installation ab und an mal der Hinweis, dass ich node aktualisieren müsse.
Würde ich ja sehr gerne tun, aber wie mache ich das unter Windows ohne irgend welche Daten zu verlieren?
-
Hallo,
ich komme nach dem update auch nicht mehr ans Webinterface.
Alle Adapter sind aktuell und iobroker startet auch "normal". Sieht auch bis aufs Webinterface alles OK aus. Die Adapter laufen.
Was seltsam ist, im Logfile steht bei web.0 socket.io server listening on port 8082. Das war doch bis jetzt immer 8081?
Unter 8082 bekomme ich: File not found: Not exists
Kann ich das irgendwie ohne den Admin auf die 8081 zurückstellen?
Gruß
Holger
-
Ich habe gestern das ganze auf dem cubietruck nachgestellt:
- Controller Upgrade über Konsole. - Admin noch erreichbar.
Admin Upgrade über Admin - Admin nicht mehr erreichbar Admin Neuinstallation über Konsole - Admin nicht mehr erreichbar Web Upgrade über Konsole - Admin wieder erreichbar Alle weiteren Upgrades über Admin - alles ok.
Gruß
Rainer
-
Habe gerade nochmal nachgesehen, der vom Web-adapter ist standardmäßig 8082:
Der wird ja von vis benutzt, und das ist unter 8082 zu erreichen.Nur der Admin ist unter 8081 zu erreichen.
Hast du das Vorgehen in meinem Eingangspost probiert?
Gruß
Rainer
-
Ich habe gestern das ganze auf dem cubietruck nachgestellt:
- Controller Upgrade über Konsole. - Admin noch erreichbar.
Admin Upgrade über Admin - Admin nicht mehr erreichbar Admin Neuinstallation über Konsole - Admin nicht mehr erreichbar Web Upgrade über Konsole - Admin wieder erreichbar Alle weiteren Upgrades über Admin - alles ok. `
Also bitte nicht böse sein, aber was nützt mir diese Antwort;)?
Was hat der Web-Adapter mit meinem JS-Problem zu tun?
-
Ich habe gestern das ganze auf dem cubietruck nachgestellt:
- Controller Upgrade über Konsole. - Admin noch erreichbar.
Admin Upgrade über Admin - Admin nicht mehr erreichbar Admin Neuinstallation über Konsole - Admin nicht mehr erreichbar Web Upgrade über Konsole - Admin wieder erreichbar Alle weiteren Upgrades über Admin - alles ok.
Gruß
Rainer `
Habe den Web Adapter manuell nachinstalliert (gleiche Version). Problem bleibt bestehen.
War aber auch mein Fehler (web hat ja nix mit Admin zu tun). Siehe Antwort von Andy….
8081 ist tot...
Gruß
Holger
-
-
Ja, habe das Upgrade wegen diesem Beitrag ja auch so durchgeführt. Erst garnicht übers Webinterface. Gleich die Konsole genommen.
Alle Adaper sind auch aktuell.
Gruß
Holger
-
Das wundert mich jetzt.
Auch vorher mal npm cache clean gemacht?
Und einen Reboot?
Gruß
Rainer
-
HAT EIGENTLICH JEMAND IN DEN EINGANGS-POST GESCHAUT??
-
Nochmal neu:
npm cache clean
iobroker stop
iobroker update
iobroker upgrade (nicht neues)
reboot
8081 ist weiterhin tot.
Das System läuft aber soweit. sql adapter, flot…
Auch im Log ist kein Fehler ersichtlich.
Gruß
Holger
-
HAT EIGENTLICH JEMAND IN DEN EINGANGS-POST GESCHAUT?? `
Erstens musst du hier nicht rumschreien!Zweitens habe ich dir bereits versucht zu helfen. Aber wiederum erstens bin ich bei Windows raus und zweitens wäre es nett wenn du zu der Teilinfo mit nodejs etwas mehr Details von dir geben würdest.
Weiterhin bedeutet die Meldung, dass ein Wert nicht bearbeitet werden kann nicht zwangsläufig,dass der entsprechende Adapter nicht funktioniert, auch der zu bearbeitende Wert kann falsch sein (hast du dazu mal im debug Modus nachgesehen welcher das ist?), Oder wegen der falschen node Version kommt dieser Wert falsch an, oder…..
Gruß
Rainer
-
Nochmal neu: `
…und nochmal, bitte:cd /opt/iobroker iobroker stop npm cache clean npm install iobroker --production iobroker start
Viel Glück
Rainer
-
HAT EIGENTLICH JEMAND IN DEN EINGANGS-POST GESCHAUT?? `
Ja. Bei dir im Skript ist ein Fehler drin. Habe ich neulich gepostet nur finde ich nicht wo :lol:Du musst eine Zeile mit getState gegen eine andere umtauschen, wo erst geprüft wird ob State existiert.
getState(id).val blablbal
mit so was ergänzen:
if (!getState(id)) return oder continue;
Wie sieht dein Kode aus?
-
Weiterhin bedeutet die Meldung, dass ein Wert nicht bearbeitet werden kann nicht zwangsläufig,dass der entsprechende Adapter nicht funktioniert, auch der zu bearbeitende Wert kann falsch sein (hast du dazu mal im debug Modus nachgesehen welcher das ist?), Oder wegen der falschen node Version kommt dieser Wert falsch an, oder….. `
Siehst du, womit wir wieder beim Thema wären;).
Danke.
Aber warum sollte der zu bearbeitende Wert JETZT plötzlich falsch sein, wenn dieses Script bis zum Update korrekt gelaufen ist?
Bitte nicht böse sein, es ist auch ganz lieb von dir dass du helfen möchtest, aber wenn du bei Windows raus bist, hilft das nicht wirklich bei meinem Problem.
…und wenn dann auch noch einfach so ein völlig anderes Thema (nicht von dir) unter gemischt wird ist das auch nicht sehr hilfreich.
-
Siehst du, womit wir wieder beim Thema wären;).
…und wenn dann auch noch einfach so ein völlig anderes Thema (nicht von dir) unter gemischt wird ist das auch nicht sehr hilfreich `
Leider bist du nicht der einzige User der einen
> Fehler nach Update js-controller
hat.Und hier hat niemand einen Privatthread.
Gruß
Rainer
-
aber wenn du bei Windows raus bist, hilft das nicht wirklich bei meinem Problem. `
Noch wissen wir ja nicht, ob es an Windows liegt. Warum beantwortest du nicht die Fragen?Aber warum sollte der zu bearbeitende Wert JETZT plötzlich falsch sein, wenn dieses Script bis zum Update korrekt gelaufen ist? `
Weil er z.B. schon immer falsch war, aber frühere Versionen des Javascript Adapters diesen Fehler haben durchrutschen lassen.Genaueres kann man erst sagen, wenn wir mehr Informationen haben.
Gruß
Rainer
-
Leider bist du nicht der einzige User der einen
Fehler nach Update js-controller
hat.
Und hier hat niemand einen Privatthread. `
Dafür habe ich auch vollstes Verständnis, und damit ioBroker weiter so funktioniert wie es bisher funktioniert hat ist auch jede Meldung wichtig.
Das bringt trotzdem nichts, wenn einer einen Fehler in der Script-Ausführung hat, ein anderer mit dem Web-Interface,
und man das in einem einzigen Thema schön zusammenwürfelt.
…
> Warum beantwortest du nicht die Fragen?
Hab ich nicht?Im ersten Post ist die genaue Fehlermeldung.
Ich habe jetzt debug aktiviert und schau mir das mal eine Weile an.
` > Weil er z.B. schon immer falsch war, aber frühere Versionen des Javascript Adapters diesen Fehler haben durchrutschen lassen.
Genaueres kann man erst sagen, wenn wir mehr Informationen haben. `
Sobald ich dieses Script aktiviere kommen Fehlermeldungen:
/* System Homematic Servicemeldungen Skript erstellt Variablen Service.Homematic.* http://forum.iobroker.org/viewtopic.php?f=21&t=914#p9153 erstellt: 03.08.2015 von paul53 - angepasst von pix */ // Service Meldungen createState('Servicemeldungen.Homematic.Anzahl', 0); // Anzahl der Service-Alarme createState('Servicemeldungen.Homematic.Text', ""); // Service-Alarme, als Variable unter Javascript.0 anlegen var SelectorUNREACH = $('channel[state.id=*.UNREACH]'); var SelectorLOWBAT = $('channel[state.id=*.LOWBAT]'); // var SelectorSTICKY_UNREACH = $('channel[state.id=*.STICKY_UNREACH]'); var SelectorCONFIG_PENDING = $('channel[state.id=*.CONFIG_PENDING]'); function countService(obj) { var anzahl = 0; var text = ""; function count(id) { var status = getState(id).val; // Zustand abfragen (jedes Element) if (status === true) { // wenn Zustand = true, dann wird die Anzahl der Geräte hochgezählt text = text + id + " -> " + getObject(id).common.name +", "; // Zu String hinzufügen ++anzahl; // Zählt die Anzahl der Service-Alarme } } SelectorUNREACH.each(function (id, i) { count(id); }); // SelectorSTICKY_UNREACH.each(function (id, i) { // count(id); // }); SelectorLOWBAT.each(function (id, i) { count(id); }); SelectorCONFIG_PENDING.each(function (id, i) { count(id); }); // Schleife ist durchlaufen. Im Log wird der aktuelle Status (Anzahl, davon Service zutreffend) ausgegeben log("Homematic-Servicemeldungen: " + text); log("Anzahl Homematic-Servicemeldungen: " + anzahl); // die ermittelten Werte werden als javascript.0\. Variable in ioBroker gespeichert if (!anzahl) { text = "kein Service-Alarm"; } setState("Servicemeldungen.Homematic.Text", text); // Schreibt die IDs der Datenpunkte mit Service Meldung setState("Servicemeldungen.Homematic.Anzahl", anzahl); // Schreibt die aktuelle Anzahl der Service Meldungen } SelectorUNREACH.on(function(obj) { // bei Zustandänderung *.UNREACH in allen Gewerken countService(obj); }); // SelectorSTICKY_UNREACH.on(function(obj) { // bei Zustandänderung *.UNREACH in allen Gewerken // countService(obj); // }); SelectorLOWBAT.on(function(obj) { // bei Zustandänderung *.LOWBAT in allen Gewerken countService(obj); }); SelectorCONFIG_PENDING.on(function(obj) { // bei Zustandänderung *.CONFIG_PENDING in allen Gewerken countService(obj); }); // alternative Abfrage jede Minute schedule("*/15 * * * *", function () { countService(); }); // Ausführung bei Scriptstart countService();
-
HAT EIGENTLICH JEMAND IN DEN EINGANGS-POST GESCHAUT?? `
Ja. Bei dir im Skript ist ein Fehler drin. Habe ich neulich gepostet nur finde ich nicht wo :lol:Du musst eine Zeile mit getState gegen eine andere umtauschen, wo erst geprüft wird ob State existiert.
getState(id).val blablbal
mit so was ergänzen:
if (!getState(id)) return oder continue;
Wie sieht dein Kode aus? `
DANKE Bluefox!!
Das ist doch wenigstens konstruktiv:).
Dann werden sicher noch andere diesen Fehler haben.
Ist ja das Script hier aus dem Forum;).
-
DANKE, funktioniert jetzt Fehlerfrei.