NEWS
js-controller 3.2 jetzt im Latest!
js-controller 3.2 jetzt im Latest!
-
@klassisch sagte in js-controller 3.2 jetzt im Latest!:
@sigi234 sagte in js-controller 3.2 jetzt im Latest!:
Läuft.

Wie aktualisiert? Mit dem workaround von AlCalzone?
iobroker stop
Iobroker update
Iobroker upgrade self
iobroker start@sigi234 sagte in js-controller 3.2 jetzt im Latest!:
iobroker stop
Iobroker update
Iobroker upgrade self
iobroker startDanke, war das eine Installation vom Installer oder eine manuelle Installation?
-
@sigi234 sagte in js-controller 3.2 jetzt im Latest!:
iobroker stop
Iobroker update
Iobroker upgrade self
iobroker startDanke, war das eine Installation vom Installer oder eine manuelle Installation?
@klassisch sagte in js-controller 3.2 jetzt im Latest!:
@sigi234 sagte in js-controller 3.2 jetzt im Latest!:
iobroker stop
Iobroker update
Iobroker upgrade self
iobroker startDanke, war das eine Installation vom Installer oder eine manuelle Installation?
Installer
-
@klassisch sagte in js-controller 3.2 jetzt im Latest!:
@sigi234 sagte in js-controller 3.2 jetzt im Latest!:
iobroker stop
Iobroker update
Iobroker upgrade self
iobroker startDanke, war das eine Installation vom Installer oder eine manuelle Installation?
Installer
-
Hallo ioBroker-Community,
mit etwas zeitlicher Verspätung, dafür aber um so besser, kommt heute der neue js-controller 3.2 (Releasename "Grace") ins Latest Repository (sollte im laufe des Abends bei allen auftauchen). Ein großer Dank geht an alle User die bereits in den Letzten Tagen diese Version im Beta test getestet und Probleme und Fehler zur Behebung gemeldet haben!
Node.js Versions-Anforderungen
Die unterstützten Node.js Versionen bleiben in diesem Update gleich: 10.x, 12.x und auch 14.x werden offiziell unterstützt. Aufgrund der übergreifenden Adapter-Kompatibilität bleibt die empfohlene Node.js Version für ioBroker aktuell weiterhin auf 12.x. Falls jemand wirklich mit Node.js 15.x experimentieren will, dann bitte AUSSCHLIESSLICH mit npm 6 !! (die npm Leute haben in npm 7 wieder Dinge geändert, die wir noch untersuchen)
Bitte beachtet weiterhin bei Node.js Updates die Anleitung im Forum unter https://forum.iobroker.net/post/266625Informationen zur Version
Neben einigen Features haben wir unter der Haube weiter aufgeräumt und sehr viel modernisiert und vereinheitlicht.
Auch daran den Wildwuchs in der Umsetzung einiger Adapter etwas einzugrenzen wurde weiter gearbeitet, was ggf. zu neuen Log-meldungen für bestimmte Fälle führt. Bitte unterstützt hier wieder und legt bei den relevanten Adaptern im GitHub Issues an, damit diese Dinge gefixt werden können.Besonders zu erwähnen ist die Grundlage für das neue Benachrichtigungssystem (kommt dann in einem Admin-Update) und die Reaktivierung von Let's Encrypt zur automatischen Zertifikatsaktualisierung.
Detailliertere Informationen zu allen Änderungen und Features findet Ihr weiter unten und im Changelog. Ich hoffe auch diesmal auf Eure tatkräftige Unterstützung, sodass der Latest-Release dann genau so reibungslos verläuft wie bei den letzten Versionen.In Summe sind in diese Version über 650 commits eingeflossen. Dafür bedenke mich diesmal besonders bei foxriver76, AlCalzone und natürlich Bluefox und auch ein paar weiteren Entwicklern für die aktive Mitarbeit an dieser Version!
Der js-controller 3.2 ist generell kompatibel mit allen bestehenden ioBroker-Systemen. Ein Update von der 2.0/2.1/2.2 ist problemlos möglich. Nur die Node.js Version muss jetzt mindestens 10.x sein, wie oben bereits ausgeführt. Wer überlegt die Node.js Version anzuheben bitte weiter unten im Abschnitt "Was ist zu testen" lesen

