NEWS
Instanzen/Befehle ändern
-
Hallo zusammen,
ich bin noch ganz frisch mit ioBroker da ich mir vor kurzem den Amazon Echo gekauft habe. Ich möchte gerne zusätzlich meinen Fernseher etc. über Alexa bedienen.
ioBroker ist fertig installiert und mit Alexa über die Cloud verbunden.
Nun zu meinem Problem; Ich habe den Fernseher über den SamsungTV Adapter verbunden und als Adapter den Power.Standby switch eingestellt. Alles funktioniert soweit, jedoch muss ich jedesmal wenn ich z.B. den Fernseher ausschalten möchte "Fernseher An" sagen. Wie kann ich den Befehl von "An" auf "Aus" wechseln ?
Tut mir leid für diese dumme Frage aber ich finde sonst auch nichts im Internet hierzu. Ich hoffe ihr seid mir nicht zu böse
Falls ich mich unverständlich ausgedrückt habe, füge ich hier noch einen Screenshot hinzu.
~~![](</s><URL url=)http://fs5.directupload.net/images/170412/bphv7g22.jpg" />
Liebe Grüße~~
-
Genau das selbe Problem habe ich auch seit einem Monat habe nen LG TV. Ich sage inzwischen immer nur Alexa Fernseher.
An / Aus habe ich noch nicht hinbekommen.
-
Auch ne möglichkeit. Bei mir sagt sie dann leider dass der Befehl nicht gefunden wurde. Ich muss immer "An" sagen
-
Ihr könnt für den Fernseher einen eigenen "State" (Typ "boolean") anlegen der zwischen true/false hin und her schalten könnt.
Diesen dann in die Clould einbinden (anstelle des PowerToogle vom TV Adapter).
Diese "State" könnt ihr über Alexa dann mit ein/aus umschalten.
Dahinter noch ein Mini-Script (oder mit Blockly) erstellen das auf Änderungen beim "State" reagiert.
Bei jeder Änderung des States dann den PowerToogle "State" vom TV Adapter betätigen.
Auf diese Art und Weise könnte es z.B. auch steuern wenn man für EIN und AUS Befehle eigene States in einem Adapter hat.
In dem Fall müßte man halt in Abhängigkeit von true/false den entsprechenden State auslösen.
Ist aber für euren Anwendnungsfall nicht relevant, da hier scheinbar ein PowerToogle Befehl zum Einsatz kommt.
-
Danke für die Antwort!
Hat so alles funktioniert wie ich es mir vorgestellt habe
-
Ihr könnt für den Fernseher einen eigenen "State" (Typ "boolean") anlegen der zwischen true/false hin und her schalten könnt.
Diesen dann in die Clould einbinden (anstelle des PowerToogle vom TV Adapter).
Diese "State" könnt ihr über Alexa dann mit ein/aus umschalten.
Dahinter noch ein Mini-Script (oder mit Blockly) erstellen das auf Änderungen beim "State" reagiert.
Bei jeder Änderung des States dann den PowerToogle "State" vom TV Adapter betätigen.
Auf diese Art und Weise könnte es z.B. auch steuern wenn man für EIN und AUS Befehle eigene States in einem Adapter hat.
In dem Fall müßte man halt in Abhängigkeit von true/false den entsprechenden State auslösen.
Ist aber für euren Anwendnungsfall nicht relevant, da hier scheinbar ein PowerToogle Befehl zum Einsatz kommt. `
Könnte einer diesen Mini-Script hier reinschreiben und das ganze vorgehen für einen leihen ärklären ?
Mein Script sieht wie folgt aus zurzeit:
{ "_id": "lgtv.0.TV", "type": "state", "common": { "name": "TV", "role": "", "type": "boolean", "read": true, "write": true, "desc": "Manuell erzeugt", "def": false }, "native": {}, "from": "system.adapter.admin.0", "ts": 1512844105729, "acl": { "object": 1638, "state": 1638 } }
Vielen Dank.
-
Hi tobi26587,
Ich habe beim Javascript Adapter einen neuen "Ein-/Aus-Schalter" für den Monitor bzw. TV erstellt.
createState("SwitchStates.Other.MonitorBU_PowerToogle", false, { read: true, write: true, desc: "Monitor Büro (Samsung TV) ein-/ausschalten", type: "boolean" });
Das kannst Du einmal ausführen danach hast Du bei Deinem Javascript Adapter einen neuen State den Du auf "true" oder "false" schalten kannst.
Das neue Objekt im Javascript Adapter schaut für dieses Beispiel dann so aus:
javascript.0.SwitchStates.Other.MonitorBU_PowerToogle
Danach habe ich für dieses neue Objekt im Cloud Adapter ein neues Gerät eingefügt (siehe Bild).
~~![](</s><URL url=)<link_text text="http://forum.iobroker.net/download/file ... &mode=view">http://forum.iobroker.net/download/file.php?id=17745&mode=view</link_text>" />
Wenn Du nun in der Alexa App Deine Smarthome Geräte aktualisierst (bzw. nach neuen suchst), kannst Du bereits laut diesem Beispiel mit "Alexa. Schalte Monitor im Büro ein" bzw. Alexa, Schalte Monitor im Büro aus" eben dieses Objekt "javascript.0.SwitchStates.Other.MonitorBU_PowerToogle" zwischen "true" und "false" hin und herschalten.
Wenn das funktioniert bist Du schon fast am Ziel.
Nun erstellst Du Dir noch ein Script in dem Du das Objekt "javascript.0.SwitchStates.Other.MonitorBU_PowerToogle" überwachst.
on({id: "javascript.0.SwitchStates.Other.MonitorBU_PowerToogle")}, function(obj) { if(obj.state.val === true) { // hier eintragen was geschehen soll wenn Du das Objekt auf "true" setzt (= einschalten) } else { // hier eintragen was geschehen soll wenn Du das Objekt auf "false" setzt (= ausschalten) } });
Du wirst Deine Objekt vermutlich anders benennen. Das musst Du dann eben an den entsprechenden Stellen ändern.
Ich hoffe das beantwortet Deine Frage und hilft Dir bei der Umsetzung.
Gruß
Roland~~
1422_cloud_adapter.jpg