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]Licht einschalten, wenn TV an ist (ab Sonnenuntergang bis Sonnenaufgang)

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    15
    1
    740

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

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    1.9k

[gelöst]Licht einschalten, wenn TV an ist (ab Sonnenuntergang bis Sonnenaufgang)

Geplant Angeheftet Gesperrt Verschoben JavaScript
37 Beiträge 3 Kommentatoren 2.6k Aufrufe 3 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.
  • BENNI32154B BENNI32154

    @paul53 said in [gelöst]Licht einschalten, wenn TV an ist (ab Sonnenuntergang bis Sonnenaufgang):

                                                                                                                                schedule({astro: "sunset"}, function () {                                                                                                                                                                               if(tv) {                                                                                                                                                                                  licht(true);                                                                                                                                                                                  setTimeout(function() {                                                                                                                                                                                     var rgb = '#0000ff'; // ausprobieren !                                                                                                                                                                                     setState('wifilight.0.192_168_178_90.rgb', rgb);                                                                                                                                                                                     setState('wifilight.0.192_168_178_93.rgb', rgb);                                                                                                                                                                                     setState('wifilight.0.192_168_178_95.rgb', rgb);                                                                                                                                                                                  }, 3000);                                                                                                                                                                                  setTimeout(function() {                                                                                                                                                                                     setState('wifilight.0.192_168_178_90.bri', 20);                                                                                                                                                                                     setState('wifilight.0.192_168_178_93.bri', 20);                                                                                                                                                                                     setState('wifilight.0.192_168_178_95.bri', 20);                                                                                                                                                                                  }, 5000);                                                                                                                                                                               }                                                                                                                                                                            });
    

    Einfach am ende des Scripts hinzufügen?

    paul53P Offline
    paul53P Offline
    paul53
    schrieb am zuletzt editiert von paul53
    #27

    @Benni-Wartmann sagte:

    Einfach am ende des Scripts hinzufügen?

    Nein, einfach die Funktion

    schedule({astro: "sunset"}, function () {
       if(tv) licht(true);
    });
    

    erweitern bzw. die vorhandene ersetzen.

    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
    • BENNI32154B Offline
      BENNI32154B Offline
      BENNI32154
      schrieb am zuletzt editiert von
      #28

      @paul53 said in [gelöst]Licht einschalten, wenn TV an ist (ab Sonnenuntergang bis Sonnenaufgang):

                                                                                                                                  schedule({astro: "sunset"}, function () {                                                                                                                                                                               if(tv) licht(true);                                                                                                                                                                            });
      

      Also so

      const idTV     = 'lgtv.0.states.on';
      const idLicht1 = 'wifilight.0.192_168_178_95.on';
      const idLicht2 = 'wifilight.0.192_168_178_96.on';
      const idLicht3 = 'wifilight.0.192_168_178_97.on';
       
      var tv = getState(idTV).val;
       
      function licht(ein) {
         setState(idLicht1, ein);
         setState(idLicht2, ein);
         setState(idLicht3, ein);
         var txt = 'ausgeschaltet';
         if(ein) txt = 'eingeschaltet'; 
         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: "sunrise"}, function () {
         licht(false);
      });
      
      schedule({astro: "sunrise"}, function () {
         if(tv) {
            licht(true);
            setTimeout(function() {
               var rgb = '#0000ff'; // ausprobieren !
               setState('wifilight.0.192_168_178_95.rgb', rgb);
               setState('wifilight.0.192_168_178_96.rgb', rgb);
               setState('wifilight.0.192_168_178_97.rgb', rgb);
            }, 3000);
            setTimeout(function() {
               setState('wifilight.0.192_168_178_95.bri', 20);
               setState('wifilight.0.192_168_178_96.bri', 20);
               setState('wifilight.0.192_168_178_97.bri', 20);
            }, 5000);
         }
      });
      

      oder habe ich einen Fehler gemacht?

      paul53P 1 Antwort Letzte Antwort
      0
      • BENNI32154B BENNI32154

        @paul53 said in [gelöst]Licht einschalten, wenn TV an ist (ab Sonnenuntergang bis Sonnenaufgang):

                                                                                                                                    schedule({astro: "sunset"}, function () {                                                                                                                                                                               if(tv) licht(true);                                                                                                                                                                            });
        

        Also so

        const idTV     = 'lgtv.0.states.on';
        const idLicht1 = 'wifilight.0.192_168_178_95.on';
        const idLicht2 = 'wifilight.0.192_168_178_96.on';
        const idLicht3 = 'wifilight.0.192_168_178_97.on';
         
        var tv = getState(idTV).val;
         
        function licht(ein) {
           setState(idLicht1, ein);
           setState(idLicht2, ein);
           setState(idLicht3, ein);
           var txt = 'ausgeschaltet';
           if(ein) txt = 'eingeschaltet'; 
           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: "sunrise"}, function () {
           licht(false);
        });
        
        schedule({astro: "sunrise"}, function () {
           if(tv) {
              licht(true);
              setTimeout(function() {
                 var rgb = '#0000ff'; // ausprobieren !
                 setState('wifilight.0.192_168_178_95.rgb', rgb);
                 setState('wifilight.0.192_168_178_96.rgb', rgb);
                 setState('wifilight.0.192_168_178_97.rgb', rgb);
              }, 3000);
              setTimeout(function() {
                 setState('wifilight.0.192_168_178_95.bri', 20);
                 setState('wifilight.0.192_168_178_96.bri', 20);
                 setState('wifilight.0.192_168_178_97.bri', 20);
              }, 5000);
           }
        });
        

        oder habe ich einen Fehler gemacht?

        paul53P Offline
        paul53P Offline
        paul53
        schrieb am zuletzt editiert von paul53
        #29

        @Benni-Wartmann sagte:

        habe ich einen Fehler gemacht?

        "sunrise" --> "sunset"

        Zum Testen mal {astro: "sunset"} durch einen Zeitstring ersetzen, z.B. "30 15 * * *". Vorher TV einschalten.

        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

        BENNI32154B 1 Antwort Letzte Antwort
        0
        • paul53P paul53

          @Benni-Wartmann sagte:

          habe ich einen Fehler gemacht?

          "sunrise" --> "sunset"

          Zum Testen mal {astro: "sunset"} durch einen Zeitstring ersetzen, z.B. "30 15 * * *". Vorher TV einschalten.

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

          @paul53 said in [gelöst]Licht einschalten, wenn TV an ist (ab Sonnenuntergang bis Sonnenaufgang):

          Zum Testen mal {astro: "sunset"} durch einen Zeitstring ersetzen, z.B. "30 15 * * *".

          durch was genau ersetzen, damit es jetzt funktioniert?

          paul53P 1 Antwort Letzte Antwort
          0
          • BENNI32154B BENNI32154

            @paul53 said in [gelöst]Licht einschalten, wenn TV an ist (ab Sonnenuntergang bis Sonnenaufgang):

            Zum Testen mal {astro: "sunset"} durch einen Zeitstring ersetzen, z.B. "30 15 * * *".

            durch was genau ersetzen, damit es jetzt funktioniert?

            paul53P Offline
            paul53P Offline
            paul53
            schrieb am zuletzt editiert von
            #31

            @Benni-Wartmann

            schedule('40 15 * * *', function () {
               if(tv) {
            

            für 15:40 Uhr.

            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

            BENNI32154B 1 Antwort Letzte Antwort
            0
            • paul53P paul53

              @Benni-Wartmann

              schedule('40 15 * * *', function () {
                 if(tv) {
              

              für 15:40 Uhr.

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

              @paul53 Hab es getestet. Licht "192_168_178_95" und "192_168_178_97" schalten sich für wenige Sekunden auf Blau und schalten sich dann auf originalzustand zurück. Licht "192_168_178_96" schaltet sich auf weiß für wenige sekunden und dann wieder auf vorherigen zustand.

              EDIT:Durch die Farbe #0000ff00 sind alle auf Blau, schalten sich aber zurück. (außer "192_168_178_97",bleibt blau)

              noch ein EDIT: wenn man den timeout raus nimmt, funktioniert "192_168_178_95" perfekt, bleibt blau und ist gedimmt, Licht "192_168_178_96" ist blau, aber nicht gedimmt. Licht "192_168_178_97" hat sich nur gedimmt, farbe nicht geändert

              paul53P 1 Antwort Letzte Antwort
              0
              • BENNI32154B BENNI32154

                @paul53 Hab es getestet. Licht "192_168_178_95" und "192_168_178_97" schalten sich für wenige Sekunden auf Blau und schalten sich dann auf originalzustand zurück. Licht "192_168_178_96" schaltet sich auf weiß für wenige sekunden und dann wieder auf vorherigen zustand.

                EDIT:Durch die Farbe #0000ff00 sind alle auf Blau, schalten sich aber zurück. (außer "192_168_178_97",bleibt blau)

                noch ein EDIT: wenn man den timeout raus nimmt, funktioniert "192_168_178_95" perfekt, bleibt blau und ist gedimmt, Licht "192_168_178_96" ist blau, aber nicht gedimmt. Licht "192_168_178_97" hat sich nur gedimmt, farbe nicht geändert

                paul53P Offline
                paul53P Offline
                paul53
                schrieb am zuletzt editiert von
                #33

                @Benni-Wartmann Da alle Lichter im Skript gleich behandelt werden, können die Unterschiede nicht am Skript liegen.

                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

                BENNI32154B 2 Antworten Letzte Antwort
                0
                • paul53P paul53

                  @Benni-Wartmann Da alle Lichter im Skript gleich behandelt werden, können die Unterschiede nicht am Skript liegen.

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

                  @paul53 said in [gelöst]Licht einschalten, wenn TV an ist (ab Sonnenuntergang bis Sonnenaufgang):

                  @Benni-Wartmann Da alle Lichter im Skript gleich behandelt werden, können die Unterschiede nicht am Skript liegen.

                  Also ich hab es jetzt hinbekommen.

                  schedule('17 16 * * *', function () {
                     if(tv) {
                        licht(true);
                           var cmd = 'r:0, g:0, b:100, on:true, transition:0';{ // ausprobieren !
                           setState('wifilight.0.192_168_178_95.command', cmd);
                           setState('wifilight.0.192_168_178_96.command', cmd);
                           setState('wifilight.0.192_168_178_97.command', cmd);
                        }
                                  
                     }
                  });
                  

                  Ich habe die Dimm-Funktion komplett rausgenommen, trotzdem dimmt er auf die perfekte Helligkeit :)

                  1 Antwort Letzte Antwort
                  0
                  • paul53P paul53

                    @Benni-Wartmann Da alle Lichter im Skript gleich behandelt werden, können die Unterschiede nicht am Skript liegen.

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

                    @paul53 Leider funktioniert es jetzt wieder nicht.. Kann man es irgendwie über alexa2 zum laufen bekommen?Unbenannt.PNG Also über die Gruppe Licht

                    paul53P 1 Antwort Letzte Antwort
                    0
                    • BENNI32154B BENNI32154

                      @paul53 Leider funktioniert es jetzt wieder nicht.. Kann man es irgendwie über alexa2 zum laufen bekommen?Unbenannt.PNG Also über die Gruppe Licht

                      paul53P Offline
                      paul53P Offline
                      paul53
                      schrieb am zuletzt editiert von
                      #36

                      @Benni-Wartmann sagte:

                      Kann man es irgendwie über alexa2 zum laufen bekommen?

                      Mit Alexa habe ich nichts am Hut, bin also der falsche Ansprechpartner.

                      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

                      BENNI32154B 1 Antwort Letzte Antwort
                      0
                      • paul53P paul53

                        @Benni-Wartmann sagte:

                        Kann man es irgendwie über alexa2 zum laufen bekommen?

                        Mit Alexa habe ich nichts am Hut, bin also der falsche Ansprechpartner.

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

                        @paul53 said in [gelöst]Licht einschalten, wenn TV an ist (ab Sonnenuntergang bis Sonnenaufgang):

                        Mit Alexa habe ich nichts am Hut, bin also der falsche Ansprechpartner.

                        Hmm okay, aber an irgendetwas muss es ja liegen, weil es ja nicht klappt

                        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

                        675

                        Online

                        32.6k

                        Benutzer

                        81.9k

                        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