NEWS
[gelöst]Licht einschalten, wenn TV an ist (ab Sonnenuntergang bis Sonnenaufgang)
-
@Benni-Wartmann sagte:
Licht auf Blau geht und sich auf 20% Helligkeit dimmt, wenn die Sonne untergeht und der TV an ist?
Versuche es mal so:
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); } });@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?
-
@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?
-
@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?
-
@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?
-
@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.
@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?
-
@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?
-
@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
-
@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
-
@Benni-Wartmann Da alle Lichter im Skript gleich behandelt werden, können die Unterschiede nicht am Skript liegen.
@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 :)
-
@Benni-Wartmann Da alle Lichter im Skript gleich behandelt werden, können die Unterschiede nicht am Skript liegen.
@paul53 Leider funktioniert es jetzt wieder nicht.. Kann man es irgendwie über alexa2 zum laufen bekommen?
Also über die Gruppe Licht -
@paul53 Leider funktioniert es jetzt wieder nicht.. Kann man es irgendwie über alexa2 zum laufen bekommen?
Also über die Gruppe Licht -
@Benni-Wartmann sagte:
Kann man es irgendwie über alexa2 zum laufen bekommen?
Mit Alexa habe ich nichts am Hut, bin also der falsche Ansprechpartner.
@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
Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.
Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.
Mit deinem Input könnte dieser Beitrag noch besser werden 💗
Registrieren Anmelden