Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Scripte laufen nicht mehr seit Update auf JS-Controler 3.0x

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    Scripte laufen nicht mehr seit Update auf JS-Controler 3.0x

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

      @AxelF1977 sagte in Scripte laufen nicht mehr seit Update auf JS-Controler 3.0x:

      System.Updates

      Das Script auch bearbeitet?

      1 Reply Last reply Reply Quote 0
      • AxelF1977
        AxelF1977 @J.A.R.V.I.S. last edited by AxelF1977

        @wendy2702 sagte in Scripte laufen nicht mehr seit Update auf JS-Controler 3.0x:

        @AxelF1977 sagte in Scripte laufen nicht mehr seit Update auf JS-Controler 3.0x:

        System.Updates

        Das Script auch bearbeitet?

        In dem Script habe ich diese stellen bearbeitet, wie von @J-A-R-V-I-S empfohlen

        @AxelF1977 ersetz im ersten Skript mal bitte alle var out = stdout.toString(); durch var out = stdout ? stdout.toString() : '';

        Im Script selber gibt es folgenden error

        21:47:25.279	error	javascript.0 (30954) script.js.System.Updates: TypeError: Cannot read property 'toString' of null
        21:47:25.279	error	javascript.0 (30954) at script.js.System.Updates:381:59
        21:47:25.323	error	host.ioBrokerPC Caught by controller[0]: at script.js.System.Updates:381:59
        

        01ef1a01-9700-4a4b-a08f-50b61e07f445-image.png

        ÜBRIGENS: sobald dieses Script Updates deaktiviert ist, läuft alles. Wahnsinn, nur wegen diesem einen Script.

        Das kam hier aus dem Forum

        1 Reply Last reply Reply Quote 0
        • J.A.R.V.I.S.
          J.A.R.V.I.S. Developer @AxelF1977 last edited by

          @AxelF1977 sagte in Scripte laufen nicht mehr seit Update auf JS-Controler 3.0x:

          stdout.match(/^online: (.+)/gm).toString()

          Dann ändere diese Stelle bitte auch noch ab

          var aktivRepoUrl = stdout.match(/^online: (.+)/gm).toString().replace(aktivRepo+": ","");
          

          in

          var aktivRepoUrl = (stdout.match(/^online: (.+)/gm) || '').toString().replace(aktivRepo+": ","");
          
          AxelF1977 1 Reply Last reply Reply Quote 1
          • AxelF1977
            AxelF1977 @J.A.R.V.I.S. last edited by

            @J-A-R-V-I-S sagte in Scripte laufen nicht mehr seit Update auf JS-Controler 3.0x:

            @AxelF1977 sagte in Scripte laufen nicht mehr seit Update auf JS-Controler 3.0x:

            stdout.match(/^online: (.+)/gm).toString()

            Dann ändere diese Stelle bitte auch noch ab

            var aktivRepoUrl = stdout.match(/^online: (.+)/gm).toString().replace(aktivRepo+": ","");
            

            in

            var aktivRepoUrl = (stdout.match(/^online: (.+)/gm) || '').toString().replace(aktivRepo+": ","");
            

            Hab ich gemacht, aber Fehler bleiben immer noch bestehen. Das ist ja zum verrückt werden mit dem Script. Ich finde es nur gerade nicht auf die Schnelle im Forum wieder.

            22:11:24.239	error	javascript.0 (12632) script.js.System.Updates: TypeError: Cannot read property '1' of null
            22:11:24.239	error	javascript.0 (12632) at script.js.System.Updates:412:39
            22:11:24.288	error	host.ioBrokerPC Caught by controller[0]: at script.js.System.Updates:412:39
            
            J.A.R.V.I.S. 1 Reply Last reply Reply Quote 0
            • J.A.R.V.I.S.
              J.A.R.V.I.S. Developer @AxelF1977 last edited by J.A.R.V.I.S.

              @AxelF1977 sagte in Scripte laufen nicht mehr seit Update auf JS-Controler 3.0x:

              script.js.System.Updates:412:39

              Hier steht auch immer die Zeile, in der der Fehler auftritt, in diesem Fall Zeile 412.

              Setz da mal folgendes hin, um den Fehler abzufangen:

              var arrInstall = /: (\S+) +- (\d+\.\d+\.\d+)/g.exec(arrAdapter[i]);
               
              if (arrInstall && arrInstall.length >= 3) {
                          installJSON.push({
                              adapter:    arrInstall[1],
                              version:    arrInstall[2]
                          });
              } 
              

              Mir scheint als hätte da jemand ein Skript geschrieben, im guten Glauben, dass er immer die richtigen Werte erhält und deshalb nicht prüft.

              Naja, im Js-controller 3 werden die Fehler nicht mehr ignoriert.

              AxelF1977 1 Reply Last reply Reply Quote 2
              • AxelF1977
                AxelF1977 @J.A.R.V.I.S. last edited by

                @J-A-R-V-I-S sagte in Scripte laufen nicht mehr seit Update auf JS-Controler 3.0x:

                @AxelF1977 sagte in Scripte laufen nicht mehr seit Update auf JS-Controler 3.0x:

                script.js.System.Updates:412:39

                Hier steht auch immer die Zeile, in der der Fehler auftritt, in diesem Fall Zeile 412.

                Setz da mal folgendes hin, um den Fehler abzufangen:

                var arrInstall = /: (\S+) +- (\d+\.\d+\.\d+)/g.exec(arrAdapter[i]);
                 
                if (arrInstall && arrInstall.length >= 3) {
                            installJSON.push({
                                adapter:    arrInstall[1],
                                version:    arrInstall[2]
                            });
                } 
                

                Mir scheint als hätte da jemand ein Skript geschrieben, im guten Glauben, dass er immer die richtigen Werte erhält und deshalb nicht prüft.

                Naja, im Js-controller 3 werden die Fehler nicht mehr ignoriert.

                Das hat auf jeden Fall was verändert. Mein anderen Scripte gehen jetzt, auch mit js-controller 3. Wie als wenn ich das Script deaktiviert habe. Top, Danke.

                Eine kleine Ausgabe hat das Script noch. Nicht mehr im Log, "nur noch" im Script selber

                22:24:15.728	warn	javascript.0 (28978) script.js.System.Updates: []
                22:24:15.729	warn	javascript.0 (28978) script.js.System.Updates: keine Daten für Adapter in der Installation vorhanden
                22:24:15.730	warn	javascript.0 (28978) at script.js.System.Updates:354:9
                22:24:15.730	error	javascript.0 (28978) script.js.System.Updates: setForeignState: undefined is not a valid state value
                22:24:15.730	warn	javascript.0 (28978) script.js.System.Updates: Anzahl Adapter mit Fehler (Cannot read or parse): 0
                
                AxelF1977 J.A.R.V.I.S. 2 Replies Last reply Reply Quote 0
                • AxelF1977
                  AxelF1977 @AxelF1977 last edited by

                  Ich verneige mich an dieser Stelle vor dem unglaublichen Wissen das hier versammelt ist.

                  Danke für Eure Hilfe.

                  Echt der Wahnsinn

                  Garfonso 1 Reply Last reply Reply Quote 0
                  • joergfrde
                    joergfrde @AxelF1977 last edited by

                    @AxelF1977 Ich habe auch ein Problem mit meinen Scripten. Keine Benachrichtung durch Telegram. Ich habe allerdings noch die 10ner Version von node und nodejs. Telegram hat das neueste Update.

                    1 Reply Last reply Reply Quote 0
                    • J.A.R.V.I.S.
                      J.A.R.V.I.S. Developer @AxelF1977 last edited by J.A.R.V.I.S.

                      @AxelF1977 sagte in Scripte laufen nicht mehr seit Update auf JS-Controler 3.0x:

                      22:24:15.730 warn javascript.0 (28978) at script.js.System.Updates:354:9
                      22:24:15.730 error javascript.0 (28978) script.js.System.Updates: setForeignState: undefined is not a valid state value

                      Dort wird versucht ein undefined in einen State zu schreiben, aus diesem Grund wird der Fehler geworfen.

                      Je nachdem, ob du den Wert ersetzen möchtest, oder einfach bei dem lässt, der er derzeit ist, hast du zwei Möglichkeiten.

                      Wert auch bei undefined (allerdings dann leer) neu schreiben:

                      setState(idAdapterNotInRepoJSON,writeJson(notInRepoJson || {}));
                      

                      Wert bei Fehler beim alten Wert lassen:

                      notInRepoJson && setState(idAdapterNotInRepoJSON,writeJson(notInRepoJson));
                      
                      1 Reply Last reply Reply Quote 0
                      • Garfonso
                        Garfonso Developer @AxelF1977 last edited by

                        @AxelF1977
                        Irgendwie ist mir nicht ganz klar, warum deine Probleme mit dem js-controller Update zu tun haben sollten... 😞 In deinen Logs ist kein Crash des javascript Adapters zu sehen, nur, dass er die Fehler in deinen Skripten moniert. Das sollte aber unabhängig von der js-controller Version sein (die Fehler in deinen Skripten müssen in jeder Versionskonstellation zu Problemen geführt haben).
                        Könntest du da nochmal in deine alten Logs gucken, ob der javascript adapter tatsächlich einmal abgestürzt ist? (Gerne kannst du mir das Log auch als Datei schicken, dann guck ich es mir an).

                        AxelF1977 1 Reply Last reply Reply Quote 0
                        • AxelF1977
                          AxelF1977 @Garfonso last edited by

                          @Garfonso sagte in Scripte laufen nicht mehr seit Update auf JS-Controler 3.0x:

                          @AxelF1977
                          Irgendwie ist mir nicht ganz klar, warum deine Probleme mit dem js-controller Update zu tun haben sollten... 😞 In deinen Logs ist kein Crash des javascript Adapters zu sehen, nur, dass er die Fehler in deinen Skripten moniert. Das sollte aber unabhängig von der js-controller Version sein (die Fehler in deinen Skripten müssen in jeder Versionskonstellation zu Problemen geführt haben).
                          Könntest du da nochmal in deine alten Logs gucken, ob der javascript adapter tatsächlich einmal abgestürzt ist? (Gerne kannst du mir das Log auch als Datei schicken, dann guck ich es mir an).

                          Vielen Dank.

                          Der aktuelle Log ist jetzt sauber. Die Veränderungen an den Scripten, bei denen mir @J-A-R-V-I-S geholfen hat, haben am Ende der erhofften Erfolg gebracht. @Thomas-Braun hat mir geholfen das System zu bereinigen.
                          Am Ende werden es alle Maßnahmen gewesen sein.

                          Du hattest mir das auch logisch erklärt, wie der neue Controller mit Fehlern umgeht.

                          jedenfalls läuft gerade alles wie es soll

                          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

                          413
                          Online

                          31.9k
                          Users

                          80.1k
                          Topics

                          1.3m
                          Posts

                          blockly javascript javascript adapter js-controler 3.0x skripte update
                          14
                          126
                          8619
                          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