NEWS
js-controller 5.0.x jetzt in der BETA
-
@feuersturm aber update wird durchgeführt?
-
@foxriver76 ja, slave update war erfolgreich
-
@feuersturm ok nochmal zum Szenario
der genutzte Admin läuft auf? (Master/Slave)
-
@foxriver76 Hi, der Admin läuft auf dem Master.
Bei mir läuft proxmox und dort habe ich in zwei LXC Containern zwei ioBroker Testsysteme laufen:- Master: ioBroker Testsystem (http://192.168.178.77:8081)
- Slave: ioBrokerNew (192.168.178.78)
Master:
proxmox@ioBrokerTestsystem:~$ iobroker multihost status No configuration change needed. Multihost discovery server: disabled Discovery authentication: enabled Persistent activation: disabled Objects: jsonl on 0.0.0.0 States: jsonl on 0.0.0.0
proxmox@ioBrokerTestsystem:~$ iob list instances + system.adapter.admin.0 : admin : ioBrokerTestsystem - enabled, port: 8081, bind: 0.0.0.0, run as: admin + system.adapter.backitup.0 : backitup : ioBrokerTestsystem - enabled system.adapter.benchmark.0 : benchmark : ioBrokerTestsystem - disabled system.adapter.daswetter.0 : daswetter : ioBrokerTestsystem - enabled + system.adapter.device-watcher.0 : device-watcher : ioBrokerTestsystem - enabled system.adapter.devices.0 : devices : ioBrokerTestsystem - disabled system.adapter.discovery.0 : discovery : ioBrokerNew - disabled system.adapter.dwd.0 : dwd : ioBrokerTestsystem - enabled + system.adapter.fritzbox.0 : fritzbox : ioBrokerTestsystem - enabled system.adapter.fully-tablet-control.0 : fully-tablet-control : ioBrokerTestsystem - disabled system.adapter.history.1 : history : ioBrokerNew - disabled + system.adapter.hm-rega.0 : hm-rega : ioBrokerTestsystem - enabled + system.adapter.hm-rpc.0 : hm-rpc : ioBrokerTestsystem - enabled, port: 0 system.adapter.hue.0 : hue : ioBrokerTestsystem - disabled, port: 443 system.adapter.ical.0 : ical : ioBrokerTestsystem - disabled system.adapter.ical.1 : ical : ioBrokerTestsystem - disabled system.adapter.ical.2 : ical : ioBrokerTestsystem - disabled system.adapter.ical.3 : ical : ioBrokerTestsystem - disabled system.adapter.ical.4 : ical : ioBrokerTestsystem - disabled system.adapter.ical.5 : ical : ioBrokerTestsystem - enabled system.adapter.icons-material-png.0 : icons-material-png : ioBrokerTestsystem - disabled system.adapter.icons-mfd-svg.0 : icons-mfd-svg : ioBrokerTestsystem - disabled system.adapter.icons-ultimate-png.0 : icons-ultimate-png : ioBrokerTestsystem - disabled system.adapter.influxdb.0 : influxdb : ioBrokerTestsystem - disabled, port: 8086 + system.adapter.info.0 : info : ioBrokerTestsystem - enabled + system.adapter.javascript.0 : javascript : ioBrokerTestsystem - enabled system.adapter.mqtt.0 : mqtt : ioBrokerTestsystem - disabled, port: 1883, bind: 0.0.0.0 + system.adapter.nina.0 : nina : ioBrokerTestsystem - enabled system.adapter.openweathermap.0 : openweathermap : ioBrokerTestsystem - enabled + system.adapter.proxmox.0 : proxmox : ioBrokerTestsystem - enabled, port: 8006 system.adapter.rainbird.0 : rainbird : ioBrokerTestsystem - disabled + system.adapter.samsung-community.0 : samsung-community : ioBrokerTestsystem - enabled system.adapter.sayit.0 : sayit : ioBrokerTestsystem - disabled, port: 0 + system.adapter.scenes.0 : scenes : ioBrokerTestsystem - enabled + system.adapter.scheduler.0 : scheduler : ioBrokerTestsystem - enabled + system.adapter.simple-api.0 : simple-api : ioBrokerTestsystem - enabled, port: 8087, bind: 0.0.0.0, run as: admin system.adapter.socketio.0 : socketio : ioBrokerTestsystem - disabled, port: 8084, bind: 192.168.178.77, run as: admin system.adapter.spotify-premium.0 : spotify-premium : ioBrokerTestsystem - disabled system.adapter.sql.0 : sql : ioBrokerNew - disabled, port: 3306 + system.adapter.tankerkoenig.0 : tankerkoenig : ioBrokerTestsystem - enabled system.adapter.telegram.0 : telegram : ioBrokerTestsystem - disabled, port: 8443, bind: 0.0.0.0 + system.adapter.tr-064.0 : tr-064 : ioBrokerTestsystem - enabled + system.adapter.trashschedule.0 : trashschedule : ioBrokerTestsystem - enabled + system.adapter.unifi.0 : unifi : ioBrokerTestsystem - enabled + system.adapter.valloxmv.0 : valloxmv : ioBrokerTestsystem - enabled, port: 80 + system.adapter.vis-2-beta.0 : vis-2-beta : ioBrokerTestsystem - enabled system.adapter.vis-2-widgets-energy.0 : vis-2-widgets-energy : ioBrokerTestsystem - enabled system.adapter.vis-2-widgets-gauges.0 : vis-2-widgets-gauges : ioBrokerTestsystem - enabled system.adapter.vis-2-widgets-jaeger-design.0: vis-2-widgets-jaeger-design: ioBrokerTestsystem - enabled system.adapter.vis-2-widgets-material.0 : vis-2-widgets-material: ioBrokerTestsystem - enabled system.adapter.vis-fancyswitch.0 : vis-fancyswitch : ioBrokerTestsystem - disabled system.adapter.vis-google-fonts.0 : vis-google-fonts : ioBrokerTestsystem - enabled system.adapter.vis-history.0 : vis-history : ioBrokerTestsystem - disabled + system.adapter.vis-inventwo.0 : vis-inventwo : ioBrokerTestsystem - enabled system.adapter.vis-jqui-mfd.0 : vis-jqui-mfd : ioBrokerTestsystem - disabled system.adapter.vis-justgage.0 : vis-justgage : ioBrokerTestsystem - disabled system.adapter.vis-map.0 : vis-map : ioBrokerTestsystem - disabled system.adapter.vis-materialdesign.0 : vis-materialdesign : ioBrokerTestsystem - disabled system.adapter.vis-metro.0 : vis-metro : ioBrokerTestsystem - enabled system.adapter.vis-timeandweather.0 : vis-timeandweather : ioBrokerTestsystem - disabled system.adapter.vis.0 : vis : ioBrokerTestsystem - enabled + system.adapter.web.0 : web : ioBrokerTestsystem - enabled, port: 8082, bind: 192.168.178.77, run as: admin system.adapter.worx.0 : worx : ioBrokerTestsystem - disabled
Slave:
proxmox@ioBrokerNew:~$ iobroker multihost status No configuration change needed. Multihost discovery server: disabled Discovery authentication: enabled Persistent activation: disabled Objects: jsonl on 192.168.178.77 States: jsonl on 192.168.178.77
Kann ich dir noch weitere Informationen bereitstellen?
-
@feuersturm hm wenn du zufällig den Beitrag findest in dem du damals die Browser Konsole gezeigt hast, ist am Handy gerade schwierig zu finden
Ah oder war Admin issue
Ah hier https://github.com/ioBroker/ioBroker.admin/issues/1963#issuecomment-1629713935
Hm ok schaut so aus als wäre das CORS Problem zwar gelöst aber irgendwas passt da trotzdem nicht..
-
@foxriver76 kannst du mal während das Update im Gange ist vom Slave im Browser
http://192.168.178.78:8081/
aufrufen und schauen was da kommt.Und Admin läuft unter http? Nicht https?
-
@foxriver76 Richtig, Admin läuft unter http
Das kommt unter
http://192.168.178.78:8081/
{"running":false,"stderr":[""],"stdout":["Stopping controller","Successfully stopped js-controller","Server is running on http://localhost:8081","","changed 13 packages in 33s","","81 packages are looking for funding"," run `npm fund` for details","Final information delivered","Final information delivered","Final information delivered","Final information delivered","Final information delivered","Final information delivered","Final information delivered","Final information delivered"],"success":true}
-
@feuersturm ok das passt eigentlich..
-
@foxriver76 Ist das hier richtig oder sollte hier die ip vom Master stehen?
Server is running on http://localhost:8081
-
@feuersturm das passt, wenn dann fragt der Admin den falschen Host an. Nur eigentlich sah das richtig aus im Admin issue. Also controller macht alles richtig nur Admin müsste das anfragen was du da eben auch gesehen hast wenn du die ip eingegeben hast, ich schaue nochmal rein ansonsten baue ich logging in nächste admin Version
-
@Feuersturm Bzw. könntest du während dem Update mal wenn du die Dev Tools offen hast (F12 meistens, bzw wo auch die Konsole ist), sollte ein Tab Netzwerkanalyse sein, öffne das mal und erst wenns offen ist starte das problembehaftete Upgrade, dann sollten wir sehen was da passiert.
-
@foxriver76 Ich habe leider keinen besseren Weg gefunden einen Export von der Ausgabe zu machen.
Ich habe die Netzwerkanalyse gestartet und dann das Update gestartet auf dem Slave. So sieht es dann aus.
Edit: Das Update startet dort wo die Zeilen mit dem
/
beginnen. Diese Zeile wiederholt sich für einige Sekunden bis es dann einfach aufhört. -
@feuersturm ok anscheinend fragt er den Master statt den Slave ab..
-
@feuersturm Bitte nochmal mit admin 6.8.0 probieren sobald verfügbar
-
@foxriver76 Wohooo. Es funktioniert mit Admin 6.8.0. Vielen Dank für deinen großartigen Einsatz.
-
Hallo zusammen,
zeitnah wird Controller 5.0.12 erscheinen, nichts weltbewegendes dabei, da es langsam alles recht stabil zu laufen scheint.
Änderungen
- DNS Warnung bei Erstinstallation wird nicht mehr unbegründet angezeigt
- Methode für Entwickler
updateConfig
berücksichtigt nun Auto Encryption und stellt sicher, dass die aktuellste Config genutzt wird - Webserver (UI Upgrade) schließt alle Verbindungen direkt, nachdem die finale Information geliefert wurde und vermeidet so unnötige Downtime des Controllers bei Folgeanfragen
- Methoden für Entwickler: Neue Methoden für Client-Push (Infos an die UI pushen bzw. Pub/Sub System hierfür - Beispielimplementierung folgt demnächst)
- Backup-Restore Problem behoben, bei dem bei Restore eines Backups die Daten in die falsche DB geschrieben wurden, falls sich die von Backup und aktueller Installation unterschieden hatten
- Backup Optimierungen: Falsches Logging im Fehlerfall behoben und Backups sind nun ca. 30 % kleiner
-
@foxriver76 Update vom Master Slave System auf 5.0.12 lief ohne Probleme und Systeme sind auch sauber gestartet.
-
5.0.12 läuft, Backup mit über 100000 States und 120000 objects ohne Probleme
Danke !
-
Keine Ahnung wo dieser "Fehler" hin hingehört. Aber er ist mir erst seit js-controller 5 aufgefallen, und das mit dem iobroker.shelly und iobroker.sonoff.
Beide Adapter zeigen gelegentlich folgendes Verhalten, ich kann auch nicht nachvollziehen wie es reprodzierbar wäre. Passiert jeden Tag 1 mal bei ca. 100 Schaltvorgängen.
auf das Umschalten eines Relays mit
setState(id, true, false)
erfolgt folgende Reaktion innerhalb von ein paar ms vom Adapter
{val: false, ack: true)
(val: true, ack: true)
Hab deshalb sämtliche manuell übersteuert Funktionen aus meiner Automatik genommen.
-
@ticaki
Ich vermute mal dass das nichts mit js-controller 5 zu tun hat. Wenn da mehr Diskussion kommt bitte ev. abspalten (@Homoran)Ich gehe davon aus, dass es sich bei dem State um einen State handelt, den einerseit du von extern setzt und der andrerseits intern vom Gerät gesetzt wird. Da ist es durchaus möglich, dass dein Schaltauftrag zunächst mal von einem Wert der vom Gerät kommmt übersteuert wird. setStates mit ack=true kommen ja vom Gerät
Also:
- extern setzt val: true, ack: false
- Adapter code liest das
- Gerät sendet val:false, adapter setzt daher val: false, ack: true
- Adapter sendet val: true (das kann auch Grund der asynchronität auch erst nach dem Empfang einer Meldung vom Gerät passieren !)
- Gerät sendet va:true, Adapter setzt daher val:true, ack: treu
Dass das nur selten passiert liegt wahrscheinlich am engen Zeitrahmen in dem so eine Konstelleation passieren muss. Wichtig beim drüber Nachdenken ist, dass der Adapter das ack=trzue richtigerweise erst setzen sollte wenn das Gerät den neuen Wert bestätigt hat.
Ergo seh ich das als durchaus zulässiges Verhalten.