NEWS
Hue Lampen mittels Skript über .vis steuern - Fehler im Skript?
-
Hallo zusammen,
ich habe folgendes Skript erstellt:
( {id: "javascript.0.scriptEnabled.Lichtsteuerung.Wohnzimmer.Dummy_Skript", change: "any"}, function (obj) { if (getState("hue.0.Philips_hue.Fernseher.on").val === true) { setState("hue.0.Philips_hue.Fernseher.on", false); setState("hue.0.Philips_hue.Fernseher.level", 0); setState("hue.0.Philips_hue.Fernseher.bri", 0); } else { setState("hue.0.Philips_hue.Fernseher.on", true); setState("hue.0.Philips_hue.Fernseher.level", 100); setState("hue.0.Philips_hue.Fernseher.bri", 254); } } );Lasse ich den else Teil weg, funktioniert das Skript über vis.
Mit else Teil sieht es so aus als würde der if Teil und dann der else Teil ausgeführt ohne die Bedingung zu berücksichtigen. Ich meine das an anhand der Änderungen der Werte in der Objektanzeige zu sehen.
Spannend ist, dass wenn ich das Dummy Skript (also das Triggerskript) manuell starte und stoppe funktioniert das Skript einwandfrei.
Wo habe ich den Fehler eingebaut? Oder denke ich nur verkehrt?
Vielen Dank schon mal
-
"javascript.0.scriptEnabled.Lichtsteuerung.Wohnzimmer.Dummy_Skript" `
als Trigger ? Keine eigenen Datenpunkte unter javascript.0.scriptEnabled verwenden !!Was soll das Skript machen ? Ich vermute mal, die Funktion soll als Taste in Vis ausgelöst werden. Dann erzeuge den Datenpunkt besser im Skript.
createState('Lichtsteuerung.Wohnzimmer.Taste', true, {type: 'boolean'}); on({id: 'javascript.0.Lichtsteuerung.Wohnzimmer.Taste'}, function() { if (getState("hue.0.Philips_hue.Fernseher.on").val === true) { setState("hue.0.Philips_hue.Fernseher.on", false); setState("hue.0.Philips_hue.Fernseher.level", 0); setState("hue.0.Philips_hue.Fernseher.bri", 0); } else { setState("hue.0.Philips_hue.Fernseher.on", true); setState("hue.0.Philips_hue.Fernseher.level", 100); setState("hue.0.Philips_hue.Fernseher.bri", 254); } });Skripte bitte in Code tags posten !
-
"javascript.0.scriptEnabled.Lichtsteuerung.Wohnzimmer.Dummy_Skript" `
als Trigger ? Keine eigenen Datenpunkte unter javascript.0.scriptEnabled verwenden !!Ich habe keinen eigenen Datenpunkt verwendet, sondern den automatisch bereitgestellten.
Was soll das Skript machen ? Ich vermute mal, die Funktion soll als Taste in Vis ausgelöst werden. Dann erzeuge den Datenpunkt besser im Skript.
Richtig, die Funktion soll mittels eines Button in Vis ausgelöst werden.
createState('Lichtsteuerung.Wohnzimmer.Taste', true, {type: 'boolean'}); on({id: 'javascript.0.Lichtsteuerung.Wohnzimmer.Taste'}, function() { if (getState("hue.0.Philips_hue.Fernseher.on").val === true) { setState("hue.0.Philips_hue.Fernseher.on", false); setState("hue.0.Philips_hue.Fernseher.level", 0); setState("hue.0.Philips_hue.Fernseher.bri", 0); } else { setState("hue.0.Philips_hue.Fernseher.on", true); setState("hue.0.Philips_hue.Fernseher.level", 100); setState("hue.0.Philips_hue.Fernseher.bri", 254); } });Skripte bitte in Code tags posten !
habe ich gemacht - danke für die Info `
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