NEWS
[Gelöst] Nur ein Zustand in Scene aktivieren
-
Hallo zusammen,
Ich möchte gerne meinen Fernseher per Alexa ein- bzw. ausschalten.
Daher versuche mich an dem Erstellen einer Scene, bin aber Neuling in Sachen ioBroker.
Hierzu habe ich bereits den passenden Samsung Adapter installiert, mit dem ich den TV aber nur ausschalten kann.
Zum Einschalten habe ich ein Skript:
createState("javascript.0.TVEin", 0); // Generiert beim starten den Datenpunkt, wenn nicht vorhanden var wol = require('wake_on_lan'); // Lädt von ioBroker die das nötige Paket var myTV = "xx:xx:xx:xx:xx:xx:xx"; // MAC definieren // Ab hier automatisch on({id: "javascript.0.TVEin", change: 'any'}, function (obj) { wol.wake(myTV); log("Script WOL – TV aufgeweckt", "info"); } );
Nun möchte ich also eine Scene erstellen und die beiden Zustände hinzufügen.
Sieht dann so aus:
Mein Problem ist nun, dass die Scene offenbar immer beide Zustände aktiviert.
Bedeutet also folgendes:
Sollwert wahr:
TV ein –> schaltet aus
TV aus --> schaltet ein
Sollwert falsch:
TV ein --> schaltet aus
TV aus --> schaltet ein
Wie schaffe ich es also, dass nur einer der beiden Zustände aktiviert wird ??
Viele Grüße
-
Hallo,
ich nutze den Scene-Adapter nicht. Aber warum erzeugst du in dem Cload-Adapter nicht einfach zwei Zustände für den Fernseher.
1. "TV ein" mit Verweis auf deine entsprechende ID
2. "TV aus" mit Verweis auf deine entsprechende ID
-
Hallo,
ich nutze den Scene-Adapter nicht. Aber warum erzeugst du in dem Cload-Adapter nicht einfach zwei Zustände für den Fernseher.
1. "TV ein" mit Verweis auf deine entsprechende ID
2. "TV aus" mit Verweis auf deine entsprechende ID
Gruß Hicks `
Dann hätte ich ja zwei Geräte in der Liste…
-
Hmm, aber das ist doch egal, wenn´s so geht.
Wenn ich mir meine Liste vom Cloud-Adapter so angucke, kommt´s auf einen Eintrag mehr oder weniger auch nicht an :lol:
-
Du könntest die Logik direkt im Skript integrieren.
createState("javascript.0.TVEin", 0); // Generiert beim starten den Datenpunkt, wenn nicht vorhanden var wol = require('wake_on_lan'); // Lädt von ioBroker die das nötige Paket var myTV = "xx:xx:xx:xx:xx:xx:xx"; // MAC definieren // Ab hier automatisch on({id: "javascript.0.TVEin", change: 'any'}, function (obj) { if (obj.state.val) { //Fernseher wird eingeschaltet wol.wake(myTV); log("Script WOL – TV aufgeweckt", "info"); } else { //Fernseher wird ausgeschaltet setState("samsung.0.POWER_OFF", true); } });