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. JavaScript
  5. [Gelöst] Delay für Licht ein/aus

NEWS

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

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

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.4k

[Gelöst] Delay für Licht ein/aus

Geplant Angeheftet Gesperrt Verschoben JavaScript
26 Beiträge 5 Kommentatoren 2.3k Aufrufe 2 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.
  • T Nicht stören
    T Nicht stören
    ticaki
    schrieb am zuletzt editiert von ticaki
    #21

    Das hatte Asgothian in seinem Beispiel erstellt. Du hast es umgebaut das es was anders macht was du nicht willst.

    function AmazonLicht(dp, status) {
      setState(dp, status);
      setStateDelayed(dp, true, 3000);// das ist falsch
    }
    
    function MeineNeueFunktion() {
       AmazonLicht('mein Licht', true oder false);// hier ändere ich dinge
    }
    
    function AmazonLicht(dp, status) { // hier nicht
      setState(dp, status);
      setStateDelayed(dp, status, 3000);
    }
    

    Weather-Warnings Espresense NSPanel-Lovelace-ui Tagesschau

    Spenden

    BENNI32154B 1 Antwort Letzte Antwort
    0
    • T ticaki

      Das hatte Asgothian in seinem Beispiel erstellt. Du hast es umgebaut das es was anders macht was du nicht willst.

      function AmazonLicht(dp, status) {
        setState(dp, status);
        setStateDelayed(dp, true, 3000);// das ist falsch
      }
      
      function MeineNeueFunktion() {
         AmazonLicht('mein Licht', true oder false);// hier ändere ich dinge
      }
      
      function AmazonLicht(dp, status) { // hier nicht
        setState(dp, status);
        setStateDelayed(dp, status, 3000);
      }
      
      BENNI32154B Offline
      BENNI32154B Offline
      BENNI32154
      schrieb am zuletzt editiert von
      #22

      @ticaki sagte in Delay für Licht ein/aus:

      Das hatte Asgothian in seinem Beispiel erstellt. Du hast es umgebaut das es was anders macht was du nicht willst.

      function AmazonLicht(dp, status) {
        setState(dp, status);
        setStateDelayed(dp, true, 3000);// das ist falsch
      }
      
      function MeineNeueFunktion() {
      AmazonLicht('mein Licht', true oder false);// hier ändere ich dinge
      }
      
      function AmazonLicht(dp, status) { // hier nicht
        setState(dp, status);
        setStateDelayed(dp, status, 3000);
      }
      

      aber so hatte es nicht funktioniert.

      T 1 Antwort Letzte Antwort
      0
      • BENNI32154B BENNI32154

        @ticaki sagte in Delay für Licht ein/aus:

        Das hatte Asgothian in seinem Beispiel erstellt. Du hast es umgebaut das es was anders macht was du nicht willst.

        function AmazonLicht(dp, status) {
          setState(dp, status);
          setStateDelayed(dp, true, 3000);// das ist falsch
        }
        
        function MeineNeueFunktion() {
        AmazonLicht('mein Licht', true oder false);// hier ändere ich dinge
        }
        
        function AmazonLicht(dp, status) { // hier nicht
          setState(dp, status);
          setStateDelayed(dp, status, 3000);
        }
        

        aber so hatte es nicht funktioniert.

        T Nicht stören
        T Nicht stören
        ticaki
        schrieb am zuletzt editiert von
        #23

        @BENNI32154
        Was soll ich sagen... das funktioniert. :)

        vielleicht postest du mal das komplette Skript, so dass man sieht welche Funktion von wo wann aufgerufen wird.

        Weather-Warnings Espresense NSPanel-Lovelace-ui Tagesschau

        Spenden

        BENNI32154B 1 Antwort Letzte Antwort
        0
        • T ticaki

          @BENNI32154
          Was soll ich sagen... das funktioniert. :)

          vielleicht postest du mal das komplette Skript, so dass man sieht welche Funktion von wo wann aufgerufen wird.

          BENNI32154B Offline
          BENNI32154B Offline
          BENNI32154
          schrieb am zuletzt editiert von
          #24

          @ticaki sagte in Delay für Licht ein/aus:

          @BENNI32154
          Was soll ich sagen... das funktioniert. :)

          vielleicht postest du mal das komplette Skript, so dass man sieht welche Funktion von wo wann aufgerufen wird.

          So ist das Skript ohne Delay:

          const idTV     = 'lgtv.0.states.on';
          const idLicht1 = 'id1.powerState';
          const idLicht2 = 'id2.powerState';
          const idLicht3 = 'id3.powerState';
          const idLicht4 = 'wifilight.0.192_168_178_150.on';
          const idLicht5 = 'wifilight.0.192_168_178_157.on';
          const idLicht6 = 'id6.powerState';
          const idSzene = 'id7.active';
           
          var tv = getState(idTV).val;
           
          function licht(ein) {
             setState(idLicht1, ein);
             setState(idLicht2, ein);
             setState(idLicht3, ein);
             setState(idLicht4, ein);
             setState(idLicht5, ein);
             setState(idLicht6, ein);
             var txt = 'ausgeschaltet';
             if(ein) txt = 'eingeschaltet';
             if (ein) setStateDelayed(idSzene, true, 6000);
             if(tv) setState('lgtv.0.states.popup', 'Das Licht ist ' + txt);
          }
           
          // Skriptstart
          if(!isAstroDay() && tv) licht(true);
          else licht(false);
           
          on(idTV, function(dp) { // Triggert bei Wertänderung
             tv = dp.state.val;
             if(tv && !isAstroDay()) licht(true);
             else licht(false);
          });
           
          schedule({astro: "sunset"}, function () {
             if(tv) licht(true);
          });
           
          schedule({astro: "sunrise"}, function () {
             licht(false);
          });
          
          T 1 Antwort Letzte Antwort
          0
          • BENNI32154B BENNI32154

            @ticaki sagte in Delay für Licht ein/aus:

            @BENNI32154
            Was soll ich sagen... das funktioniert. :)

            vielleicht postest du mal das komplette Skript, so dass man sieht welche Funktion von wo wann aufgerufen wird.

            So ist das Skript ohne Delay:

            const idTV     = 'lgtv.0.states.on';
            const idLicht1 = 'id1.powerState';
            const idLicht2 = 'id2.powerState';
            const idLicht3 = 'id3.powerState';
            const idLicht4 = 'wifilight.0.192_168_178_150.on';
            const idLicht5 = 'wifilight.0.192_168_178_157.on';
            const idLicht6 = 'id6.powerState';
            const idSzene = 'id7.active';
             
            var tv = getState(idTV).val;
             
            function licht(ein) {
               setState(idLicht1, ein);
               setState(idLicht2, ein);
               setState(idLicht3, ein);
               setState(idLicht4, ein);
               setState(idLicht5, ein);
               setState(idLicht6, ein);
               var txt = 'ausgeschaltet';
               if(ein) txt = 'eingeschaltet';
               if (ein) setStateDelayed(idSzene, true, 6000);
               if(tv) setState('lgtv.0.states.popup', 'Das Licht ist ' + txt);
            }
             
            // Skriptstart
            if(!isAstroDay() && tv) licht(true);
            else licht(false);
             
            on(idTV, function(dp) { // Triggert bei Wertänderung
               tv = dp.state.val;
               if(tv && !isAstroDay()) licht(true);
               else licht(false);
            });
             
            schedule({astro: "sunset"}, function () {
               if(tv) licht(true);
            });
             
            schedule({astro: "sunrise"}, function () {
               licht(false);
            });
            
            T Nicht stören
            T Nicht stören
            ticaki
            schrieb am zuletzt editiert von ticaki
            #25

            @BENNI32154

            Und wenn du das hier unten nimmst geht es dann?

            const idTV     = 'lgtv.0.states.on';
            const idLicht1 = 'id1.powerState';
            const idLicht2 = 'id2.powerState';
            const idLicht3 = 'id3.powerState';
            const idLicht4 = 'wifilight.0.192_168_178_150.on';
            const idLicht5 = 'wifilight.0.192_168_178_157.on';
            const idLicht6 = 'id6.powerState';
            const idSzene = 'id7.active';
             
            var tv = getState(idTV).val;
             
            function licht(ein) {
               AmazonLicht(idLicht1, ein);
               AmazonLicht(idLicht2, ein);
               AmazonLicht(idLicht3, ein);
               AmazonLicht(idLicht4, ein);
               AmazonLicht(idLicht5, ein);
               AmazonLicht(idLicht6, ein);
               var txt = 'ausgeschaltet';
               if(ein) txt = 'eingeschaltet';
               if (ein) setStateDelayed(idSzene, true, 6000);
               if(tv) setState('lgtv.0.states.popup', 'Das Licht ist ' + txt);
            }
            
            function AmazonLicht(dp, status) { // hier nicht
               setState(dp, status);
               setStateDelayed(dp, status, 3000);
             }
             
            // Skriptstart
            if(!isAstroDay() && tv) licht(true);
            else licht(false);
             
            on(idTV, function(dp) { // Triggert bei Wertänderung
               tv = dp.state.val;
               if(tv && !isAstroDay()) licht(true);
               else licht(false);
            });
            
             
            schedule({astro: "sunset"}, function () {
               if(tv) licht(true);
            });
             
            schedule({astro: "sunrise"}, function () {
               licht(false);
            });
            

            Weather-Warnings Espresense NSPanel-Lovelace-ui Tagesschau

            Spenden

            BENNI32154B 1 Antwort Letzte Antwort
            0
            • T ticaki

              @BENNI32154

              Und wenn du das hier unten nimmst geht es dann?

              const idTV     = 'lgtv.0.states.on';
              const idLicht1 = 'id1.powerState';
              const idLicht2 = 'id2.powerState';
              const idLicht3 = 'id3.powerState';
              const idLicht4 = 'wifilight.0.192_168_178_150.on';
              const idLicht5 = 'wifilight.0.192_168_178_157.on';
              const idLicht6 = 'id6.powerState';
              const idSzene = 'id7.active';
               
              var tv = getState(idTV).val;
               
              function licht(ein) {
                 AmazonLicht(idLicht1, ein);
                 AmazonLicht(idLicht2, ein);
                 AmazonLicht(idLicht3, ein);
                 AmazonLicht(idLicht4, ein);
                 AmazonLicht(idLicht5, ein);
                 AmazonLicht(idLicht6, ein);
                 var txt = 'ausgeschaltet';
                 if(ein) txt = 'eingeschaltet';
                 if (ein) setStateDelayed(idSzene, true, 6000);
                 if(tv) setState('lgtv.0.states.popup', 'Das Licht ist ' + txt);
              }
              
              function AmazonLicht(dp, status) { // hier nicht
                 setState(dp, status);
                 setStateDelayed(dp, status, 3000);
               }
               
              // Skriptstart
              if(!isAstroDay() && tv) licht(true);
              else licht(false);
               
              on(idTV, function(dp) { // Triggert bei Wertänderung
                 tv = dp.state.val;
                 if(tv && !isAstroDay()) licht(true);
                 else licht(false);
              });
              
               
              schedule({astro: "sunset"}, function () {
                 if(tv) licht(true);
              });
               
              schedule({astro: "sunrise"}, function () {
                 licht(false);
              });
              
              BENNI32154B Offline
              BENNI32154B Offline
              BENNI32154
              schrieb am zuletzt editiert von
              #26

              @ticaki sagte in Delay für Licht ein/aus:

              @BENNI32154
              Und wenn du das hier unten nimmst geht es dann?
              const idTV = 'lgtv.0.states.on'; const idLicht1 = 'id1.powerState'; const idLicht2 = 'id2.powerState'; const idLicht3 = 'id3.powerState'; const idLicht4 = 'wifilight.0.192_168_178_150.on'; const idLicht5 = 'wifilight.0.192_168_178_157.on'; const idLicht6 = 'id6.powerState'; const idSzene = 'id7.active'; var tv = getState(idTV).val; function licht(ein) { AmazonLicht(idLicht1, ein); AmazonLicht(idLicht2, ein); AmazonLicht(idLicht3, ein); AmazonLicht(idLicht4, ein); AmazonLicht(idLicht5, ein); AmazonLicht(idLicht6, ein); var txt = 'ausgeschaltet'; if(ein) txt = 'eingeschaltet'; if (ein) setStateDelayed(idSzene, true, 6000); if(tv) setState('lgtv.0.states.popup', 'Das Licht ist ' + txt); } function AmazonLicht(dp, status) { // hier nicht setState(dp, status); setStateDelayed(dp, status, 3000); } // Skriptstart if(!isAstroDay() && tv) licht(true); else licht(false); on(idTV, function(dp) { // Triggert bei Wertänderung tv = dp.state.val; if(tv && !isAstroDay()) licht(true); else licht(false); }); schedule({astro: "sunset"}, function () { if(tv) licht(true); }); schedule({astro: "sunrise"}, function () { licht(false); });

              funktioniert perfekt, vielen dank! :)

              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

              682

              Online

              32.7k

              Benutzer

              82.3k

              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