Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. [Vorlage] Adapter/Instanz per VIS neu starten

    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

    [Vorlage] Adapter/Instanz per VIS neu starten

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

      Hi Pix,

      danke für die Information, hab ich gleich mal ausprobiert, leider macht das Skript bei mir nichts.

      Wenn ich in der Visualisierung auf den Button klicke, schaltet dieser zwar auf grün, sonst tut sich nix. Bei den Instanzen ist die Tankerkönig weiter deaktiviert. Im Log findet ich allerdings den Eintrag: "Function "setObject" is not allowed. Use adapter settings to allow it."

      Hab den iobroker auf einem Raspberri Pi 3b installiert. Ich hoffe Du kannst hier weiterhelfen.

      Grüße

      Markus

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

        @Arktim:

        "Function "setObject" is not allowed. Use adapter settings to allow it." `
        In der Konfiguration der Javascript-Instanz setObject freigeben !

        1 Reply Last reply Reply Quote 0
        • S
          Superdad last edited by

          Hallo pix,

          sehr cool wieder einmal!

          Vielen Dank!

          1 Reply Last reply Reply Quote 0
          • A
            Arktim last edited by

            @paul53:

            In der Konfiguration der Javascript-Instanz setObject freigeben ! `

            Vielen Dank, darauf bin ich nicht gekommen… Glaub ich muss mir die Adapter nochmal alle genauer anschaun 😉

            Danke Dir.

            1 Reply Last reply Reply Quote 0
            • R
              Reese1 last edited by

              Hallo,

              kann mir jemand erklären wie dass mit dem harmony adapter funktioniert damit ich diesen auch über vis neu starten kann?

              mfg

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

                weil ich eben selbst danach gesucht habe… hier meine Anpassung.

                /* harmony adapter neu starten
                
                erzeugt Objekt, das in VIS geschaltet werden kann
                Schaltung triggert Neustart eines Adapters
                
                28.03.2018 erstellt von pix
                
                */
                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 + ".harmony.Adapter.Schalter";
                const adapter = "harmony.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");
                });
                

                und es braucht den metro adapter für das widget und dort muss noch die Objekt id angepasst werden

                javascript.0.harmony.Adapter.Schalter
                
                1 Reply Last reply Reply Quote 0
                • Z
                  Zippolighter last edited by

                  Hallo,

                  irgendwie stehe ich auf dem Schlauch und bekomme es nicht am laufen. Bzw. Ich sehe im VIS das Widget nicht

                  Habe ein Javascript erstellt und den Inhalt wie oben beschrieben eingefügt.

                  Muss ich irgendwo in dem Script was anpassen / ändern??

                  /* Spritpreis tankerkoenig adapter neu starten
                  
                  erzeugt Objekt, das in VIS geschaltet werden kann
                  Schaltung triggert Neustart eines Adapters
                  
                  28.03.2018 erstellt von pix
                  
                  */
                  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 + ".Sprit.Adapter.Schalter";
                  const adapter = "tankerkoenig.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");
                  });
                  

                  Habe dann aus dem Ursprünglichen Thread das Widget kopiert und in VIS eingefügt

                  Muss hier noch was angepasst werden??

                  [{"tpl":"tplMetroTileToggle","data":{"visibility-cond":"==","visibility-val":1,"hover":false,"transform":"true","bg_class_true":"ribbed-emerald","bg_class_false":"ribbed-crimson","icon_class_true":"","icon_class_false":"","icon_badge_true":"","icon_badge_false":"","badge_bg_class_true":"","badge_bg_class_false":"","brand_bg_class_true":"","brand_bg_class_false":"","select_on_true":true,"label_true":"Adapter
                  aktiviert
                  
                  tankerkoenig.0 eingeschaltet","label_false":"Adapter
                  deaktiviert
                  
                  tankerkoenig.0 abgeschaltet","toggle_oid":"javascript.0.Optin_Nachtruhe_Sayit","name":"Adapter schalten","oid":"javascript.2.Sprit.Adapter.Schalter","badge_top":"0","badge_left":"0","gestures-offsetX":0,"gestures-offsetY":0,"signals-cond-0":"==","signals-val-0":true,"signals-icon-0":"/vis/signals/lowbattery.png","signals-icon-size-0":0,"signals-blink-0":false,"signals-horz-0":0,"signals-vert-0":0,"signals-hide-edit-0":false,"signals-cond-1":"==","signals-val-1":true,"signals-icon-1":"/vis/signals/lowbattery.png","signals-icon-size-1":0,"signals-blink-1":false,"signals-horz-1":0,"signals-vert-1":0,"signals-hide-edit-1":false,"signals-cond-2":"==","signals-val-2":true,"signals-icon-2":"/vis/signals/lowbattery.png","signals-icon-size-2":0,"signals-blink-2":false,"signals-horz-2":0,"signals-vert-2":0,"signals-hide-edit-2":false,"visibility-groups-action":"hide","lc-type":"last-change","lc-is-interval":true,"lc-is-moment":false,"lc-format":"","lc-position-vert":"top","lc-position-horz":"right","lc-offset-vert":0,"lc-offset-horz":0,"lc-font-size":"12px","lc-font-family":"","lc-font-style":"","lc-bkg-color":"","lc-color":"","lc-border-width":"0","lc-border-style":"","lc-border-color":"","lc-border-radius":10,"lc-zindex":0,"comment":"wird in Skript überwacht"},"style":{"left":"875px","top":"416px","width":"137px","height":"137px","font-family":"","z-index":"26","cursor":"pointer"},"widgetSet":"metro"}]
                  

                  Bei mir wird das Widget in VIS folgendermaßen beschrieben, aber nicht angezeigt

                  Adapter schalten [W01871] (undefined - undefined)

                  SetObjekt ist aktiviert und Metro ist auch installiert

                  Danke für Eure Hilfe

                  Gruß Zippolighter

                  1 Reply Last reply Reply Quote 0
                  • E
                    excalibur270 @pix last edited by

                    @pix Hi. Ich glaube ddie Umstellung hat etwas zerschossen. Kannst du das nochmal Posten? Bei mir wird der Schalter nicht erstellt.

                    1 Reply Last reply Reply Quote 0
                    • P
                      pix last edited by

                      Hallo excalibur270,

                      welche Umstellung meinst du denn?
                      Code steht oben.

                      Gruß
                      Pix

                      E 1 Reply Last reply Reply Quote 0
                      • E
                        excalibur270 @pix last edited by

                        @pix Meine die forenumstellung. Habe den code von oben genommen. Es wird der Schalter dp nicht erstellt.
                        Hatte das Script schon am laufen. Leider einmal nach einer Änderung kein Backup und es passiert was dann nicht passieren sollte. Sd Crash. Wollte heute neu machen und der dp eird nicht angelegt.

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

                        Support us

                        ioBroker
                        Community Adapters
                        Donate

                        853
                        Online

                        31.8k
                        Users

                        80.0k
                        Topics

                        1.3m
                        Posts

                        8
                        11
                        3857
                        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