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.
    • AxelF1977
      AxelF1977 @J.A.R.V.I.S. last edited by AxelF1977

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

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

      Und ersetze im zweiten mal die erste Zeile durch const axios = require('axios');

      Erledigt,

      folgende error zeigt der Log noch, aber es werden weniger

      javascript.0	2020-05-03 21:18:00.732	error	(6892) at Process.ChildProcess._handle.onexit (internal/child_process.js:259:5)
      javascript.0	2020-05-03 21:18:00.732	error	(6892) at maybeClose (internal/child_process.js:982:16)
      javascript.0	2020-05-03 21:18:00.732	error	(6892) at ChildProcess.EventEmitter.emit (domain.js:448:20)
      javascript.0	2020-05-03 21:18:00.732	error	(6892) at ChildProcess.emit (events.js:198:13)
      javascript.0	2020-05-03 21:18:00.731	error	(6892) at ChildProcess.exithandler (child_process.js:285:7)
      javascript.0	2020-05-03 21:18:00.731	error	(6892) at script.js.System.Updates:381:59
      javascript.0	2020-05-03 21:18:00.730	error	(6892) script.js.System.Updates: TypeError: Cannot read property 'toString' of null
      javascript.0	2020-05-03 21:16:28.340	error	(3977) at Pipe._handle.close (net.js:607:12)
      javascript.0	2020-05-03 21:16:28.340	error	(3977) at Socket.EventEmitter.emit (domain.js:448:20)
      javascript.0	2020-05-03 21:16:28.340	error	(3977) at Socket.emit (events.js:198:13)
      javascript.0	2020-05-03 21:16:28.340	error	(3977) at Socket.stream.socket.on (internal/child_process.js:389:11)
      javascript.0	2020-05-03 21:16:28.340	error	(3977) at maybeClose (internal/child_process.js:982:16)
      javascript.0	2020-05-03 21:16:28.340	error	(3977) at ChildProcess.EventEmitter.emit (domain.js:448:20)
      javascript.0	2020-05-03 21:16:28.340	error	(3977) at ChildProcess.emit (events.js:198:13)
      javascript.0	2020-05-03 21:16:28.340	error	(3977) at ChildProcess.exithandler (child_process.js:285:7)
      javascript.0	2020-05-03 21:16:28.340	error	(3977) at script.js.System.Updates:381:59
      javascript.0	2020-05-03 21:16:28.340	error	(3977) script.js.System.Updates: TypeError: Cannot read property 'toString' of null
      javascript.0	2020-05-03 21:16:12.023	error	(3405) at Process.ChildProcess._handle.onexit (internal/child_process.js:259:5)
      javascript.0	2020-05-03 21:16:12.023	error	(3405) at maybeClose (internal/child_process.js:982:16)
      javascript.0	2020-05-03 21:16:12.022	error	(3405) at ChildProcess.EventEmitter.emit (domain.js:448:20)
      javascript.0	2020-05-03 21:16:12.022	error	(3405) at ChildProcess.emit (events.js:198:13)
      javascript.0	2020-05-03 21:16:12.022	error	(3405) at ChildProcess.exithandler (child_process.js:285:7)
      javascript.0	2020-05-03 21:16:12.022	error	(3405) at script.js.System.Updates:381:59
      javascript.0	2020-05-03 21:16:12.022	error	(3405) script.js.System.Updates: TypeError: Cannot read property 'toString' of null
      
      wendy2702 1 Reply Last reply Reply Quote 0
      • 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

                            917
                            Online

                            31.9k
                            Users

                            80.1k
                            Topics

                            1.3m
                            Posts

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