Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Adapter mit Script ein/ausschalten

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Adapter mit Script ein/ausschalten

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

      Habe das gerade mal nachgestellt.

      Bei mir funktioniert es genau so.

      var obj = getObject("system.adapter.zwave.0");
      obj.common.enabled = false; // Adapter ausschalten
      setObject("system.adapter.zwave.0", obj);
      //Programm Ende
      

      Ergebnis im Log:

      ! ````
      host.rasp31 2017-01-08 16:45:12.070 info instance system.adapter.zwave.0 terminated with code null ()
      host.rasp31 2017-01-08 16:45:12.069 warn instance system.adapter.zwave.0 terminated due to SIGSEGV
      zwave.0 2017-01-08 16:45:12.054 info terminating
      host.rasp31 2017-01-08 16:45:10.023 info stopInstance system.adapter.zwave.0 killing pid 12541
      host.rasp31 2017-01-08 16:45:10.023 info stopInstance system.adapter.zwave.0
      host.rasp31 2017-01-08 16:45:10.019 info "system.adapter.zwave.0" disabled
      host.rasp31 2017-01-08 16:45:10.011 info object change system.adapter.zwave.0

      
      Und mit true lies sich der Adapter auch wieder einschalten. Log:
      
      >! ````
      host.rasp31	2017-01-08 16:45:35.230	info	instance system.adapter.zwave.0 started with pid 8048
      host.rasp31	2017-01-08 16:45:35.201	info	"system.adapter.zwave.0" enabled
      host.rasp31	2017-01-08 16:45:35.200	info	object change system.adapter.zwave.0
      

      Was steht denn bei Dir im Log?

      1 Reply Last reply Reply Quote 0
      • Jey Cee
        Jey Cee Developer last edited by

        Hallo Paulchen,

        meiner Meinung nach ist da gar nichts falsch. Ich habe das script bei mir getestet und es funktioniert.

        Demnach liegt der Fehler Wahrscheinlich am Auslöser.

        Das ganze Script zu sehen oder eine detalierte Beschreibung wie du den fetzen code verwendest hilft anderen dir zu helfen.

        Gruß

        Jey Cee

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

          Das steht im Log.

          javascript.0 2017-01-08 16:57:04.292 info script.js.Adapter_RPI_Ausschalten: registered 0 subscriptions and 0 schedules

          javascript.0 2017-01-08 16:57:04.291 error Function "setObject" is not allowed. Use adapter settings to allow it.

          javascript.0 2017-01-08 16:57:04.286 info Start javascript script.js.Adapter_RPI_Ausschalten

          Sieht wohl so aus, dass nicht alle Adapter das mit sich machen lassen.

          Edit:

          Hab es jetzt mal bei 4 Adaptern ausprobiert. Bei mir ist es immer "not allowed".

          Hab nichts gefunden wo ich das ändern könnte.

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

            @Jey Cee:

            Hallo Paulchen,

            meiner Meinung nach ist da gar nichts falsch. Ich habe das script bei mir getestet und es funktioniert.

            Demnach liegt der Fehler Wahrscheinlich am Auslöser.

            Das ganze Script zu sehen oder eine detalierte Beschreibung wie du den fetzen code verwendest hilft anderen dir zu helfen.

            Gruß

            Jey Cee `

            Das ist das ganze Script.

            Wie schon geschrieben und aus dem Log ersichtlich lassen es nicht alle

            Adapter zu, zumindest bei mir.

            Wenn noch jemand Helfen kann, gerne, bis dahin Danke für eure Hilfe.

            1 Reply Last reply Reply Quote 0
            • Jey Cee
              Jey Cee Developer last edited by

              Schau mal in die Einstellungen vom Javascript Adapter. Da gibt es eine Option für setObject.

              Sollte angehackt sein.

              282_setobject.png

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

                Aaahhhh,

                was so ein kleiner Hacken alles ausmachen kann.

                Jetzt funktioniert es auch bei mir.

                Vielen Dank.

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

                  Das Script hat gleich nach dem Starten seine Arbeit ja getan.

                  Es ist aber ja immer noch am laufen.

                  Kann man das Script sich selbstständig stoppen lassen?

                  Denn wenn ich ein Script habe um den Adapter wieder zu starten,

                  müsste ich ja erst wieder per Hand das Stop-Script anhalten.

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

                    @Paulchen67:

                    Das Script hat gleich nach dem Starten seine Arbeit ja getan.

                    Es ist aber ja immer noch am laufen.

                    Kann man das Script sich selbstständig stoppen lassen?

                    Denn wenn ich ein Script habe um den Adapter wieder zu starten,

                    müsste ich ja erst wieder per Hand das Stop-Script anhalten. `

                    du kannst doch auch scripte ein/ausschalten per variablen aenderung ?

                    Die stehen in javascript.0 ==> ordner ==> script und dan value true oder falsch

                    oder versteh ich dich jetzt falsch ?

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

                      Ja, hab es jetzt mal so gelöst:
                      ` > // Holle die Werte des ganzen Adapters als Variable obj

                      var obj = getObject("system.adapter.rpi.0"/rpi/);

                      //Setze den Wert Enabled im Adapter auf false

                      obj.common.enabled = false;

                      //Schreibe den geänderten Wert von Enabled zurück in den Adapter

                      setObject("system.adapter.rpi.0"/rpi/, obj);

                      //Schalte das Script nach 5 Sekunden wieder aus

                      setStateDelayed("javascript.0.scriptEnabled.Adapter_RPI_Ausschalten"/scriptEnabled.Adapter_RPI_Ausschalten/, false, 5000);

                      //Programm Ende `
                      Das funktioniert schon mal.

                      Könnte das auch funktionieren?
                      ` > //Virtueller Taster an der CCU startet die Funktion

                      on({id: "hm-rpc.0.BidCoS-RF.10.PRESS_SHORT"}, function (obj) {

                      // Holle die Werte des ganzen Adapters als Variable obj1

                      var obj1 = getObject("system.adapter.rpi.0");

                      //Wenn der Wert von Enabled auf false steht Setze ihn auf true

                      if (obj1.common.enabled === false) {

                      setObject("system.adapter.rpi.0.Enabled", true);

                      }

                      //Wenn der Wert von Enabled auf true steht Setze ihn auf false

                      if (obj1.common.enabled === true) {

                      setObject("system.adapter.rpi.0.Enabled", false);

                      }

                      });

                      //Programm Ende `
                      Oder ist das Script Schrott?

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

                        Mal schnell drüber gelesen aber sieht ok aus…

                        Wegen der Script Geschichte, ist doch eigentlich egal ob es an steht?

                        Er lauscht ja nur und wenn kein event von Button 10 kommt passiert auch nichts.

                        Sent from my iPhone using Tapatalk

                        1 Reply Last reply Reply Quote 0
                        • Jey Cee
                          Jey Cee Developer last edited by

                          Das script sieht gut aus.

                          Nur was mir noch immer nicht klar ist, wann soll den der Adapter deaktiviert werden? Also was ist das Kriterium zum deaktivieren und was zum aktivieren?

                          Möglicherweise gibt es noch einen anderen Lösungsweg.

                          Gesendet von meinem m8 mit Tapatalk

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

                            @Jey Cee:

                            Das script sieht gut aus.

                            Nur was mir noch immer nicht klar ist, wann soll den der Adapter deaktiviert werden? Also was ist das Kriterium zum deaktivieren und was zum aktivieren?

                            Möglicherweise gibt es noch einen anderen Lösungsweg.

                            Gesendet von meinem m8 mit Tapatalk `

                            Ich hab einen Adapter der immer mal wieder hängt.

                            Wenn man ihn dann anstößt läuft er wieder für ne ganze Weile (1-3 Tage)

                            Eine Kontrolanzeige zeigt mir seinen Status an.

                            1 Reply Last reply Reply Quote 0
                            • Jey Cee
                              Jey Cee Developer last edited by

                              Und die kontrolanzeige läuft außerhalb von iobroker und/oder nicht in javascript?

                              Sonst würde ich direkt die Anzeige als trigger nutzen.

                              Gesendet von meinem m8 mit Tapatalk

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

                              Support us

                              ioBroker
                              Community Adapters
                              Donate

                              977
                              Online

                              31.7k
                              Users

                              79.8k
                              Topics

                              1.3m
                              Posts

                              4
                              14
                              4473
                              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