Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Visualisierung
    4. [gelöst] Mehrere Geräte kombinieren

    NEWS

    • Monatsrückblick – September 2025

    • Neues Video "KI im Smart Home" - ioBroker plus n8n

    • Neues Video über Aliase, virtuelle Geräte und Kategorien

    [gelöst] Mehrere Geräte kombinieren

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

      Hallo,

      ich bin komplett neu mit ioBroker und hab eine Frage, wo ich bisher leider nichts gefunden habe.

      Ich habe mehrere Lampen, die sich über verschiedene Kanäle einzeln schalten lassen:

      Lampe 1 hm-rpc.1.LEQ1286307.13.STATE

      Lampe 2 hm-rpc.1.LEQ1286307.14.STATE

      Lampe 3 hm-rpc.1.LEQ1286307.15.STATE

      Diese möchte ich in Vis über ein Widget zusammenfasst haben. Also wenn eine der Lampen an ist (Kanal State = true ?) soll das Widget angezeigt werden als ob die Lampe an ist, und wenn ich das Widget "betätige" sollen alle 3 Lampen angehen.

      Wie realisiere ich das am besten?

      Geht das direkt in Vis oder benötige ich ein Javascript mit einem virtuellen Kanal?

      Gibt es dafür irgendwo ein beispiel?

      Danke & Gruß

      Robert

      1 Reply Last reply Reply Quote 0
      • Jeeper.at
        Jeeper.at last edited by

        Ich würde mit dem Widget eine Systemvariable in der CCU setzen. Dann dort noch ein kleines Programm:

        Wenn SV = true

        Schalte alle drei Geräte ein.

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

          Ich würde keine CCU-Logik mehr anlegen, wenn wir hier schon bei ioBroker sind :lol:

          Der Scenes Adapter kann das, was du brauchst.

          Gruß

          Pix

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

            @Jeeper.at:

            Ich würde mit dem Widget eine Systemvariable in der CCU setzen. Dann dort noch ein kleines Programm: `
            Oder ein Javascript-Programm in ioBroker, das die zu setzende Variable erzeugt:

            createState("3-Lampen-an", false, {
                    read: true, 
                    write: true, 
                    desc: "3 Lampen mit VIS einschalten", 
                    type: "boolean", 
                    def: false
            });
            
            on({id: "javascript.0.3-Lampen-an", change: 'ne', val: true}, function() {
                setState("javascript.0.3-Lampen-an", false);
                setState("hm-rpc.1.LEQ1286307.13.STATE", true);
                setState("hm-rpc.1.LEQ1286307.14.STATE", true);
                setState("hm-rpc.1.LEQ1286307.15.STATE", true);
            });
            
            
            1 Reply Last reply Reply Quote 0
            • Jeeper.at
              Jeeper.at last edited by

              Viele Wege führen zu drei eingeschalteten Lampen. 🙂

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

                Hier noch ein Javascript, dass alle gewünschten Aspekte erfüllen dürfte.

                `//In "javascript.0.wohnung.status.lampen" wird der Status der Lampen abgelegt.
                createState('javascript.0.wohnung.status.lampen', false);
                
                //Hier müssen alleLampen, die überwacht werden sollen eingetragen werden
                lampen  = [
                    "hm-rpc.1.IEQxxx.4.STATE"/*Flur Licht1.STATE*/,
                    "hm-rpc.1.IEQxxx.4.STATE"/*Flur Licht3.STATE*/,
                    "hm-rpc.1.IEQxxx.3.STATE"/*Flur Licht2.STATE*/
                ];
                
                //Bei Start des Script, Lampenstatus aktualisieren
                updateLampenStatus();
                
                //Lampenstatus aller Lampen überwachen
                for (var i=0;i<lampen.length;i++) {/subscribe({id:/lampen[i]},/function/(obj)/updatelampenstatus();/});/}/prüfe/lampenstatus/und/setze/entsprechend/"wohnung.status.lampen"/updatelampenstatus()/var/zustand="0;" for/(var/i="0;i<lampen.length;i++)" if(getstate(lampen[i]).val="">zustand) zustand=getState(lampen[i]).val;
                    }
                    setState('wohnung.status.lampen',zustand);
                }  
                
                //Funktion, die "javascript.0.wohnung.status.lampe" überwacht und bei Änderung alle Lampen entsprechend per alleLampenSet schaltet
                subscribe({id: 'javascript.0.wohnung.status.lampen', change:'any', fromNe:'system.adapter.javascript.0'}, function (obj) {
                    var level=getState('javascript.0.wohnung.status.lampen').val;
                    alleLampenSet(level);
                });
                
                //Funktion, die alle im Array "Lampen[]" auf einen Wert setzt
                function alleLampenSet(level) {
                    for (var i=0;i<lampen.length;i++) {/setstate(lampen[i],level);/}/<e=""></lampen.length;i++)></lampen.length;i++)>`[/i][/i][/i][/i]
                
                1 Reply Last reply Reply Quote 0
                • First post
                  Last post

                Support us

                ioBroker
                Community Adapters
                Donate

                670
                Online

                32.1k
                Users

                80.7k
                Topics

                1.3m
                Posts

                5
                6
                1695
                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