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

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

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

      @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');

      AxelF1977 2 Replies Last reply Reply Quote 1
      • 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

                              558
                              Online

                              31.7k
                              Users

                              79.6k
                              Topics

                              1.3m
                              Posts

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