Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. Instanz per Script neu starten

NEWS

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    9
    1
    95

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    24
    1
    1.4k

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    9.3k

Instanz per Script neu starten

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
19 Beiträge 11 Kommentatoren 15.4k Aufrufe 7 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • P Offline
    P Offline
    pix
    schrieb am zuletzt editiert von
    #2

    Hallo,

    hab ich hier mal gemacht:

    viewtopic.php?f=21&t=13193&p=138842&hil … en#p138842

    Pix

    ioBroker auf Ubuntu in Proxmox (früher Mac mini (bis OS X 10.12.6 Sierra), VIS via iOS; angeschlossen: Homematic CCU2, Homepilot 1, ConBee II, einige Wemos, Sonos, Unifi CK+Protect, Homekit, Homebridge; KEIN blockly! Github-Profil

    1 Antwort Letzte Antwort
    0
    • paul53P Offline
      paul53P Offline
      paul53
      schrieb am zuletzt editiert von paul53
      #3

      Zur Überwachung können entweder der Datenpunkt "system.adapter.sonoff.0.alive" oder der Datenpunkt "system.adapter.sonoff.0.connected" dienen, was zu testen wäre (oder vorher loggen). Mit "alive" könnte es dann so funktionieren (nicht getestet):

      const idInst = 'system.adapter.sonoff.0';
      const idAlive = idInst + '.alive';
      const idAuto = 'javascript.0.Autostart_Sonoff'; // Datenpunkt zur Freigabe von Autostart, da sonst nicht mehr per Hand zu stoppen
      
      var obj = getObject(idInst);
      
      on({id: idAlive, change: 'ne', val: false}, function() {
         if(getState(idAuto).val) {
            obj.common.enabled = false;
            setObject(idInst, obj, function() {
               obj.common.enabled = true;
               setObject(idInst, obj);
            });
         }   
      });
      

      In der Konfiguration der Javascript-Instanz muss setObject freigegeben werden !

      Alternativ zur Autostart-Freigabe per Datenpunkt kann zum manuellen Stopp der Instanz auch das Script vorher gestoppt werden.

      Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
      Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

      1 Antwort Letzte Antwort
      0
      • J Offline
        J Offline
        Jan1
        schrieb am zuletzt editiert von
        #4

        Man kann doch jede Instanz direkt über den IOBroker neu starten lassen wie man Lust und Laune hat. Wieso sollte man da noch extra ein Script dazu verwenden wollen, wenn diese Funktion schon direkt implementiert ist? Man muss dazu nur unter Instanzen den Expertenmodus aktivieren.

        1 Antwort Letzte Antwort
        -1
        • DutchmanD Offline
          DutchmanD Offline
          Dutchman
          Developer Most Active Administrators
          schrieb am zuletzt editiert von
          #5

          @Jan1:

          Man kann doch jede Instanz direkt über den IOBroker neu starten lassen wie man Lust und Laune hat. Wieso sollte man da noch extra ein Script dazu verwenden wollen, wenn diese Funktion schon direkt implementiert ist? Man muss dazu nur unter Instanzen den Expertenmodus aktivieren. `

          Um es zu automtisieren oder per vis aus zu führen zB…


          Send from mobile device

          Das schöne ios hat Auto Korrektur zum k****

          Wer Schreibfehler findet darf sie behalten oder auf eBay verkaufen, mindest Umsatz 10% für die community

          1 Antwort Letzte Antwort
          0
          • J Offline
            J Offline
            Jan1
            schrieb am zuletzt editiert von
            #6

            Ah jetzt hab ich's verstanden, ein Neustart nur wenn die Instanz abgestürzt ist. OK, mach dann Sinn.

            1 Antwort Letzte Antwort
            0
            • BaumertB Offline
              BaumertB Offline
              Baumert
              schrieb am zuletzt editiert von
              #7

              Hallo, vielen Dank für die Rückmeldungen - ich werde es testen und mich dann wieder melden.

              Grüße Baumert

              1 Antwort Letzte Antwort
              0
              • metaxaM Online
                metaxaM Online
                metaxa
                schrieb am zuletzt editiert von
                #8

                @Jan1:

                Man kann doch jede Instanz direkt über den IOBroker neu starten lassen wie man Lust und Laune hat. Wieso sollte man da noch extra ein Script dazu verwenden wollen, wenn diese Funktion schon direkt implementiert ist? Man muss dazu nur unter Instanzen den Expertenmodus aktivieren. `

                Also ich finde im Expertenmodus keine passende Einstellung. Kann man mir das bitte zeigen? (autom. Neustart nach Absturz) 488_instanzen_expertenmodus.jpg
                Danke im Voraus!

                mxa

                1 Antwort Letzte Antwort
                0
                • DutchmanD Offline
                  DutchmanD Offline
                  Dutchman
                  Developer Most Active Administrators
                  schrieb am zuletzt editiert von
                  #9

                  Im experten modus gibt es keine option zum Neustart mach Absturz nur cron alle x Zeit Neustart

                  Sent from my iPhone using Tapatalk

                  1 Antwort Letzte Antwort
                  0
                  • DiginixD Offline
                    DiginixD Offline
                    Diginix
                    schrieb am zuletzt editiert von
                    #10

                    Ich starte bei mir mittels exec in Blockly Instanzen bei Bedarf neu.
                    6549_adapter_restart.jpg

                    Es muss ja nicht zwingend dauerhaft per Cron sein. Der exec Block sitzt natürlich in einem Skript mit Trigger und Bedingungen.

                    ..:: So long! Tom ::..

                    NUC7i3 (Ubuntu Proxmox VM) | Echo Dots 2+3. Gen | Xiaomi Sensoren | Mi Robot 1S | Yeelight | Sonoff | Shelly | H801 RGB | Gosund SP1 | NodeMCU+ESP32 | Kostal Plenticore PV+BYD | openWB

                    ostseereiterO R 2 Antworten Letzte Antwort
                    4
                    • DiginixD Diginix

                      Ich starte bei mir mittels exec in Blockly Instanzen bei Bedarf neu.
                      6549_adapter_restart.jpg

                      Es muss ja nicht zwingend dauerhaft per Cron sein. Der exec Block sitzt natürlich in einem Skript mit Trigger und Bedingungen.

                      ostseereiterO Offline
                      ostseereiterO Offline
                      ostseereiter
                      schrieb am zuletzt editiert von ostseereiter
                      #11

                      @Diginix sagte in Instanz per Script neu starten:

                      Ich starte bei mir mittels exec in Blockly Instanzen bei Bedarf neu.
                      Hallo Freunde,
                      Hier wurde ja schon lange nichts mehr geschrieben Folgendes ich nehme meinen Onkyo-Receiver wenn ich diesen nicht brauche vom Strom. So weit so gut. Starte ich diesen dann kommt leider erst nach einen Neustart des Adapters eine Verbindung zu Stande.

                      Screenshot (151).png

                      Bekommt man den Neustart nicht in ein Script eingebunden?Das mit den exec Block habe ich nicht begriffen.

                      Gruß OSR

                      Plattform
                      Linux x64 CPUs2 AMD G-T56N Processor 1646 MHz 8GB RAM

                      DiginixD 1 Antwort Letzte Antwort
                      1
                      • ostseereiterO ostseereiter

                        @Diginix sagte in Instanz per Script neu starten:

                        Ich starte bei mir mittels exec in Blockly Instanzen bei Bedarf neu.
                        Hallo Freunde,
                        Hier wurde ja schon lange nichts mehr geschrieben Folgendes ich nehme meinen Onkyo-Receiver wenn ich diesen nicht brauche vom Strom. So weit so gut. Starte ich diesen dann kommt leider erst nach einen Neustart des Adapters eine Verbindung zu Stande.

                        Screenshot (151).png

                        Bekommt man den Neustart nicht in ein Script eingebunden?Das mit den exec Block habe ich nicht begriffen.

                        DiginixD Offline
                        DiginixD Offline
                        Diginix
                        schrieb am zuletzt editiert von
                        #12

                        @ostseereiter Was für ein Skript?
                        Und was soll dein Screenshot zeigen?

                        ..:: So long! Tom ::..

                        NUC7i3 (Ubuntu Proxmox VM) | Echo Dots 2+3. Gen | Xiaomi Sensoren | Mi Robot 1S | Yeelight | Sonoff | Shelly | H801 RGB | Gosund SP1 | NodeMCU+ESP32 | Kostal Plenticore PV+BYD | openWB

                        1 Antwort Letzte Antwort
                        0
                        • S Offline
                          S Offline
                          Superdad
                          schrieb am zuletzt editiert von
                          #13

                          Ich hatte mir das Script von @pix genommen und meine Datenpunkte eingetragen.
                          Dann in Vis einen Button anlegen.
                          Und bei Bedarf draufklicken.

                          /* tuya adapter neu starten
                          {1}
                          erzeugt Objekt, das in VIS geschaltet werden kann
                          Schaltung triggert Neustart eines Adapters
                          {1}
                          28.03.2018 erstellt von pix
                          {1}
                          */
                          
                          const logging = true; // (true;false) Logausgabe zentral schalten, da 5minütlich ein Mehrzeiler geloggt wird.
                          const instanz = "javascript." + instance;
                          const fC = false; // force Create
                          const idSchalter = instanz + ".tuya.Adapter.Schalter";
                          const adapter = "tuya.0"; // Name und Instanz des Adapters
                          
                          // Ab hier nix mehr ändern
                          
                          if (logging) log("Skript " + name + " in der Instanz " + instance + " gestartet");
                          var idAdapter = "system.adapter." + adapter;
                          
                          createState(idSchalter, false, fC, {
                              name: adapter + " Adapter neu starten", 
                              type: "boolean", 
                              desc: "Schaltet den <" + adapter +  "> Adapter per Skript zB aus VIS",
                              role: "switch"
                          });
                          
                          // Neustart triggern
                          
                          on({
                              id: idSchalter,
                              change: "ne",
                              from: "system.adapter.web.0" // Schaltung nur aus VIS möglich
                          }, function (dpobj) {
                              var obj = getObject(idAdapter);
                              if (dpobj.state.val) {
                                  obj.common.enabled = true;  // Adapter einschalten
                              } else if (!dpobj.state.val) {
                                  obj.common.enabled = false;  // Adapter ausschalten
                              }
                              setObject(idAdapter, obj);
                              if (logging) log("Adapter <" + adapter + "> wurde " + ((obj.common.enabled) ? "ein" : "aus") + "geschaltet");
                          });
                          

                          CCU3

                          iOBroker auf IntelNUC Proxmox

                          ostseereiterO 1 Antwort Letzte Antwort
                          2
                          • S Superdad

                            Ich hatte mir das Script von @pix genommen und meine Datenpunkte eingetragen.
                            Dann in Vis einen Button anlegen.
                            Und bei Bedarf draufklicken.

                            /* tuya adapter neu starten
                            {1}
                            erzeugt Objekt, das in VIS geschaltet werden kann
                            Schaltung triggert Neustart eines Adapters
                            {1}
                            28.03.2018 erstellt von pix
                            {1}
                            */
                            
                            const logging = true; // (true;false) Logausgabe zentral schalten, da 5minütlich ein Mehrzeiler geloggt wird.
                            const instanz = "javascript." + instance;
                            const fC = false; // force Create
                            const idSchalter = instanz + ".tuya.Adapter.Schalter";
                            const adapter = "tuya.0"; // Name und Instanz des Adapters
                            
                            // Ab hier nix mehr ändern
                            
                            if (logging) log("Skript " + name + " in der Instanz " + instance + " gestartet");
                            var idAdapter = "system.adapter." + adapter;
                            
                            createState(idSchalter, false, fC, {
                                name: adapter + " Adapter neu starten", 
                                type: "boolean", 
                                desc: "Schaltet den <" + adapter +  "> Adapter per Skript zB aus VIS",
                                role: "switch"
                            });
                            
                            // Neustart triggern
                            
                            on({
                                id: idSchalter,
                                change: "ne",
                                from: "system.adapter.web.0" // Schaltung nur aus VIS möglich
                            }, function (dpobj) {
                                var obj = getObject(idAdapter);
                                if (dpobj.state.val) {
                                    obj.common.enabled = true;  // Adapter einschalten
                                } else if (!dpobj.state.val) {
                                    obj.common.enabled = false;  // Adapter ausschalten
                                }
                                setObject(idAdapter, obj);
                                if (logging) log("Adapter <" + adapter + "> wurde " + ((obj.common.enabled) ? "ein" : "aus") + "geschaltet");
                            });
                            
                            ostseereiterO Offline
                            ostseereiterO Offline
                            ostseereiter
                            schrieb am zuletzt editiert von
                            #14

                            @Superdad sagte in Instanz per Script neu starten:

                                                                                                                                                        /* tuya adapter neu starten                                                                                                                                                                            {1}                                                                                                                                                                            erzeugt Objekt, das in VIS geschaltet werden kann                                                                                                                                                                            Schaltung triggert Neustart eines Adapters                                                                                                                                                                            {1}                                                                                                                                                                            28.03.2018 erstellt von pix                                                                                                                                                                            {1}                                                                                                                                                                            */                                                                                                                                                                                                                                                                                                                                                         const logging = true; // (true;false) Logausgabe zentral schalten, da 5minütlich ein Mehrzeiler geloggt wird.                                                                                                                                                                            const instanz = "javascript." + instance;                                                                                                                                                                            const fC = false; // force Create                                                                                                                                                                            const idSchalter = instanz + ".tuya.Adapter.Schalter";                                                                                                                                                                            const adapter = "tuya.0"; // Name und Instanz des Adapters                                                                                                                                                                                                                                                                                                                                                         // Ab hier nix mehr ändern                                                                                                                                                                                                                                                                                                                                                         if (logging) log("Skript " + name + " in der Instanz " + instance + " gestartet");                                                                                                                                                                            var idAdapter = "system.adapter." + adapter;                                                                                                                                                                                                                                                                                                                                                         createState(idSchalter, false, fC, {                                                                                                                                                                                name: adapter + " Adapter neu starten",                                                                                                                                                                                 type: "boolean",                                                                                                                                                                                 desc: "Schaltet den <" + adapter +  "> Adapter per Skript zB aus VIS",                                                                                                                                                                                role: "switch"                                                                                                                                                                            });                                                                                                                                                                                                                                                                                                                                                         // Neustart triggern                                                                                                                                                                                                                                                                                                                                                         on({                                                                                                                                                                                id: idSchalter,                                                                                                                                                                                change: "ne",                                                                                                                                                                                from: "system.adapter.web.0" // Schaltung nur aus VIS möglich                                                                                                                                                                            }, function (dpobj) {                                                                                                                                                                                var obj = getObject(idAdapter);                                                                                                                                                                                if (dpobj.state.val) {                                                                                                                                                                                    obj.common.enabled = true;  // Adapter einschalten                                                                                                                                                                                } else if (!dpobj.state.val) {                                                                                                                                                                                    obj.common.enabled = false;  // Adapter ausschalten                                                                                                                                                                                }                                                                                                                                                                                setObject(idAdapter, obj);                                                                                                                                                                                if (logging) log("Adapter <" + adapter + "> wurde " + ((obj.common.enabled) ? "ein" : "aus") + "geschaltet");                                                                                                                                                                            });
                            

                            Danke ja damit kann ich arbeiten super.

                            Gruß OSR

                            Plattform
                            Linux x64 CPUs2 AMD G-T56N Processor 1646 MHz 8GB RAM

                            ostseereiterO 1 Antwort Letzte Antwort
                            0
                            • ostseereiterO ostseereiter

                              @Superdad sagte in Instanz per Script neu starten:

                                                                                                                                                          /* tuya adapter neu starten                                                                                                                                                                            {1}                                                                                                                                                                            erzeugt Objekt, das in VIS geschaltet werden kann                                                                                                                                                                            Schaltung triggert Neustart eines Adapters                                                                                                                                                                            {1}                                                                                                                                                                            28.03.2018 erstellt von pix                                                                                                                                                                            {1}                                                                                                                                                                            */                                                                                                                                                                                                                                                                                                                                                         const logging = true; // (true;false) Logausgabe zentral schalten, da 5minütlich ein Mehrzeiler geloggt wird.                                                                                                                                                                            const instanz = "javascript." + instance;                                                                                                                                                                            const fC = false; // force Create                                                                                                                                                                            const idSchalter = instanz + ".tuya.Adapter.Schalter";                                                                                                                                                                            const adapter = "tuya.0"; // Name und Instanz des Adapters                                                                                                                                                                                                                                                                                                                                                         // Ab hier nix mehr ändern                                                                                                                                                                                                                                                                                                                                                         if (logging) log("Skript " + name + " in der Instanz " + instance + " gestartet");                                                                                                                                                                            var idAdapter = "system.adapter." + adapter;                                                                                                                                                                                                                                                                                                                                                         createState(idSchalter, false, fC, {                                                                                                                                                                                name: adapter + " Adapter neu starten",                                                                                                                                                                                 type: "boolean",                                                                                                                                                                                 desc: "Schaltet den <" + adapter +  "> Adapter per Skript zB aus VIS",                                                                                                                                                                                role: "switch"                                                                                                                                                                            });                                                                                                                                                                                                                                                                                                                                                         // Neustart triggern                                                                                                                                                                                                                                                                                                                                                         on({                                                                                                                                                                                id: idSchalter,                                                                                                                                                                                change: "ne",                                                                                                                                                                                from: "system.adapter.web.0" // Schaltung nur aus VIS möglich                                                                                                                                                                            }, function (dpobj) {                                                                                                                                                                                var obj = getObject(idAdapter);                                                                                                                                                                                if (dpobj.state.val) {                                                                                                                                                                                    obj.common.enabled = true;  // Adapter einschalten                                                                                                                                                                                } else if (!dpobj.state.val) {                                                                                                                                                                                    obj.common.enabled = false;  // Adapter ausschalten                                                                                                                                                                                }                                                                                                                                                                                setObject(idAdapter, obj);                                                                                                                                                                                if (logging) log("Adapter <" + adapter + "> wurde " + ((obj.common.enabled) ? "ein" : "aus") + "geschaltet");                                                                                                                                                                            });
                              

                              Danke ja damit kann ich arbeiten super.

                              ostseereiterO Offline
                              ostseereiterO Offline
                              ostseereiter
                              schrieb am zuletzt editiert von ostseereiter
                              #15

                              Hat zweimal hingehauen und nun wird nicht mehr geschallten. Habe mich zu früh gefreut.

                              Update ich habe festgestellt das ich das nur per VIS schalten kann über Blockly wird zwar von false auf true geschallten aber der Adapter reagiert nicht.Machen wir es halt händisch.

                              Gruß OSR

                              Plattform
                              Linux x64 CPUs2 AMD G-T56N Processor 1646 MHz 8GB RAM

                              1 Antwort Letzte Antwort
                              0
                              • DiginixD Diginix

                                Ich starte bei mir mittels exec in Blockly Instanzen bei Bedarf neu.
                                6549_adapter_restart.jpg

                                Es muss ja nicht zwingend dauerhaft per Cron sein. Der exec Block sitzt natürlich in einem Skript mit Trigger und Bedingungen.

                                R Offline
                                R Offline
                                RainerHp
                                schrieb am zuletzt editiert von
                                #16

                                @Diginix script.js.yeelight_neustart: exec is not available. Please enable "Enable Exec" option in instance settings

                                Wie mache ich das? Finde nicht wo ich das auf enabel setzen kann?

                                DiginixD 1 Antwort Letzte Antwort
                                0
                                • R RainerHp

                                  @Diginix script.js.yeelight_neustart: exec is not available. Please enable "Enable Exec" option in instance settings

                                  Wie mache ich das? Finde nicht wo ich das auf enabel setzen kann?

                                  DiginixD Offline
                                  DiginixD Offline
                                  Diginix
                                  schrieb am zuletzt editiert von
                                  #17

                                  @RainerHp Steht doch genau da: In den Einstellungen der javascript Instanz. Da kannst du einstellen was alles in Skripten genutzt werden darf, u.a. eben auch exec.

                                  b910cb16-437b-4bce-9db9-c7e04e1d8c83-image.png

                                  ..:: So long! Tom ::..

                                  NUC7i3 (Ubuntu Proxmox VM) | Echo Dots 2+3. Gen | Xiaomi Sensoren | Mi Robot 1S | Yeelight | Sonoff | Shelly | H801 RGB | Gosund SP1 | NodeMCU+ESP32 | Kostal Plenticore PV+BYD | openWB

                                  R 1 Antwort Letzte Antwort
                                  0
                                  • DiginixD Diginix

                                    @RainerHp Steht doch genau da: In den Einstellungen der javascript Instanz. Da kannst du einstellen was alles in Skripten genutzt werden darf, u.a. eben auch exec.

                                    b910cb16-437b-4bce-9db9-c7e04e1d8c83-image.png

                                    R Offline
                                    R Offline
                                    RainerHp
                                    schrieb am zuletzt editiert von
                                    #18

                                    @Diginix Ach in der Javainstannz jau habs. gleich nochmal testen.

                                    1 Antwort Letzte Antwort
                                    0
                                    • T Offline
                                      T Offline
                                      Tobi75
                                      schrieb am zuletzt editiert von
                                      #19

                                      Hallo,

                                      mein milight verliert nach ca. 20 sekunden die Verbindung.
                                      Habt Ihr hier schon eine Lösung gefunden?
                                      Mfg
                                      Tobias

                                      1 Antwort Letzte Antwort
                                      0
                                      Antworten
                                      • In einem neuen Thema antworten
                                      Anmelden zum Antworten
                                      • Älteste zuerst
                                      • Neuste zuerst
                                      • Meiste Stimmen


                                      Support us

                                      ioBroker
                                      Community Adapters
                                      Donate

                                      823

                                      Online

                                      32.5k

                                      Benutzer

                                      81.7k

                                      Themen

                                      1.3m

                                      Beiträge
                                      Community
                                      Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                      ioBroker Community 2014-2025
                                      logo
                                      • Anmelden

                                      • Du hast noch kein Konto? Registrieren

                                      • Anmelden oder registrieren, um zu suchen
                                      • Erster Beitrag
                                        Letzter Beitrag
                                      0
                                      • Home
                                      • Aktuell
                                      • Tags
                                      • Ungelesen 0
                                      • Kategorien
                                      • Unreplied
                                      • Beliebt
                                      • GitHub
                                      • Docu
                                      • Hilfe