Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Tester
  4. Test js-controller v2.0.x (GitHub)

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.5k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    2.0k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    16
    1
    2.7k

Test js-controller v2.0.x (GitHub)

Geplant Angeheftet Gesperrt Verschoben Tester
js-controller
1.0k Beiträge 48 Kommentatoren 315.8k Aufrufe 35 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • lobomauL Offline
    lobomauL Offline
    lobomau
    schrieb am zuletzt editiert von
    #474

    Nun habe ich den Master auf js-controller 2.0.19 gebracht. Das ging sofort, schnell und ohne Probleme. Scheint alles so laufen.

    Host: NUC8i3 mit Proxmox:

    • ioBroker CT Debian 13, npm 10.9.3, nodejs 22.20.0
    • Slave: Pi4
    1 Antwort Letzte Antwort
    0
    • D Offline
      D Offline
      darkiop
      Most Active
      schrieb am zuletzt editiert von
      #475

      Guten Morgen, eine Frage in die Runde: Könnt ihr mit der 2.0.19 unter Skripte "alle Skripte exportieren" ?

      10e21de6-eb34-4540-8f1e-be84a655b346-grafik.png

      6aaafb3d-e1bc-4bf7-bb38-e3ab07dfe587-grafik.png

      Proxmox-ioBroker-Redis-HA Doku: https://forum.iobroker.net/topic/47478/dokumentation-einer-proxmox-iobroker-redis-ha-umgebung

      sigi234S apollon77A 2 Antworten Letzte Antwort
      0
      • SBorgS Offline
        SBorgS Offline
        SBorg
        Forum Testing Most Active
        schrieb am zuletzt editiert von
        #476

        Ja, funktioniert.

        LG SBorg ( SBorg auf GitHub)
        Projekte: Lebensmittelwarnung.de | WLAN-Wetterstation | PimpMyStation

        1 Antwort Letzte Antwort
        0
        • D darkiop

          Guten Morgen, eine Frage in die Runde: Könnt ihr mit der 2.0.19 unter Skripte "alle Skripte exportieren" ?

          10e21de6-eb34-4540-8f1e-be84a655b346-grafik.png

          6aaafb3d-e1bc-4bf7-bb38-e3ab07dfe587-grafik.png

          sigi234S Online
          sigi234S Online
          sigi234
          Forum Testing Most Active
          schrieb am zuletzt editiert von
          #477

          @darkiop sagte in [Aufruf] js-controller 2.0 Beta Test:

          Guten Morgen, eine Frage in die Runde: Könnt ihr mit der 2.0.19 unter Skripte "alle Skripte exportieren" ?

          Ja, Google Chrome V 77.0.3865.90

          Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.
          Immer Daten sichern!

          1 Antwort Letzte Antwort
          0
          • coyoteC Offline
            coyoteC Offline
            coyote
            Most Active
            schrieb am zuletzt editiert von
            #478

            Habe auch noch eine Frage in die Runde. Da ich auf redis/redis umstellen möchte, was macht mehr Sinn, redis Server auf der gleichen VM wie ioBroker oder lieber extern z.B. auf meinen QNAP NAS? Gibt es dann nicht Probleme wenn iobroker läuft und ich das NAS neu starten muss, z.B. nach einem Firmware Update?

            apollon77A 1 Antwort Letzte Antwort
            0
            • D Offline
              D Offline
              darkiop
              Most Active
              schrieb am zuletzt editiert von
              #479

              Ok, beim mir unabhängig vom Browser - File package.zip not found ... Im Log nichts zu sehen ... Jetzt aber erstmal ne Runde an die Luft zum Wandern ;)

              Proxmox-ioBroker-Redis-HA Doku: https://forum.iobroker.net/topic/47478/dokumentation-einer-proxmox-iobroker-redis-ha-umgebung

              apollon77A 1 Antwort Letzte Antwort
              0
              • D darkiop

                Guten Morgen, eine Frage in die Runde: Könnt ihr mit der 2.0.19 unter Skripte "alle Skripte exportieren" ?

                10e21de6-eb34-4540-8f1e-be84a655b346-grafik.png

                6aaafb3d-e1bc-4bf7-bb38-e3ab07dfe587-grafik.png

                apollon77A Offline
                apollon77A Offline
                apollon77
                schrieb am zuletzt editiert von
                #480

                @darkiop auch gerade mit file/file testsytem getestet, javascript 4.1.12 bei mir

                Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

                • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
                • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
                1 Antwort Letzte Antwort
                0
                • coyoteC coyote

                  Habe auch noch eine Frage in die Runde. Da ich auf redis/redis umstellen möchte, was macht mehr Sinn, redis Server auf der gleichen VM wie ioBroker oder lieber extern z.B. auf meinen QNAP NAS? Gibt es dann nicht Probleme wenn iobroker läuft und ich das NAS neu starten muss, z.B. nach einem Firmware Update?

                  apollon77A Offline
                  apollon77A Offline
                  apollon77
                  schrieb am zuletzt editiert von
                  #481

                  @coyote hab ich dazu nicht weiter oben schon was geschrieben?

                  Aber Du hast genau den "wunden Punkt" erwischt mit der Frage: Wenn du/sich die NAS rebootet und Redis da drauf ist dann ist der weg und alle iobroker hosts gehen offline bzw restarten idealerweise bis Redis wieder da ist.

                  Ich persänlich bin daher (weniger Abhängigkeiten) dafür iobroker und Redis auf gleichen hosts zu haben

                  Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

                  • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
                  • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
                  coyoteC StabilostickS 2 Antworten Letzte Antwort
                  0
                  • D darkiop

                    Ok, beim mir unabhängig vom Browser - File package.zip not found ... Im Log nichts zu sehen ... Jetzt aber erstmal ne Runde an die Luft zum Wandern ;)

                    apollon77A Offline
                    apollon77A Offline
                    apollon77
                    schrieb am zuletzt editiert von
                    #482

                    @darkiop Geht bei mir auch in Firefox ... aber auch mein File heisst <datum>_scripts.zip" oder so und nicht package.zip

                    Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

                    • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
                    • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
                    E 1 Antwort Letzte Antwort
                    0
                    • apollon77A apollon77

                      @coyote hab ich dazu nicht weiter oben schon was geschrieben?

                      Aber Du hast genau den "wunden Punkt" erwischt mit der Frage: Wenn du/sich die NAS rebootet und Redis da drauf ist dann ist der weg und alle iobroker hosts gehen offline bzw restarten idealerweise bis Redis wieder da ist.

                      Ich persänlich bin daher (weniger Abhängigkeiten) dafür iobroker und Redis auf gleichen hosts zu haben

                      coyoteC Offline
                      coyoteC Offline
                      coyote
                      Most Active
                      schrieb am zuletzt editiert von
                      #483

                      @apollon77 ja ich weiß, da hast du oben schon was zu geschrieben, ich wollte nur nochmal kurz nachhaken, ob ich redis jetzt auf der iobroker VM lasse oder nicht.
                      Aber OK, dann lasse ich es vorerst mal so.

                      Soll ich jetzt die 2.0.19 noch testen, oder schaust du da noch warum die Migration nicht richtig will? Zumindest hat ChrisXY das ja berichtet, kann aber selbst noch kurz testen

                      1 Antwort Letzte Antwort
                      0
                      • apollon77A apollon77

                        @coyote hab ich dazu nicht weiter oben schon was geschrieben?

                        Aber Du hast genau den "wunden Punkt" erwischt mit der Frage: Wenn du/sich die NAS rebootet und Redis da drauf ist dann ist der weg und alle iobroker hosts gehen offline bzw restarten idealerweise bis Redis wieder da ist.

                        Ich persänlich bin daher (weniger Abhängigkeiten) dafür iobroker und Redis auf gleichen hosts zu haben

                        StabilostickS Offline
                        StabilostickS Offline
                        Stabilostick
                        schrieb am zuletzt editiert von Stabilostick
                        #484

                        @apollon77 sagte in [Aufruf] js-controller 2.0 Beta Test:

                        Ich persänlich bin daher (weniger Abhängigkeiten) dafür iobroker und Redis auf gleichen hosts zu haben

                        Und ich bin vorerst dafür ( genau aus dem gleichen Grund :slightly_smiling_face: ) , einfach auf die internen Datenbanken des js-controllers zu setzten und mir damit das ganze Gedöns und die Abhängigkeiten mit einem externen Dienst zu ersparen.

                        apollon77A 1 Antwort Letzte Antwort
                        0
                        • apollon77A Offline
                          apollon77A Offline
                          apollon77
                          schrieb am zuletzt editiert von
                          #485

                          Auf Github finet Ihr die 2.0.21 mit ein paar kleineren Fixes und Optimierungen

                          @coyote Die Migration sollte schonseit 2.0.19 gefixt sein.

                          Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

                          • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
                          • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
                          1 Antwort Letzte Antwort
                          0
                          • sigi234S sigi234

                            @Ritter sagte in [Aufruf] js-controller 2.0 Beta Test:

                            @sigi234 Wo gibts den mit Migration, der verlinkte installiert doch nur iobroker ein zweitesmal oder?

                            wenn du das Setup ausführst kannst du auswählen!

                            R Offline
                            R Offline
                            Ritter
                            schrieb am zuletzt editiert von
                            #486

                            @sigi234 sagte in [Aufruf] js-controller 2.0 Beta Test:

                            @Ritter sagte in [Aufruf] js-controller 2.0 Beta Test:

                            @sigi234 Wo gibts den mit Migration, der verlinkte installiert doch nur iobroker ein zweitesmal oder?

                            wenn du das Setup ausführst kannst du auswählen!

                            Wenn ich Migration auswähle, fragt er nach dem Verzeichnis wo iobroker installiert werden soll. Kann ich das Verzeichnis nehmen wo es schon ist und er repariert es oder brauch ich ein anderes Verzeichnis?

                            1 Antwort Letzte Antwort
                            0
                            • apollon77A apollon77

                              @darkiop Geht bei mir auch in Firefox ... aber auch mein File heisst <datum>_scripts.zip" oder so und nicht package.zip

                              E Offline
                              E Offline
                              Einstein67
                              schrieb am zuletzt editiert von
                              #487

                              @apollon77 said in [Aufruf] js-controller 2.0 Beta Test:

                              Geht bei mir auch in Firefox ... aber auch mein File heisst <datum>_scripts.zip"

                              Bei mir ist der Name auch so. Das erzeugte zip File, lässt sich aber weder mit WinRAR noch 7zip öffnen.

                              scripts.PNG

                              Bin der Meinung früher ließen sich die Dateien öffnen ...

                              apollon77A 2 Antworten Letzte Antwort
                              0
                              • StabilostickS Stabilostick

                                @apollon77 sagte in [Aufruf] js-controller 2.0 Beta Test:

                                Ich persänlich bin daher (weniger Abhängigkeiten) dafür iobroker und Redis auf gleichen hosts zu haben

                                Und ich bin vorerst dafür ( genau aus dem gleichen Grund :slightly_smiling_face: ) , einfach auf die internen Datenbanken des js-controllers zu setzten und mir damit das ganze Gedöns und die Abhängigkeiten mit einem externen Dienst zu ersparen.

                                apollon77A Offline
                                apollon77A Offline
                                apollon77
                                schrieb am zuletzt editiert von
                                #488

                                @Stabilostick naja man muss halt damit umgehen können :-)

                                Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

                                • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
                                • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
                                1 Antwort Letzte Antwort
                                0
                                • E Einstein67

                                  @apollon77 said in [Aufruf] js-controller 2.0 Beta Test:

                                  Geht bei mir auch in Firefox ... aber auch mein File heisst <datum>_scripts.zip"

                                  Bei mir ist der Name auch so. Das erzeugte zip File, lässt sich aber weder mit WinRAR noch 7zip öffnen.

                                  scripts.PNG

                                  Bin der Meinung früher ließen sich die Dateien öffnen ...

                                  apollon77A Offline
                                  apollon77A Offline
                                  apollon77
                                  schrieb am zuletzt editiert von
                                  #489

                                  @Einstein67 hm ... ich habe gerade zwei maschinen. beide js 4.1.12 und controller 2.0 ... eine tut eine nicht ... wtf

                                  Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

                                  • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
                                  • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
                                  D 1 Antwort Letzte Antwort
                                  0
                                  • S Offline
                                    S Offline
                                    sven12
                                    schrieb am zuletzt editiert von
                                    #490

                                    Hallo,
                                    gerade von 2.0.17 auf 2.0.21 gewechselt.
                                    Seitdem ist der Shelly Adapter rot.

                                    2019-10-03 19:45:38.196 - debug: shelly.0 (7340) Redis Objects: Use Redis connection: 0.0.0.0:9001
                                    2019-10-03 19:45:38.258 - debug: shelly.0 (7340) Objects connected to redis: 0.0.0.0:9001
                                    2019-10-03 19:45:38.267 - debug: shelly.0 (7340) objectDB connected
                                    2019-10-03 19:45:38.267 - debug: shelly.0 (7340) Redis States: Use Redis connection: 0.0.0.0:9000
                                    2019-10-03 19:45:38.271 - debug: shelly.0 (7340) statesDB connected
                                    2019-10-03 19:45:38.280 - debug: shelly.0 (7340) States connected to redis: 0.0.0.0:9000
                                    2019-10-03 19:45:39.156 - info: shelly.0 (7340) starting. Version 3.1.0 in /opt/iobroker/node_modules/iobroker.shelly, node: v8.16.1
                                    2019-10-03 19:45:39.287 - info: shelly.0 (7340) Stating Shelly adapter in CoAP modus.
                                    

                                    Mit der 2.0.17 wars noch ok
                                    Gruß
                                    Sven

                                    apollon77A StuebiS 2 Antworten Letzte Antwort
                                    0
                                    • apollon77A apollon77

                                      @Einstein67 hm ... ich habe gerade zwei maschinen. beide js 4.1.12 und controller 2.0 ... eine tut eine nicht ... wtf

                                      D Offline
                                      D Offline
                                      darkiop
                                      Most Active
                                      schrieb am zuletzt editiert von
                                      #491

                                      @apollon77 also hier auch, ich kann machen was ich will, der kollege iobroker möchte eine package.zip herunteladen die es nicht gibt :D

                                      Hab die javascrip.x instanzen auch mal auf debug gestellt - das log bleibt hier aber trotzdem leer.

                                      Was bewirkt eigentlich das log.level in der iobroker.json?

                                      Proxmox-ioBroker-Redis-HA Doku: https://forum.iobroker.net/topic/47478/dokumentation-einer-proxmox-iobroker-redis-ha-umgebung

                                      apollon77A 1 Antwort Letzte Antwort
                                      0
                                      • apollon77A apollon77

                                        Hallo in die Tester-Runde,

                                        heute starten wir den Beta Test des neuen js-controller 2.0 (Releasename "Bella"). An diesem großen js-controller Update haben wir Entwickler recht lang gearbeitet. Eine erste interne Testrunde ist bereits abgeschlossen (Großen Dank an @Arteck).

                                        Es sind vor allem "unter der Haube" einige grundlegende Änderungen eingeflossen, die den Wechsel auf eine neue Hauptrelease-Nummer rechtfertigen. Mehr dazu weiter unten. Wir möchten vor dem Release im "Latest Repository" einen zusätzlichen Beta Test durchführen und hoffen auf eure Unterstützung!

                                        Der js-controller 2.0 ist generell kompatibel mit allen bestehenden ioBroker-Systemen. Es kann von jeder früheren Version auf die Version 2.0 aktualisiert werden. Einzig die Node.js Version muss vor dem Update mindestens auf 8.x, besser noch auf 10.x angehoben werden! Für Node.js 12 ist es aber noch etwas zu früh, da hier immer noch einige Adapter nicht kompatibel sind.

                                        Weiterhin wir der ioBroke-Eigene-Dateibereich (im Normalfall bister unter <ioBroker-Verzeichnis>/iobroker-data/files/...) nun etwas strikter behandelt und potentiell manuell oder per Skript (fs.write) dort direkt abgelegte/hinkopierte Dateien sind ggf nicht mehr in Visualisierungen anzeugbar!
                                        Skripte müssen angepasst werden (Nutzung von writeFile) bzw die Dateien müssen in offiziell definierte Adpater-Basisverzeichnisse (z.B. vis.0, iqontrol.metau.ä.) abgelegt werden, am besten auch offiziell via Vis oder iqontrol hochgeladen werden, damit diese Dateien korrekt registriert sind. Diese Änderung wurde auch zur Erhöhung der Sicherheit umgesetzt!


                                        Installation


                                        VOR der Installation
                                        Wie bei jedem test dieser Art: Bitte macht ein Backup! iobroker backup bzw kopieren des iobroker-data Verzeichnisses 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 per npm install iobroker.js-controller installiert werden und sollte alles wieder herstellen.

                                        Windows

                                        Auf Systemen, die mit dem neuen Windows Installer eingerichtet wurden, darf der js-controller nicht mir npm aktualisiert werden. Es wird eine neue Version des Windows Installers geben, die das Update des js-controllers mit wenigen Mausklicks ermöglicht. Wir updaten dazu hier im Thread.

                                        Linux

                                        Für den Beta-Test muss der js-controller direkt per npm installiert werden. Dazu bitte den ioBroker auf dem Server beenden und dann in einer Shell in das ioBroker Verzeichnis wechseln. Dann mittels npm install ioBroker/ioBroker.js-controller den Controller manuell aktualisieren. Bevor ihr loslegt, lest aber bitte erst noch die folgenden Hinweise! Der zweite Post in diesem Thread ist für eine FAQ reserviert. Bitte schaut auch dort gern einmal rein.

                                        Achtung: Slave-Systeme zuerst!
                                        Bei einem Multi-Host-System ist es beim Update auf Version 2.0 sehr wichtig, zuerst die Slave-Systeme zu aktualisieren. Der Master wird als letztes aktualisiert! Dies wird vor allem später für den wirklichen Release interessant. Bei der korrekten Reihenfolge funktioniert später alles über das Standardkommando iobroker upgrade self. Sonst muss das Update manuell per npm ausgeführt werden.

                                        Nötige Adapter-Aktualisierungen
                                        Die folgenden Adapter müssen auf die genannten Minimalversionsnummern aktualisiert werden, da diese sonst nicht mit dem js-controller 2.0 funktionieren:

                                        • simple-api 2.1.2 or higher
                                        • email 1.0.5 or higher
                                        • pushover 1.1.1 or higher
                                        • hue 1.2.4 or higher
                                        • node-red 1.10.1 or higher
                                        • vis 1.2.1 or higher
                                        • iqontrol 0.2.6 or higher
                                        • socketio 2.1.2 or higher
                                        • radar2 1.0.9 (GitHub version aktuell nicht korrekt!)
                                        • broadlink2 TBD
                                        • vis-justgage 1.0.1 (Fehler aber nicht beim controller) - https://github.com/GermanBluefox/ioBroker.vis-justgage (PR wartet)

                                        Alle genannten Versionen funktionieren aber auch mit älteren js-controller Versionen, also kann das Update auch vorher stattfinden.

                                        Fehler
                                        Wenn bei der Installation Fehler wegen fehlender Zugriffsrechte auftreten, am besten den Installation-Fixer nutzen und die Installation wiederholen.

                                        curl -sL https://iobroker.net/fix.sh | bash -
                                        

                                        Falls es auch danach noch Fehler gibt, bitte die Installation erneut mittels sudo -H -u iobroker npm install ioBroker/ioBroker.js-controller versuchen. 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. Die großen Änderungen sind alle "Unter der Haube" versteckt.

                                        Dazu, was Euch jetzt die ganzen Neuerungen bringen, findet Ihr weiter unten in diesem Text Informationen. Neue Funktionen als Basis für Weiterentwicklungen wurden behutsam integriert und einige bestehende Probleme gezielt behoben.

                                        Mit iobroker help wird eine Liste der möglichen Kommandozeilen-Kommandos angezeigt, die mit Version 2.0 um einige Befehle länger geworden ist.


                                        Was hat sich geändert, was besonders ansehen/testen?


                                        Eine der größeren Änderungen ist, dass die ioBroker-eigenen States- und Objects-Datenbanken vollständig neu geschrieben wurden. Im ioBroker-System wird zur Kommunikation jetzt nicht mehr socket.io sondern ein TCP-basiertes und mit Redis-kompatibles Protokoll verwendet. Auf Basis dieser Änderungen planen wir für die Zukunft noch einige interessante Neuerungen. "Reconnection from DB"-Fehler sollen jetzt der Vergangenheit angehören. Das neue Protokoll ist flexibler und robuster - so lange die Netzwerkverbindung nicht abreißt. Aber selbst in solch einem Fall sollte ein automatischer Reconnect stattfinden und alle Änderungen aus der Zeit ohne Verbindungen nochmals gesendet werden.
                                        Also falls Ihr in der Vergangenheit von "Reconnect to DB" Meldungen und Effekten geplagt wart ist Euer Bericht für uns sehr interessannt.

                                        Diese grundlegende Umstellung kann natürlich auf alles mögliche auch negative Auswirkungen haben. Hier bitte besonders alle JavaScript-Skripte und alle Adapter prüfen, ob alles noch so funktioniert wie vorher.

                                        Bei Master-Slave-Systemen bitte, wie oben beschrieben, zuerst die Slave-Systeme auf den js-controller 2.0 aktualisieren. Die Slave-Systeme sollten auch mit einem "alten" Master weiterhin funktionieren, da bislang als Fallback noch die bisherige socket.io-Kommunikation eingebaut ist. Diese wird vorauss. erst im js-controller 2.1 entfernt.

                                        Wie bereits gesagt, viele Änderungen fanden hinter den Kulissen statt. Hier für Interessierte als Spoiler eine Zusammenfassung:


                                        2.0.2 (2019-09-17) Release Bella

                                        Breaking changes
                                        • Minimum requirement for js-controller 2.0.0 is node.js 8.x

                                        New user features
                                        • Add Compact Mode and compact groups (Technology Preview)
                                        • Add build-in Alias handling for Objects/States (Technology Preview)
                                        • Add support to also use Redis for Objects and Files
                                        • Add Redis sentinel support
                                        • Allow dynamic change of Loglevel for adapter instance and js-controller hosts processes
                                        • Add optional migration for State and/or Objects values when using setup custom
                                        • Add monitoring for event-Loop-Lag as host and adapter objects
                                        • Add possibility to validate backup files
                                        • Support command „iobroker logs“
                                        • Support command „cert create“
                                        • Remember installation location for reinstallations
                                        • Remembered installation location for automatic adapter installs

                                        New adapter developer features
                                        • Add adapter.supportsFeature('NAME') method to check if a certain feature exists. #244
                                        • Ability to define secured objects in io-pack access only via own adapter and admin. #287
                                        • Added getObjectView and getObjectViewAsync on adapter object
                                        • Added getObjectList and getObjectListAsync on adapter object
                                        • Allow the deletion of multiple objects with wildcard
                                        • setObject/setObjectNotExists now also sets default value of state after object creation
                                        • Allow getPort to check for the port optionally on a certain host/IP

                                        Further changes
                                        • Rewrite InMem databases (States & Objects) to TCP (redis compatible) protocol and deprecate socket.io version; will be removed approx. in v2.1
                                        • Add adapter handling to prevent "error 7" (adapters will stop themself as soon as PID is not as expected)
                                        • Upgrade all dependencies
                                        • Don't chmod 777 after controller upgrade
                                        • Refactoring of many CLI commands
                                        • Add possibility to return zip file as a link and not as base64
                                        • Standardize error codes
                                        • Root should always npm install with --unsafe-perm
                                        • Enable gzip to read repositories
                                        • Read hash of sources.json online before downloading the whole file
                                        • Add some information about user-agent
                                        • Verify the version of node.js by start of the instance
                                        • Hide cmd window on windows
                                        • Include certificate creation in setup first
                                        • Suppress warning by npm install
                                        • Allow optional dependencies being installed
                                        • Optimize setup custom command and add more user guidance
                                        • Add Feature overview to README
                                        • Forward upload console outputs from slave to master
                                        • Make sure to upload and upgrade all relevant objects on installations and updates of adapters
                                        • Always upgrade instance objects after successful installs or upgrades
                                        • Optimize adapter start processes, especially when combined with needed automatic installations of adapters
                                        • After 2 installation tries with "last-installedFrom" use the installedVersion field to try to install from npm
                                        • Hhosts now ignore object changes when the affected instances is still in installQueue
                                        • Code refactoring and optimizations in various places

                                        Bugfixes
                                        • Log scheduled restarts as info only (fixes #315)
                                        • Fixed #340 to maintain restartSchedule on updates
                                        • Fixed a bug where it was possible to set "ack" to any value via cli
                                        • Enable ESLint and fix most issues
                                        • Optimize multi host upload
                                        • Restart stopped adapters at the end of the upload and not before to make sure to not have two adapter restarts on upgrade cases
                                        • Enhance checks for failed installations in cli and controller
                                        • Also update adapter instance statistic objects when no instanceObejcts are defined
                                        • ".alive" state values are only checked on adapter start if ack=true to allow to start a process if not running
                                        • Fix for mutlihost detection
                                        • Fix backup of states
                                        • Make sure also VIS global CSS is included in backup and restored
                                        • Many more fixes in various places

                                        Weitere Details zu den Änderungen und Bugfixes ist im Changelog einzusehen. Wer tiefer und ggf. gezielter testen möchte, ist herzlich dazu eingeladen. Kontaktiert uns dazu auch gern hier im Thread.

                                        Etwas weiter unten stellen wir einige neue Features im Detail etwas "weniger technisch" vor. ;-)

                                        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.


                                        Einige neue Features


                                        1. Compact Modus und Compact Gruppen

                                        Eines der großen Vorteile von ioBroker ist, dass jeder Adapter als eigener Prozess ausgeführt wird. Das macht das System sehr stabil - bei Problemen betreffen diese nur den einen Adapter und nicht das ganze System. Andererseits benötigt dieser Ansatz allerdings auch etwas mehr RAM. Für Systeme mit wenig verfügbarem RAM (z.B. Raspi Nano oder Raspi 1 mit 512MB RAM), die oft als Slave-Systeme eingesetzt werden, ist die Anzahl der Adapter damit limitiert.

                                        Der Compact Modus löst dieses Problem dadurch, dass mehrere Adapter zusammen in einem Prozess laufen und damit der RAM-Bedarf deutlich geringer ist (es werden etwa 20-30MB je Adapter-Instanz eingespart). Dies geht aber zu Lasten der Stabilität, da ein fehlerhafter Adapter auch alle anderen Adapter im gleichen Prozess betrifft und diese sich ggf. ebenfalls neu starten.

                                        Adapter-Instanzen können dazu, um das Risiko etwas zu verteilen, in mehrere Gruppen aufgeteilt werden. Jede Gruppe startet einen eigenen Prozess, in dem dann alle Instanzen dieser Gruppe ausgeführt werden. Die Gruppe 0 ist speziell. Hier Mitglied zu sein bedeutet, dass der betreffende Adapter im Haupt-js-controller-Prozess ausgeführt wird. Dies ergibt die größte RAM-Ersparnis - allerdings auch das größte Risiko, da ein fehlerhafter Adapter den js-controller negativ beeinflussen kann. Als Standard werden Instanzen in der Gruppe 1 ausgeführt, wenn der Compact Modus für die entsprechende Instanz aktiviert wird.

                                        Ob ein Adapter den Compact Modus unterstützt, hängt vom jeweiligen Adapter ab. Diese Information wird künftig noch in der Adapterliste aufgenommen. Aktuell werden nur Adapter die als daemon ausgeführt werden auch im Compact Modus gestartet (also keine scheduled-Adapter). Auch wenn der Adapter generell den Compact-Mode unterstützt muss die Nutzung pro Instanz einzeln aktiviert werden!

                                        Zur Zeit gibt es zur Konfiguration des Compact Modus noch keine Unterstützung im Admin. Die Konfiguration erfolgt per Kommandozeilen-Aufruf. Die wichtigsten Kommandos sind:

                                        • iobroker compact enable zum generellen Aktivieren des Compact Modus für den aktuellen js-controller Host. ioBroker muss danach neu gestartet werden, damit die Änderung aktiv wird.
                                        • iobroker list instances zeigt zusätzliche jetzt auch den Status des Compact Modus der Adapterinstanzen an.
                                        • iobroker compact <adaptername>.<instanz> status zeigt den Compact Modus Status der Instanz an.
                                        • iobroker compact <adaptername>.<instanz> enable 1 aktiviert die Ausführung im Compact Modus in Gruppe „1“. Nur der Adapter wird dabei neu gestartet. Diese Konfiguration kann bei laufendem ioBroker erfolgen.

                                        Falls es Probleme gibt (z.B. ein Adapter läuft nicht mehr sauber oder bleibt "hängen" beim Stoppen), dann bitte ein Issue beim Adapter öffnen. Ansonsten bitte hier im Thread posten, damit wir sehen, woran es liegt.


                                        2. Installations-Quelle von Adaptern wird gespeichert

                                        ioBroker-Adapter werden im Normalfall aus dem Latest- oder Stable-Repository von npm installiert. Falls ein Adapter auf einen anderen Host verschoben wird oder das System neu installiert werden muss, wird versucht die gleiche Version wieder von npm zu installieren. Im Normalfall klappt das auch. Falls ein Adapter allerdings testweise von GitHub installiert wurde, ist dieser Stand bzw. diese Version ggf. nicht auf npm verfügbar. Damit kann die gleiche Version nicht automatisch neu installiert werden. Dies ändert sich nun.

                                        Für alle neuen Adapterinstallationen nach dem Update merkt sich ioBroker den genauen GitHub-Stand einer Custom-Installation und kann diesen Stand dann wieder nachinstallieren.

                                        Auch an der Adapterinstallation selbst, dem Upload und ähnlichem wurde einiges überarbeitet und optimiert. Es wurden einige Sonderfälle behoben, wo teile der upload-Logik nicht korrekt ausgeführt wurden. Auch hier helfen eure Tests.


                                        3. Redis-Unterstützung nun auch für Objekte und Files

                                        Standardmäßig werden Objekte und Zustände in einer ioBroker-eigenen Speicher-Datenbank verwaltet und in JSON-Dateien gespeichert. Mit dieser eigenen Lösung wird keine weitere Software benötigt.

                                        Seit einiger Zeit ist es bereits möglich, Zustände alternativ in einer optimierten Redis-Datenbank zu speichern. Ab einiger gewissen Anzahl an Zustandsänderungen pro Sekunde kann durch den Einsatz von Redis die Gesamtsystemlast zurückgehen bzw. auf mehrere Systeme verteilt werden. Redis bringt allerdings auch einen Mehraufwand mit, da diese Software installiert, verwaltet und gesichert werden will, damit es bei Updates oder im Problemfall nicht zu einem Datenverlust kommt.

                                        Mit js-controller 2.0 erlaubt ioBroker nun auch Objekte und die Dateien, die aktuell auf dem Master-System im Dateisystem abgelegt sind, in der Redis-Datenbank zu verwalten.

                                        Wichtig: Vor allem die Verlagerung von Dateien in die Datenbank kann dazu führen, dass diese recht groß werden kann (gern mehrere hundert MB). Da Redis alle Daten immer im RAM hält, ist diese Option nur für Systeme geeignet, die genügend RAM-Ressourcen zur Verfügung haben. Ebenso die CPU Belastung wird bei einem redis/redis System höher sein weil Daten anders verarbeitet werden müssen.

                                        Die Verlagerung von Dateien in die Datenbank führt zu einer deutlich größeren Flexibilität. Aufgrund dieser Änderung gibt es quasi keine lokalen Daten im Dateisystem mehr. In Summe wird die Redis-Datenbank zur zentralen Datenhaltung des ioBroker-Systems, da sie sämtliche Daten beinhaltet. Alle js-controller und Adapter verbinden sich dann mit dieser zentralen Datenbank.

                                        Mit dem js-controller 2.x kann sogar eine Redis-Sentinel Installation zur Steigerung der Systemverfügbarkeit genutzt werden (quasi ein Redis-HA-Cluster). Das ist eine erste Grundlage für die Bereitstellung eines hochverfügbaren ioBroker-Systems, das Ausfälle einzelner Serverkomponenten kompensieren kann. Diese Option sollte man allerdings aktuell nur austesten wenn man weiss was man tut ;-) Dazu in späteren Updates mehr.

                                        Mit dem Einzug der verschiedenen Speichermöglichkeiten für Dateien, Objects und States wurde der Befehl iobroker setup custom überarbeitet. Zum einen zeigt er mehr Informationen an. Zusätzlich ist er jetzt aber auch in der Lage, bei einem Wechsel der Datenhaltung die Daten in alle Richtungen zu migrieren. So ist ein Wechsel jederzeit möglich.


                                        4. "Alias"-Feature

                                        Einer der Vorteile von ioBroker ist, dass es sehr viele Adapter gibt. Allerdings hat sich herausgestellt, das jeder Adapter z.B. je nach angebundenen Systemen durchaus individuelle Strukturen bezüglich der Ablage der bereitgestellten Datenpunkte implementiert. Dies bringt vor allem bei eigenen Skripten aber auch bei Visualisierungs- und den Cloud/iot-Adaptern gewisse Herausforderungen mit sich.
                                        Beim Austausch von Geräten zwischen verschiedenen Herstellern muss man so gelegentlich aufgrund der Änderungen bei den Datenpunkten Skripte anpassen. Visualisierungsadapter und der iot-Adapter versuchen z.B. anhand der Rollen von Datenpunkten den Typ von Geräten zu erkennen, um diese korrekt anzuzeigen bzw. an Amazon bzw. Google zu melden. Dabei stehen die Adapter manchmal auf verlorenem Posten, weil bestimmte Adapter Informationen zu Rollen u.ä. gar nicht liefern können - vor allem MQTT, modbus u.ä. sind hier betroffen.

                                        Das Alias Feature, das direkt im js-controller verankert ist, stellt den neuen Namespace "alias.0" für Objekte zur Verfügung. Das Feature erlaubt es, Geräte mit einer stabilen Struktur und sauberen Rollen anzulegen. Das erfolgt jetzt zuerst manuell, später auch z.B. mittels des kommenden "Devices"-Adapters, der sich gerade in Entwicklung befindet.

                                        Auch dieses Feature hat noch keine vollständige Unterstützung im Admin, was allerdings noch kommen wird.

                                        Nach der Definition des Alias-Objects kann im neuen Bereich common.alias die ID des Quellobjekts im jeweiligen Adapter definiert werden. Ab dann werden alle Daten in beide Richtungen zwischen den Objekten synchronisiert. Zusätzlich kann interessanterweise eine read und write Funktion definiert werden, um einfache Umrechnungen vorzunehmen (z.B. Wh <--> kWh).

                                        Weitere (technische) Details haben wir unter Alias Information in der js-controller README veröffentlicht.


                                        Wir wünschen allen viel Spaß beim Testen und vielen Dank für Eure Unterstützung!

                                        snadorS Offline
                                        snadorS Offline
                                        snador
                                        schrieb am zuletzt editiert von
                                        #492

                                        @apollon77 Ich hab Mal eine Frage zum neuen Adapter. Ihr sagt ihr habt SocketIO ersetzt... Ich nutze für einen eigenen Adapter den SocketIO Adapter. Wird sich da auch was ändern um mit ioB zu kommunizieren? Danke für die Info!

                                        apollon77A 1 Antwort Letzte Antwort
                                        0
                                        • E Einstein67

                                          @apollon77 said in [Aufruf] js-controller 2.0 Beta Test:

                                          Geht bei mir auch in Firefox ... aber auch mein File heisst <datum>_scripts.zip"

                                          Bei mir ist der Name auch so. Das erzeugte zip File, lässt sich aber weder mit WinRAR noch 7zip öffnen.

                                          scripts.PNG

                                          Bin der Meinung früher ließen sich die Dateien öffnen ...

                                          apollon77A Offline
                                          apollon77A Offline
                                          apollon77
                                          schrieb am zuletzt editiert von
                                          #493

                                          @Einstein67 Hab den Grund gefunden. Wird in nächster version gefixt sein

                                          Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

                                          • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
                                          • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
                                          1 Antwort Letzte Antwort
                                          1
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          821

                                          Online

                                          32.4k

                                          Benutzer

                                          81.4k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe