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. Visualisierung
  4. Welches Schalter Widget für unterschiedliche An-Aus Befehl

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    17
    1
    2.3k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    959

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.2k

Welches Schalter Widget für unterschiedliche An-Aus Befehl

Geplant Angeheftet Gesperrt Verschoben Visualisierung
19 Beiträge 8 Kommentatoren 6.5k Aufrufe
  • Ä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.
  • H Offline
    H Offline
    hmanfred
    schrieb am zuletzt editiert von
    #9

    @Homoran:

    Es geht im Prinzip dann nur mit zwei Buttons on/off, die als Taster konfiguriert werden.

    Allerdings wirst du dann den Zustand des Lichts nicht darstellen können.

    Gruß

    Rainer `
    Wenn die zwei Buttons übereinander liegen und über den jeweiligen Schaltzustand sichtbar/unsichtbar gemacht werden, sollte das gehen.

    Einer stellt den Zustand "ein" dar und schaltet beim Betätigen aus, der andere umgekehrt.

    Gruß

    Manfred

    1 Antwort Letzte Antwort
    0
    • J Offline
      J Offline
      jensus11
      schrieb am zuletzt editiert von
      #10

      Wenn die zwei Buttons übereinander liegen und über den jeweiligen Schaltzustand sichtbar/unsichtbar gemacht werden, sollte das gehen.

      Einer stellt den Zustand "ein" dar und schaltet beim Betätigen aus, der andere umgekehrt.

      Gruß

      Manfred

      und wie oder wo stell ich den Schaltzustand ein?

      1 Antwort Letzte Antwort
      0
      • P Offline
        P Offline
        pix
        schrieb am zuletzt editiert von
        #11

        Hallo,

        ich würde aus VIS Performance-Gründen für solche eine Anwendung nicht so viele Widgets übereinanderlegen und per Sichtbarkeit steuern. Da kriegt man im Editor irgendwann die Krise.

        Besser: Skript!

        Javascript erstellt Boolean-State. Dieser State wird mit dem Widget geschaltet. Das Skript reagiert auf die Änderung und sendet den Befehl.

        var idEin = "hm-rpc.1.CUX4000001.1.PRESS_SHORT",
            idAus =  "hm-rpc.1.CUX4000001.2.PRESS_SHORT";
        var idSchalter = "javascript.0.Schalter"; // Instanz anpassen
        
        createState(idSchalter, false, {
            type: "boolean",
            name: "Intertechno schalten",
            desc: "Variable, um mit VIS zu schalten"
        });
        
        // Variable setzt Intertechno
        on(idSchalter, function (obj) {
            if (obj.state.val) setState(idEin, true, false); // ack false = Wert setzen
            else setState(idAus, false, false);
        });
        
        // Intertechno setzt Variable (falls Intertechno woanders geschaltet wird)
        on(id: idEin, val: true, function(obj) {
            setState(idSchalter, true);
            log('intertechno wurde eingeschaltet");
        });
        on(id: idAus, val: true, function(obj) {
            setState(idSchalter, false);
            log('intertechno wurde ausgeschaltet");
        });
        
        

        Im Widget dann die id javascript.0.Schalter angeben

        Ob ack zu setzen nötig ist, habe ich nicht getestet.

        Frage: Was passiert, wenn man die (vermutlich) CUxD Datenpunkte auf false setzt?

        Gruß

        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
        • J Offline
          J Offline
          jensus11
          schrieb am zuletzt editiert von
          #12

          Wenn man die CuXD states ändert wird die Steckdose auch geschaltet. Aber nur bei der Änderung auf false, ändert man danach auf true passiert nix mehr.

          1 Antwort Letzte Antwort
          0
          • J Offline
            J Offline
            jensus11
            schrieb am zuletzt editiert von
            #13

            Ich habe jetzt das Script angelegt.

            Es wird dieses rote Kreuz angezeigt und die Meldung kommt.
            1024_bildschirmfoto_2017-01-09_um_19.22.45.png

            Ein Objekt habe ich auch angelegt.

            Wenn ich ein Bulb on/off Widget in Vis erstelle und da Javascript.0.Schalter auswähle wird der Status im Objekt auch geändert.

            Nur die Steckdose schaltet nicht.
            1024_bildschirmfoto_2017-01-09_um_19.24.43.png

            1 Antwort Letzte Antwort
            0
            • BluefoxB Offline
              BluefoxB Offline
              Bluefox
              schrieb am zuletzt editiert von
              #14

              > on(****{****id: idEin, val: true****}****, function (obj) {

              1 Antwort Letzte Antwort
              0
              • J Offline
                J Offline
                jensus11
                schrieb am zuletzt editiert von
                #15

                1024_bildschirmfoto_2017-01-09_um_20.02.10.png

                jetzt sieht es so aus.

                1 Antwort Letzte Antwort
                0
                • J Offline
                  J Offline
                  jensus11
                  schrieb am zuletzt editiert von
                  #16

                  So jetzt klappt es. Echt klasse! Danke dafür.

                  var idEin = "hm-rpc.1.CUX4000001.1.PRESS_SHORT",
                      idAus =  "hm-rpc.1.CUX4000001.2.PRESS_SHORT";
                  var idSchalter = "javascript.0.Schalter"; // Instanz anpassen
                  
                  createState(idSchalter, false, {
                      type: "boolean",
                      name: "Intertechno schalten",
                      desc: "1999"
                  });
                  
                  // Variable setzt Intertechno
                  on(idSchalter, function (obj) {
                      if (obj.state.val) setState(idEin, true, false); // ack false = Wert setzen
                      else setState(idAus, false, false);
                  });
                  
                  // Intertechno setzt Variable (falls Intertechno woanders geschaltet wird)
                  on(idEin, val= true, function (obj) {
                      setState(idSchalter, true);
                      log("intertechno wurde eingeschaltet");
                  });
                  on(idAus, val= true, function(obj) {
                      setState(idSchalter, false);
                      log("intertechno wurde ausgeschaltet");
                  });
                  
                  1 Antwort Letzte Antwort
                  0
                  • S Offline
                    S Offline
                    schubi82
                    schrieb am zuletzt editiert von
                    #17

                    Hallo zusammen,

                    vorweg, ich kenne mich nicht wirklich mit Skripten aus, ist auch mein erster Versuch in VIS etwas zu realisieren. Habe aber versucht es wie hier erläutert zu übernehmen. Leider passiert nichts, wenn ich auf den Schalter drücke. Ein Objekt habe ich angelegt und im Widget auch ausgewählt…

                    Hier der Inhalt meines Skripts:

                    var idEin = "hm-rpc.1.CUX4000002.1.PRESS_SHORT",
                        idAus =  "hm-rpc.1.CUX4000002.2.PRESS_SHORT";
                    var idSchalter = "hm-rpc.1.CUX4000002.Intertechno_schalten"; // Instanz anpassen
                    
                    createState(idSchalter, false, {
                        type: "boolean",
                        name: "Intertechno schalten",
                        desc: "1999"
                    });
                    
                    // Variable setzt Intertechno
                    on(idSchalter, function (obj) {
                        if (obj.state.val) setState(idEin, true, false); // ack false = Wert setzen
                        else setState(idAus, false, false);
                    });
                    
                    // Intertechno setzt Variable (falls Intertechno woanders geschaltet wird)
                    on(idEin, val= true, function (obj) {
                        setState(idSchalter, true);
                        log("intertechno wurde eingeschaltet");
                    });
                    on(idAus, val= true, function(obj) {
                        setState(idSchalter, false);
                        log("intertechno wurde ausgeschaltet");
                    });
                    

                    Im Anhang noch die Screenshots. Was mache ich falsch? Über Homematic kann ich die Dosen schalten.

                    Viele Grüße

                    geändert: Code in Code-Tags; Homoran (Mod)
                    1964_objekt.jpg
                    1964_vis.jpg

                    1 Antwort Letzte Antwort
                    0
                    • Y Offline
                      Y Offline
                      ykuendig
                      schrieb am zuletzt editiert von
                      #18

                      Warum hast Du die dritte Zeile verändert? Gem. Muster war das doch ein 'lokaler' Datenpunkt im JavaScript Adapter.

                      Und heissen Deine PRESS_SHORT Ziele zufällig gleich wie die des Kollegen weiter oben?

                      Gruss Yves

                      1 Antwort Letzte Antwort
                      0
                      • S Offline
                        S Offline
                        schubi82
                        schrieb am zuletzt editiert von
                        #19

                        Ja, die PRESS_SHORT-Adresse ist gleich :-)

                        Ich dachte in die dritte Zeile muss die Adresse rein, wo ich das Objekt erstellt habe!? Und das hab ich unter hm-rpc-1 gemacht… Aber wenn ich Dich richtig verstehe, muss das gar nicht darunter, sondern unter dem JavaScrip Adapter, den ich gar nicht installiert habe, erstellt werden!? Dann ist das wohl der Fehler, ich habe das Skript einfach nur im Widget unter "Skripte" eingetragen.

                        Brauch ich den Javascript/Coffescript Engine-Adapter?

                        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

                        677

                        Online

                        32.6k

                        Benutzer

                        82.2k

                        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