Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. [Gelöst] evtl. [Bug] MultiHost JavaScript Adapter - Instanz kann nicht ausgewählt werden

    NEWS

    • Wir empfehlen: Node.js 22.x

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker goes Matter ... Matter Adapter in Stable

    [Gelöst] evtl. [Bug] MultiHost JavaScript Adapter - Instanz kann nicht ausgewählt werden

    This topic has been deleted. Only users with topic management privileges can see it.
    • D
      dusares last edited by

      Habe jetzt die Controller auf beiden Hosts geupdated. Leider hat sich das Fehlerverhalten nicht geändert.

      Auf beiden Raspberries läuft jetzt js-controller 1.2.3 …

      Node auf beiden Raspis 6.11.2.

      JavaScript Adapter 3.5.0

      Beide JavaScript Adapter sind gleichgeschaltet.

      Das Skript wird sofort beim Starten auf die 0. Instanz umgeschaltet ( der Instanz Dropdown springt zurück auf 0).

      Code im Skript ist folgender: (auch wenn ich nicht davon ausgehe, dass das was damit zu tun hat).

      console.log("Door Open Skript");
      exec('/home/pi/dooropen');
      stopScript();
      
      

      Das Ausführen direkt am Terminal auf dem Pi2 funktioniert. Wenn ich den Slave Pi rausnehme und das Skript direkt auf dem Pi als eigener ioBroker ausführe klappt es auch. Nur im Multi Host Modus klappt es nicht 😞

      Irgendwelche Ideen ?

      1 Reply Last reply Reply Quote 0
      • Dutchman
        Dutchman Developer Most Active Administrators last edited by

        was sagt dein log wen du das script auf die andere instanz setzt (evenutell adapter erst auf debug).

        Das verhalten wundert mich da ich ohne probleme die die scripte auf ner anderen instanz abspielen kan bei mir 😕

        Ich sehe beim umsetzen javascript.0 stop script blablabla und dan javascript.1 starte script blablabla

        1 Reply Last reply Reply Quote 0
        • D
          dusares last edited by

          Habe mal ein Video angehängt… mal schauen ob das hilft ...

          Edit: https://www.dropbox.com/s/1awylhw334s6l ... p.mov?dl=0

          Wenn ich den Adapter ändere passiert im Log nichts...

          Habe jetzt noch weiter getestet ... wenn ich noch einen dritten Adapter hinzufüge (auf dem Master). Also folgendes Setup habe:

          Master: JavaScript0. & JavaScript2.

          Slave: JavaScript1.

          Bekomme ich beim Wechsel folgendes Log:

          host.ioBroker-Pi3	2017-12-03 23:22:20.562	info	object change system.adapter.javascript.2
          host.ioBroker-Pi3	2017-12-03 23:21:58.888	warn	Requested repository "undefined" does not exist in config.
          iobroker	2017-12-03 23:21:58.605	info	exit 0
          iobroker	2017-12-03 23:21:58.587	info	host.ioBroker-Pi3 object system.adapter.javascript.2 created
          host.ioBroker-Pi3	2017-12-03 23:21:58.576	info	object change system.adapter.javascript.2
          
          

          Danach aber kann ich auch nicht zum JavaScript2. wechseln. Auch hier springt er immer wieder zum 0.

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

            Wozu dient

            stopScript();
            

            ? Was passiert, wenn Du es auskommentierst ?

            Evtl. hilft es auch, das Skript erst nach Ausführung von exec(…) im Callback zu stoppen.

            exec('/home/pi/dooropen', stopScript);
            
            
            1 Reply Last reply Reply Quote 0
            • D
              dusares last edited by

              @paul53:

              Wozu dient

              stopScript();
              

              ? Was passiert, wenn Du es auskommentierst ?

              Evtl. hilft es auch, das Skript erst nach Ausführung von exec(…) im Callback zu stoppen.

              exec('/home/pi/dooropen', stopScript);
              
              ```` `  
              

              Mit dem StopScript() möchte ich nur verhindern dass das Skript dauerhaft auf Aktiv im ioBroker angezeigt wird.

              Wenn ich das auskommentiere bleibt das Skript einfach weiterhin aktiv. Gerade extra nochmal ausprobiert.

              Wenn ich es als CallBack einfüge, ist der Ablauf wieder wie vorher -> Sprung auf Instanz 0 und es passiert nichts.

              Das Skript selber funktioniert wie gesagt einwandfrei, wenn ich es auf einer eigenen (nicht MultiHost) Instanz laufen lasse.

              Aus mir unverständlichen Gründen springt einfach immer wenn ich eine andere JavaScript Instanz auswähle der Instanz DropDown wieder auf 0 und führt das Skript in Instanz 0 aus 😞

              Habe ja vorhin sogar alle JS Adapter gelöscht und neu eingefügt. Und auch die Skripte … hat auch nichts geholfen :S

              1 Reply Last reply Reply Quote 0
              • D
                dusares last edited by

                Update:

                Habe jetzt die Adapter deinstalliert und getauscht (also 0 auf dem Slave und 1 auf dem Master).

                Nun ist es so dass die Skripte auf dem Slave korrekt laufen (Tür Summer geht), aber auf dem Master springen sie immer wieder auf den 0. 😞

                Habe dann auch noch den neuen ioBroker.Admin installiert (3.0.x), auch das hat nicht geholfen.

                Was ich jetzt noch gemerkt habe, sowohl im Safari als auch im Chrome wird die Instanzauswahl nach dem Tab Wechsel (Skripte -> Szenen zB) nicht gespeichert…

                1 Reply Last reply Reply Quote 0
                • D
                  dusares last edited by

                  Zusammenfassung, da ich wohl im Moment gar nicht mehr weiter weiß.

                  Multi Host Setup:

                  Raspberry Pi 3 -> Master

                  Raspberry Pi 2 -> Slave

                  JavaScript / Blockly Engine -> 3.5.0

                  Node v6.10.3

                  JavaScript Controller 1.2.3

                  ioBroker Admin 3.0.1

                  Fehler: Ich brauche zwei JavaScript Controller um jeweils lokale JavaScripts ausführen zu können (c++ Programme). Getrennt funktionieren die Skripte auf den Pi's.

                  Sobald ich allerdings MultiHost einstelle ,oder auf einem der beiden Pis zwei JS Adapter erstelle kann ich die Instanzen nicht wechseln (springt sofort zurück auf den 0 Adapter egal welcher das ist und führt es dann dort aus).

                  Es hat also scheinbar nichts mit MultiHost und nichts mit der Hardware o.Ä. zu tun… die Adapter sind auf dem neusten Stand. Eigentlich müsste das doch eine Standard Aktion sein, dass man mehrere JS Adapter hat ... 😢 😢 😢 😢

                  Getestet mit (auf unterschiedlicher Hardware):

                  Chrome für Mac

                  Safari

                  Microsoft Edge

                  Chrome für Android

                  Video: https://www.dropbox.com/s/1awylhw334s6l … p.mov?dl=0

                  1 Reply Last reply Reply Quote 0
                  • D
                    dusares last edited by

                    Gelöst:

                    Habe den JavaScript Adapter auf beiden Instanzen auf 3.4.0 zurückgesetzt …. jetzt geht es ohne Probleme.

                    Ich setze mal den Titel auf Gelöst / Bug ... evtl interessiert es ja doch noch einen Entwickler zur Nachforschung 🙂

                    1 Reply Last reply Reply Quote 0
                    • Dutchman
                      Dutchman Developer Most Active Administrators last edited by

                      @dusares:

                      Ich setze mal den Titel auf Gelöst / Bug … evtl interessiert es ja doch noch einen Entwickler zur Nachforschung 🙂 `

                      Könntest du dafür auf github ein issue erstellen?

                      –-----------------------

                      Send from mobile device

                      1 Reply Last reply Reply Quote 0
                      • D
                        dusares last edited by

                        @Dutchman:

                        @dusares:

                        Ich setze mal den Titel auf Gelöst / Bug … evtl interessiert es ja doch noch einen Entwickler zur Nachforschung 🙂 `

                        Könntest du dafür auf github ein issue erstellen?

                        –-----------------------

                        Send from mobile device `

                        Klar, done! 🙂

                        https://github.com/ioBroker/ioBroker.ja … /issues/55

                        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

                        630
                        Online

                        32.0k
                        Users

                        80.3k
                        Topics

                        1.3m
                        Posts

                        3
                        17
                        1785
                        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