Es gibt aktuell keine inkompatiblem Adapter, aber einige Empfehlungen weiter unten.
Installation
VOR der Installation
Wie bei jedem Test dieser Art: Bitte macht ein Backup!
iobroker backupbzw kopieren desiobroker-dataVerzeichnisses reichen an sich aus. Bitte nicht das node_modules Verzeichnis einfach kopieren, da sonst symbolische Links kaputt gehen können, was zu größeren Problemen danach führt. Die alte Version des js-controller kann im Notfall einfach wieder pernpm install iobroker.js-controller@versioninstalliert werden und sollte alles wieder herstellen.Nötige Adapter-Aktualisierungen
Aktuell sind keine Inkompatibilitäten bekannt, damit allerdings Let's encrypt wieder funktioniert benötigt es einige Adapter in "Latest" Versionen von mindestens:
- ioBroker.lovelace 1.4.1 oder höher
- ioBroker.simple-api 2.5.2 oder höher
- ioBroker.socketio 3.1.3 oder höher
- ioBroker.telegram 1.7.0 oder höher
- ioBroker.web 3.2.2 oder höher
- ioBroker.admin 4.2.1 oder höher
Es werden aber, wie oben ausgeführt, einige Adapter ggf Warnungen ins Log schreiben. Falls das Problematisch ist ist aktuell die einzige Option das Loglevel der Instanz auf "Error" zu setzen.
Achtung: MASTER-Systeme Reihenfolgen beachten!
Bei einem Multi-Host-System, welches auf js-controller 2.2 oder 3.1 läuft ist es beim Update auf Version 3.2 empfohlen, zuerst das Master-System zu aktualisieren. Der Master muss dann wieder gestartet werden. Die Slaves werden danach aktualisiert!
Bei Updates von Master/Slave-Systemen mit js-controller 1.5 oder früher auf die 3.2 müssen zwingend zuerst die Slaves und der Master als letztes aktualisiert werden. Beim Slave Updat emuss der alte master aber noch laufen. Die Slaves bleiben nach dem Update offline und können sich nicht zum Master verbinden und werden erst wieder funktionieren wenn auch der Master auf die 3.2 aktualisiert wurde!
Windows
Auf Systemen, die mit dem neuen Windows Installer eingerichtet wurden weiss ich gerade nicht wie der aktuelle Prozess ist, da der Windows installer nicht ganz aktuell ist. Bitte hier berichten dann kann ich ergänzen.
Für alle "alten manuellen" Installationen gilt
- ioBroker muss gestoppt sein.
- Vor dem Update bitte prüfen das keine Prozesse mehr laufen
iobroker updateiobroker upgrade self- ioBroker starten
Linux
- ioBroker stoppen (
iobroker stop) - prüfen das keine Prozesse (Adapter, Backups) mehr laufen (
ps auxww|grep iound auchps auxww|grep backup). Es passiert manchmal das trotz dem Stoppen noch Zombies zurückbleiben iobroker update- Wie üblich wird das Update dann per
iobroker upgrade selfausgeführt. - ioBroker starten (
iobroker start)
Bei Fehlern:
Wenn bei der Installation Fehler wegen fehlender Zugriffsrechte auftreten, am besten den Installation-Fixer (iobroker fixwer schon einen js-controller 2.x oder höher hat, alternativ weiterhin manuell via curl -sL https://iobroker.net/fix.sh | bash -) nutzen und die Installation wiederholen.
Falls es auch danach noch Fehler gibt, bitte die Installation erneut mittelssudo -H -u iobroker npm install iobroker.js-controllerversuchen. Bitte berichtet solche Fälle hier im Thread.NACH der Installation
Nach der Installation den ioBroker wieder starten (z.B. mittels
iobroker start).Wenn alles klappt merkt Ihr ausser der höheren Versionsnummer in der Host-Ansicht im Admin keinen Unterschied. Alles funktioniert weiterhin wie vorher. Alle Adapterinstanzen starten und funktionieren. Wenn das so ist hat alles geklappt.
Falls im Log Warn-Meldungen auftauchen mit dem Hinweis diese an den Entwickler zu senden, dann bitte schauen welcher Adapter es ist und entsprechend dort Issues bitte anlegen!
Mit
iobroker helpwird eine Liste der möglichen Kommandozeilen-Kommandos angezeigt, die mit Version 2.0 um einige Befehle länger geworden ist. Es geht jetzt auch Kommandospezifisch Hilfe zu erhalten (iobroker upgrade --help)
Was hat sich geändert, was besonders ansehen/beachten?
Neben einiger weiterer Bugfixes gibt es folgende Änderungen und Fixes zu erwähnen:
- generell siehe Changelog, speziell auch für Features
- Let's Encrypt sollte wieder tun. Minimum Adapterversionen dazu siehe weiter oben!
- Einige Adapter werden Warnungen ausgeben wenn State-Werte gesetzt werden VOR dem Anlegen von Objekten. Bitte bei den Adapter-Repos melden
Speziell die Entwickler sollten bitte die genannten Deprecations anschauen und beachten
Wie bereits gesagt, viele Änderungen fanden hinter den Kulissen statt. Hier für Interessierte als Spoiler eine Zusammenfassung:
Generell ist zu testen, ob alles noch so funktioniert wie vorher auch. Das ist das wichtigste!
Wie Fehler melden?
Wer sich unsicher ist, ob ein Fehler vorliegt, sollte am besten hier im Thread das Problem beschreiben. So können wir alle versuchen, das Problem nachzuvollziehen und ggf. einzugrenzen.
Sobald ein Fehler auftritt der in einer Fehlermeldung oder einen Crash mit Fehlerdetails im Log oder auf Kommandozeile endet, dann dazu am besten direkt ein GitHub-Issue im js-controller Projekt öffnen und zusätzlich hier im Thread posten. Je detaillierter die Angaben im Issue sind (genaue Fehlermeldungen/Logs, Infos zur OS- und Node.js-Umgebung sowie genaue Schritte zur Reproduktion des Problems), umso schneller können wir Fehler einkreisen und beheben.
Wir wünschen allen viel Spaß beim Testen und vielen Dank für Eure Unterstützung!
Ingo
@apollon77
Eine Änderung von states.writeFileInterval in der Datei "conf/iobroker-dist.json" hat keinen Einfluss auf das tatsächliche Schreibintervall von 30 s.
Ich finde keine Datei mehr, in der das Schreibintervall ausgeführt wird? -
@apollon77
Eine Änderung von states.writeFileInterval in der Datei "conf/iobroker-dist.json" hat keinen Einfluss auf das tatsächliche Schreibintervall von 30 s.
Ich finde keine Datei mehr, in der das Schreibintervall ausgeführt wird? -
-
/opt/iobroker/node_modules/@iobroker/db-objects-file -
/opt/iobroker/node_modules/@iobroker/db-objects-file@malleralle
Danke. Eine Änderung in der Datei/opt/iobroker/node_modules/@iobroker/db-states-file/lib/states/statesInMemFileDB.jszeigt Wirkung.
-
@malleralle
Danke. Eine Änderung in der Datei/opt/iobroker/node_modules/@iobroker/db-states-file/lib/states/statesInMemFileDB.jszeigt Wirkung.
@paul53 Kannst du nochmal was anderes einstellen und das loglevel auf silly stellen, sollte dann irgendwo
States DB uses file write interval of .. msstehen. Vermutlich wird da dann schon das falsche stehen.Bei Objects gleiches Problem?
-
@paul53 Kannst du nochmal was anderes einstellen und das loglevel auf silly stellen, sollte dann irgendwo
States DB uses file write interval of .. msstehen. Vermutlich wird da dann schon das falsche stehen.Bei Objects gleiches Problem?
@foxriver76 sagte: Kannst du nochmal was anderes einstellen und das loglevel auf silly stellen, sollte dann irgendwo
States DB uses file write interval of .. ms stehen.
Wo stelle ich den js-controller auf loglevel silly? Im Tab "Log" erscheint bisher kein solcher Log bei ioBroker-Start.
Edit: Hab den Loglevel gefunden.
-
@foxriver76 sagte: Kannst du nochmal was anderes einstellen und das loglevel auf silly stellen, sollte dann irgendwo
States DB uses file write interval of .. ms stehen.
Wo stelle ich den js-controller auf loglevel silly? Im Tab "Log" erscheint bisher kein solcher Log bei ioBroker-Start.
Edit: Hab den Loglevel gefunden.
-
@paul53 Kannst du nochmal was anderes einstellen und das loglevel auf silly stellen, sollte dann irgendwo
States DB uses file write interval of .. msstehen. Vermutlich wird da dann schon das falsche stehen.Bei Objects gleiches Problem?
@foxriver76 sagte: States DB uses file write interval of
Kann eine solchen Eintrag im Riesen-Logfile nicht finden. Die Umstellung auf "silly" hatte die CPU eine ganze Weile gestresst. -
@foxriver76 sagte: States DB uses file write interval of
Kann eine solchen Eintrag im Riesen-Logfile nicht finden. Die Umstellung auf "silly" hatte die CPU eine ganze Weile gestresst. -
@paul53 nicht finden heißt mit strg f oder grep nichts gefunden oder heißt beim Überfliegen nichts gesehen?

@foxriver76 sagte: nicht finden heißt mit strg f oder grep nichts gefunden
Mit der Suche in Chrome nichts gefunden. Überfliegen ist bei der Masse nicht.
EDIT: Auch der Windows-Editor findet den Text nicht, nicht mal "file write interval". -
@thomas-braun sagte in js-controller 3.2 jetzt im Latest!:
Lösch mal den npm-cache
Das Ergebnis sieht so aus:
npm WARN using --force I sure hope you know what you are doing.Der Log sieht so aus:
2021-01-19 11:19:50.463 - ^[[32minfo^[[39m: host.ioBroker iobroker.js-controller version 3.2.7 js-controller starting 2021-01-19 11:19:50.465 - ^[[32minfo^[[39m: host.ioBroker Copyright (c) 2014-2021 bluefox, 2014 hobbyquaker 2021-01-19 11:19:50.466 - ^[[32minfo^[[39m: host.ioBroker hostname: ioBroker, node: v12.20.1 2021-01-19 11:19:50.466 - ^[[32minfo^[[39m: host.ioBroker ip addresses: 192.168.178.XX fe80::8846:72ff:fe3a:8ae1 2021-01-19 11:19:50.526 - ^[[32minfo^[[39m: host.ioBroker connected to Objects and States 2021-01-19 11:19:50.550 - ^[[32minfo^[[39m: host.ioBroker added notifications configuration of host 2021-01-19 11:19:51.229 - ^[[32minfo^[[39m: host.ioBroker 49 instances found 2021-01-19 11:19:51.255 - ^[[32minfo^[[39m: host.ioBroker starting 36 instances 2021-01-19 11:19:51.401 - ^[[32minfo^[[39m: host.ioBroker instance system.adapter.admin.0 started with pid 17266 2021-01-19 11:19:52.053 - ^[[32minfo^[[39m: admin.0 (17266) starting. Version 4.2.1 in /opt/iobroker/node_modules/iobroker.admin, node: v12.20.1, js-controller: 3.2.7 2021-01-19 11:19:52.082 - ^[[32minfo^[[39m: admin.0 (17266) requesting all states 2021-01-19 11:19:52.082 - ^[[32minfo^[[39m: admin.0 (17266) requesting all objects 2021-01-19 11:19:52.714 - ^[[32minfo^[[39m: admin.0 (17266) received all objects 2021-01-19 11:19:52.811 - ^[[31merror^[[39m: admin.0 (17266) Cannot create webserver: Error: Please specify the email address and domains to use Let's Encrypt certifica> 2021-01-19 11:19:52.812 - ^[[32minfo^[[39m: admin.0 (17266) Terminated (ADAPTER_REQUESTED_TERMINATION): Without reason 2021-01-19 11:19:53.450 - ^[[31merror^[[39m: host.ioBroker instance system.adapter.admin.0 terminated by request of the instance itself and will not be restarted, befor> 2021-01-19 11:19:53.451 - ^[[32minfo^[[39m: host.ioBroker Do not restart adapter system.adapter.admin.0 because desired by instance 2021-01-19 11:19:55.264 - ^[[32minfo^[[39m: host.ioBroker instance system.adapter.email.0 started with pid 17281 2021-01-19 11:19:55.774 - ^[[32minfo^[[39m: email.0 (17281) starting. Version 1.0.7 in /opt/iobroker/node_modules/iobroker.email, node: v12.20.1, js-controller: 3.2.7 2021-01-19 11:19:59.773 - ^[[32minfo^[[39m: vis.0 (17296) starting. Version 1.3.6 in /opt/iobroker/node_modules/iobroker.vis, node: v12.20.1, js-controller: 3.2.7 2021-01-19 11:20:00.020 - ^[[32minfo^[[39m: vis.0 (17296) vis license is OK. 2021-01-19 11:20:00.961 - ^[[32minfo^[[39m: vis.0 (17296) Terminated (NO_ERROR): Without reason 2021-01-19 11:20:01.586 - ^[[32minfo^[[39m: host.ioBroker instance system.adapter.vis.0 terminated while should be started once 2021-01-19 11:20:03.263 - ^[[32minfo^[[39m: host.ioBroker instance system.adapter.terminal.0 started with pid 17311 2021-01-19 11:20:03.756 - ^[[32minfo^[[39m: terminal.0 (17311) starting. Version 0.1.2 in /opt/iobroker/node_modules/iobroker.terminal, node: v12.20.1, js-controller: 3> 2021-01-19 11:20:03.788 - ^[[32minfo^[[39m: terminal.0 (17311) http server listening on port 8090 2021-01-19 11:20:07.387 - ^[[32minfo^[[39m: host.ioBroker instance system.adapter.web.0 started with pid 17326 2021-01-19 11:20:07.934 - ^[[32minfo^[[39m: web.0 (17326) starting. Version 3.2.3 in /opt/iobroker/node_modules/iobroker.web, node: v12.20.1, js-controller: 3.2.7 2021-01-19 11:20:08.368 - ^[[32minfo^[[39m: web.0 (17326) socket.io server listening on port 8082 2021-01-19 11:20:08.369 - ^[[32minfo^[[39m: web.0 (17326) http server listening on port 8082 2021-01-19 11:20:11.403 - ^[[32minfo^[[39m: host.ioBroker instance system.adapter.text2command.0 started with pid 17341 2021-01-19 11:20:11.879 - ^[[32minfo^[[39m: text2command.0 (17341) starting. Version 2.0.7 in /opt/iobroker/node_modules/iobroker.text2command, node: v12.20.1, js-contr> 2021-01-19 11:20:13.648 - ^[[32minfo^[[39m: web.0 (17326) ==>Connected system.user.admin from ::ffff:192.168.178.43 2021-01-19 11:20:15.397 - ^[[32minfo^[[39m: host.ioBroker instance system.adapter.trashschedule.0 started with pid 17358 2021-01-19 11:20:15.899 - ^[[32minfo^[[39m: trashschedule.0 (17358) starting. Version 1.0.3 in /opt/iobroker/node_modules/iobroker.trashschedule, node: v12.20.1, js-con> 2021-01-19 11:20:16.042 - ^[[32minfo^[[39m: web.0 (17326) ==>Connected system.user.admin from ::ffff:192.168.178.43 -
Hi Zusammen,
komme seit dem update nicht mehr auf die HTTPS admin Instanz:
Malformed HTTP Header: 'Host: iobroker.xxx:8081'Let's Encrypt Zertifikat geht aber, kann sehen, dass er das aktualisierte geladen hat im Browser.
LG
Pete@peterbaumert Auch ein vollständigeres Log wäre cool
-
Hi all
ich weiss nicht wo ich das schreiben soll, aber seit dem Update bekomme ich laufend diese Warnung im Log:web.0 State "nothing_selected" has no existing object, this might lead to an error in future versions
Was kann ich hier tun?
Danke@tom-son sagte in js-controller 3.2 jetzt im Latest!:
nothing_selected
Interessant ...man müsste rausfinden "wann" es kommt. Und durch was getriggert. Was läuft alles ? Visualisierungen? welche? Die mal nicht nutzen und schauen ob es aufhört. Irgendein Adapter versucht da DInge ich tippe per socket.io
-
@apollon77
Eine Änderung von states.writeFileInterval in der Datei "conf/iobroker-dist.json" hat keinen Einfluss auf das tatsächliche Schreibintervall von 30 s.
Ich finde keine Datei mehr, in der das Schreibintervall ausgeführt wird? -
@malleralle
Danke. Eine Änderung in der Datei/opt/iobroker/node_modules/@iobroker/db-states-file/lib/states/statesInMemFileDB.jszeigt Wirkung.