NEWS
gelöst: Alexa Logikwert
-
@grizzlyco
Ein DP im Alexa Adapter -
@grizzlyco
Hast Du schonmal etwas mit Blockly(Script) gemacht? -
@grizzlyco
Dann mal ran und hier posten falls es nicht so klappt wie gewünscht ;-) -
@grizzlyco
wenn es läuft, oben editieren und gelöst dazu schreiben, dann noch das funktionierende Ergebnis hier rein.
Erstens weil mans eventuell optimieren kann und zweitens damit andere User als Vorlage nutzen können :-) -
Lösung folgt
on({id: 'alexa2.0.History.summary', change: "ne"}, function (obj) { var value = obj.state.val; var oldValue = obj.oldState.val; if (getState("alexa2.0.History.name").val == 'Schlafzimmer') { // Schalfzimmer if (getState("alexa2.0.History.summary").val == 'ist anton zuhause' && getState("surepetcareio.0.Bahnstr.pets.0").val == true) { setState("alexa2.0.Echo-Devices.XXXXXXXX.Commands.speak"/*speak*/, 'Ja, Anton ist zuhause'); } else if (getState("alexa2.0.History.summary").val == 'ist anton zuhause' && getState("surepetcareio.0.Bahnstr.pets.0").val == false) { setState("alexa2.0.Echo-Devices.XXXXXXXX.Commands.speak"/*speak*/, 'Nein, Anton ist draussen'); } } else if (getState("alexa2.0.History.name").val == 'Wohnzimmer') { // Wohnzimmer if (getState("alexa2.0.History.summary").val == 'ist anton zuhause' && getState("surepetcareio.0.Bahnstr.pets.0").val == true) { setState("alexa2.0.Echo-Devices.XXXXXXXX.Commands.speak"/*speak*/, 'Ja, Anton ist zuhause'); } else if (getState("alexa2.0.History.summary").val == 'ist anton zuhause' && getState("surepetcareio.0.Bahnstr.pets.0").val == false) { setState("alexa2.0.Echo-Devices.XXXXXXXX.Commands.speak"/*speak*/, 'Nein, Anton ist draussen'); } } else if (getState("alexa2.0.History.name").val == 'Bad') { // Bad if (getState("alexa2.0.History.summary").val == 'ist anton zuhause' && getState("surepetcareio.0.Bahnstr.pets.0").val == true) { setState("alexa2.0.Echo-Devices.XXXXXXXX.Commands.speak"/*speak*/, 'Ja, Anton ist zuhause'); } else if (getState("alexa2.0.History.summary").val == 'ist anton zuhause' && getState("surepetcareio.0.Bahnstr.pets.0").val == false) { setState("alexa2.0.Echo-Devices.XXXXXXXX.Commands.speak"/*speak*/, 'Nein, Anton ist draussen'); } } else if (getState("alexa2.0.History.name").val == 'Spielzimmer') { // Spielzimmer if (getState("alexa2.0.History.summary").val == 'ist anton zuhause' && getState("surepetcareio.0.Bahnstr.pets.0").val == true) { setState("alexa2.0.Echo-Devices.XXXXXXXX.Commands.speak"/*speak*/, 'Ja, Anton ist zuhause'); } else if (getState("alexa2.0.History.summary").val == 'ist anton zuhause' && getState("surepetcareio.0.Bahnstr.pets.0").val == false) { setState("alexa2.0.Echo-Devices.XXXXXXXX.Commands.speak"/*speak*/, 'Nein, Anton ist draussen'); } } else if (getState("alexa2.0.History.name").val == 'Timo Schlafzimmer') { // Timo Schafzimmer if (getState("alexa2.0.History.summary").val == 'ist anton zuhause' && getState("surepetcareio.0.Bahnstr.pets.0").val == true) { setState("alexa2.0.Echo-Devices.XXXXXXXX.Commands.speak"/*speak*/, 'Ja, Anton ist zuhause'); } else if (getState("alexa2.0.History.summary").val == 'ist anton zuhause' && getState("surepetcareio.0.Bahnstr.pets.0").val == false) { setState("alexa2.0.Echo-Devices.XXXXXXXX.Commands.speak"/*speak*/, 'Nein, Anton ist draussen'); } } else if (getState("alexa2.0.History.name").val == 'Küche') { // Küche if (getState("alexa2.0.History.summary").val == 'ist anton zuhause' && getState("surepetcareio.0.Bahnstr.pets.0").val == true) { setState("alexa2.0.Echo-Devices.XXXXXXXX.Commands.speak"/*speak*/, 'Ja, Anton ist zuhause'); } else if (getState("alexa2.0.History.summary").val == 'ist anton zuhause' && getState("surepetcareio.0.Bahnstr.pets.0").val == false) { setState("alexa2.0.Echo-Devices.XXXXXXXX.Commands.speak"/*speak*/, 'Nein, Anton ist draussen'); } } }); -
Lösung folgt
on({id: 'alexa2.0.History.summary', change: "ne"}, function (obj) { var value = obj.state.val; var oldValue = obj.oldState.val; if (getState("alexa2.0.History.name").val == 'Schlafzimmer') { // Schalfzimmer if (getState("alexa2.0.History.summary").val == 'ist anton zuhause' && getState("surepetcareio.0.Bahnstr.pets.0").val == true) { setState("alexa2.0.Echo-Devices.XXXXXXXX.Commands.speak"/*speak*/, 'Ja, Anton ist zuhause'); } else if (getState("alexa2.0.History.summary").val == 'ist anton zuhause' && getState("surepetcareio.0.Bahnstr.pets.0").val == false) { setState("alexa2.0.Echo-Devices.XXXXXXXX.Commands.speak"/*speak*/, 'Nein, Anton ist draussen'); } } else if (getState("alexa2.0.History.name").val == 'Wohnzimmer') { // Wohnzimmer if (getState("alexa2.0.History.summary").val == 'ist anton zuhause' && getState("surepetcareio.0.Bahnstr.pets.0").val == true) { setState("alexa2.0.Echo-Devices.XXXXXXXX.Commands.speak"/*speak*/, 'Ja, Anton ist zuhause'); } else if (getState("alexa2.0.History.summary").val == 'ist anton zuhause' && getState("surepetcareio.0.Bahnstr.pets.0").val == false) { setState("alexa2.0.Echo-Devices.XXXXXXXX.Commands.speak"/*speak*/, 'Nein, Anton ist draussen'); } } else if (getState("alexa2.0.History.name").val == 'Bad') { // Bad if (getState("alexa2.0.History.summary").val == 'ist anton zuhause' && getState("surepetcareio.0.Bahnstr.pets.0").val == true) { setState("alexa2.0.Echo-Devices.XXXXXXXX.Commands.speak"/*speak*/, 'Ja, Anton ist zuhause'); } else if (getState("alexa2.0.History.summary").val == 'ist anton zuhause' && getState("surepetcareio.0.Bahnstr.pets.0").val == false) { setState("alexa2.0.Echo-Devices.XXXXXXXX.Commands.speak"/*speak*/, 'Nein, Anton ist draussen'); } } else if (getState("alexa2.0.History.name").val == 'Spielzimmer') { // Spielzimmer if (getState("alexa2.0.History.summary").val == 'ist anton zuhause' && getState("surepetcareio.0.Bahnstr.pets.0").val == true) { setState("alexa2.0.Echo-Devices.XXXXXXXX.Commands.speak"/*speak*/, 'Ja, Anton ist zuhause'); } else if (getState("alexa2.0.History.summary").val == 'ist anton zuhause' && getState("surepetcareio.0.Bahnstr.pets.0").val == false) { setState("alexa2.0.Echo-Devices.XXXXXXXX.Commands.speak"/*speak*/, 'Nein, Anton ist draussen'); } } else if (getState("alexa2.0.History.name").val == 'Timo Schlafzimmer') { // Timo Schafzimmer if (getState("alexa2.0.History.summary").val == 'ist anton zuhause' && getState("surepetcareio.0.Bahnstr.pets.0").val == true) { setState("alexa2.0.Echo-Devices.XXXXXXXX.Commands.speak"/*speak*/, 'Ja, Anton ist zuhause'); } else if (getState("alexa2.0.History.summary").val == 'ist anton zuhause' && getState("surepetcareio.0.Bahnstr.pets.0").val == false) { setState("alexa2.0.Echo-Devices.XXXXXXXX.Commands.speak"/*speak*/, 'Nein, Anton ist draussen'); } } else if (getState("alexa2.0.History.name").val == 'Küche') { // Küche if (getState("alexa2.0.History.summary").val == 'ist anton zuhause' && getState("surepetcareio.0.Bahnstr.pets.0").val == true) { setState("alexa2.0.Echo-Devices.XXXXXXXX.Commands.speak"/*speak*/, 'Ja, Anton ist zuhause'); } else if (getState("alexa2.0.History.summary").val == 'ist anton zuhause' && getState("surepetcareio.0.Bahnstr.pets.0").val == false) { setState("alexa2.0.Echo-Devices.XXXXXXXX.Commands.speak"/*speak*/, 'Nein, Anton ist draussen'); } } });@grizzlyco
Ui, das ganze aber besser noch als "Code" darstellen lassen ("</>" im Forum Editor),

Dann ist es besser nutzbar. ;-)Und evtl. die "G..." raus editieren, das sind die Seriennummern Deiner Echos.
Wobei ich nicht weiß, ob "das Böse" damit wirklich etwas anfangen kann. ;)Was ich noch grob erkenne, Du Prüfstand auf Name des Echos, wenn Du auf Seriennummer prüfst, kannst Du so programmieren, dass Du nicht jeden einzeln angeben musst.
Dann kannst Du Dir den Speakdatenpunkt (den Pfad) mit Seriennummer zusammen basteln. :) -
@grizzlyco
Ui, das ganze aber besser noch als "Code" darstellen lassen ("</>" im Forum Editor),

Dann ist es besser nutzbar. ;-)Und evtl. die "G..." raus editieren, das sind die Seriennummern Deiner Echos.
Wobei ich nicht weiß, ob "das Böse" damit wirklich etwas anfangen kann. ;)Was ich noch grob erkenne, Du Prüfstand auf Name des Echos, wenn Du auf Seriennummer prüfst, kannst Du so programmieren, dass Du nicht jeden einzeln angeben musst.
Dann kannst Du Dir den Speakdatenpunkt (den Pfad) mit Seriennummer zusammen basteln. :)
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