Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Anlegen von States über script in alias.0

    NEWS

    • Wir empfehlen: Node.js 22.x

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker goes Matter ... Matter Adapter in Stable

    Anlegen von States über script in alias.0

    This topic has been deleted. Only users with topic management privileges can see it.
    • Blackmike
      Blackmike @apollon77 last edited by Blackmike

      @apollon77
      javascriptadapter war immer der gleiche, der war schon vor dem controllerUpgrade auf 4.3.3

      Stand war:
      vor dem Upgrade lief js 1.5.14 mit jenigmn javascript adapter, ohne probleme (das war auch das Produktivsystem)

      nach dem Upgrade auf 2.1.0 hats mir alle States zerschlagen, die der Wrapper angefasst hat, also eine ganze menge

      (Ich habe mir angewöhnt schon seit längerem, immer zuerst den JS-Controller uozugraden, system beobachten udn erst dann evtl weitere Adapter nachzuziehen)

      1 Reply Last reply Reply Quote 0
      • apollon77
        apollon77 last edited by

        Seeeehr Strange ... wir überlegen wie wir die Ursache fixen.

        1 Reply Last reply Reply Quote 0
        • apollon77
          apollon77 last edited by

          Hey All, der war echt nice 😉

          Also was passiert ist, ist das Objekte die in Javascript Skripten erzeugt werden quasi noch so ein bissl der "Sandbox" in der sie ausgeführt werden mit sich rumtragen.
          Das war schon immer so. Die ganze "Objekt-Logik" (auch das echte "extendObject") hat im js-controller (und nur da) stattgefunden. Das Objekt wurde serialisiert und zum controller übertragen. Dadurch ist der "komische Teil" quasi abgeschüttelt worden. Deswegen hatte das keine Auswirkung.

          Seit js-controller 2.0 übernimmt die Logik eine Library die vom Adapter direk genutzt wird und die "Datenbank" macht quasi nur noch "get" und "set". Das extend wird also quasi vom Adapter-Prozess gemacht und hier stolpert die "extend"-Funktion jetzt über den Sandbox-Teil im Objekt und arbeitet dadurch anders weil es kein echtes Objekt mehr ist sondern was komisches halt 🙂

          Wir haben jetzt einen Fix dafür. Am Ende sind es aktuell zwei Stellen wo wir etwas geändert haben dafür, es sollte aber reichen wenn Ihr EINE davon nutzt!

          1.) Es gibt eine neue Version der genannten Objects-Library. Jeder der den controller 2.1.0 nach heute 13:30 Uhr installiert hat sollte diese schon haben. Ansonsten kann diese aktualisiert werden: cd /opt/iobroker/node_modules/iobroker.js-controller dann dort npm update iobroker.objects-redis sollte die 1.2.7 der Library installieren. Danach mindesterns den javascript adapter neu starten (am besten gesamten controller)

          2.) Installiert JavaScript vom GitHub. Kommt dann da in die nächste Version rein.

          Ingo

          paul53 1 Reply Last reply Reply Quote 0
          • paul53
            paul53 @apollon77 last edited by

            @apollon77
            Habe Version 1 getestet: Musste mit sudo npm update iobroker.objects-redis installieren. Nach Neustart von ioBroker keine Veränderung: common wird ersetzt, nicht ergänzt.

            apollon77 1 Reply Last reply Reply Quote 0
            • apollon77
              apollon77 @paul53 last edited by apollon77

              @paul53 Hm ... kannst Du mal im "Node_modules" Baum sichen wo ggf diese Lib so alles rumliegt und wleche version installiert ist ... hat die npm ausgabe gezeigt das es getan hat und die 1.2.7 installiert wurde? sonst ggf mal "npm install iobroker.objects-redis@1.2.7" machen ?!

              Ansomsten die einzige Änderung für Variabnte 2 ist: https://github.com/ioBroker/ioBroker.javascript/commit/e5f38b59f119961634eb59c677bfc848ac14bb2b

              0 Apollon77 committed to ioBroker/ioBroker.javascript
              * prevent "sandboxed" objects from being wrong used in extendObject
              paul53 1 Reply Last reply Reply Quote 0
              • paul53
                paul53 @apollon77 last edited by

                @apollon77 sagte:

                hat die npm ausgabe gezeigt das es getan hat und die 1.2.7 installiert wurde?

                Ja.

                Habe inzwischen auch die Änderung in sandbox.js, Zeile 2755 getestet: Mit dieser Änderung funktioniert es wie es soll.

                1 Reply Last reply Reply Quote 0
                • apollon77
                  apollon77 last edited by

                  Ja ich weiss inzwischen auch warum das nicht klappt ... Ein js.controller 2.1.1 ist im Latest für kurzen Check ... Wer mag bitte checken

                  paul53 1 Reply Last reply Reply Quote 0
                  • paul53
                    paul53 @apollon77 last edited by

                    @apollon77
                    Update auf js-controller 2.1.1 (Fixer war notwendig), Änderung in Zeile 2755 sandbox.js rückgängig gemacht, JS-Instanz neu gestartet und getetest: extendObject() funktioniert wie erwartet.

                    1 Reply Last reply Reply Quote 1
                    • Blackmike
                      Blackmike last edited by Blackmike

                      Ich seh den 2.1.1 noch nicht in latest ... wenn ich ihn hab probiere ich auch

                      paul53 1 Reply Last reply Reply Quote 0
                      • paul53
                        paul53 @Blackmike last edited by

                        @Blackmike sagte:

                        Ich seh den 2.1.1 noch nicht in latest

                        Adapterinformationen aktualisieren (Reiter "Adapter").

                        1 Reply Last reply Reply Quote 0
                        • First post
                          Last post

                        Support us

                        ioBroker
                        Community Adapters
                        Donate
                        FAQ Cloud / IOT
                        HowTo: Node.js-Update
                        HowTo: Backup/Restore
                        Downloads
                        BLOG

                        815
                        Online

                        32.0k
                        Users

                        80.4k
                        Topics

                        1.3m
                        Posts

                        states script erzeugen
                        6
                        29
                        1803
                        Loading More Posts
                        • Oldest to Newest
                        • Newest to Oldest
                        • Most Votes
                        Reply
                        • Reply as topic
                        Log in to reply
                        Community
                        Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                        The ioBroker Community 2014-2023
                        logo