Ich habe inzwischen eine Lösung mit den Amazon Echo Buttons im Einsatz, die ich Euch nicht vorenthalten möchte. Es ist ein echter work-around, aber funktioniert soweit.
Die Idee:
Die Bluetooth-Buttons von Amazon können jetzt in der Alexa-App ein unterstütztes Smarthome-Gerät steuern. Dieses wiederum kann ich als Indikator nehmen um das tatsächliche Zielgerät per ioBroker-Script indirekt zu steuern.
Die Hürden:
Die Nanoleaf Lightpanels können zwar per Alexa gesteuert werden, sind aber nicht als direkt steuerbares Smarthome-Gerät auswählbar für die Buttons
Die Nutzung des Buttons kann jeweils nur eine Aktion auswählen... z.B. anschalten oder ausschalten. Ein "Toggel-Modus" ist nicht vorgesehen.
Die Lösung:
Als Zwischen-Indikator (=direkte Echo-Unterstützung) habe ich eine Steckdose von TPLink (Modell HS100) verwendet.
In der Alexa-App habe ich eine Routine erstellt: Aktion -> "Button drücken"; Reaktion -> "schalte die HS100 Steckdose an"
Die HS100 Steckdose ist in ioBroker eingebunden (Polling auf 3 Sekunden)
Ein ioBroker Script schaut nach ob die Steckdose an ist, schaltet diese dann automatisch wieder aus, toggelt das Licht von den Nanoleaf Lightpanels und wartet weiter auf das Anschalten der Steckdose
Hier das Script:
var
hs_obj = "hs100.0.192_168_178_28.state",
led_obj = "nanoleaf-lightpanels.0.LightPanels.state",
hs_on = false,
led_on = false;
on({id: hs_obj}, function (obj) {
hs_on = getState(hs_obj).val;
if (hs_on) {
setState(hs_obj, false);
led_on = getState(led_obj).val;
if (led_on) {
setState(led_obj, false);
console.log("### Button Light [OFF] ### Alt: " + led_on);
} else {
setState(led_obj, true);
console.log("### Button Light [ON] ### Alt: " + led_on);
}
}
})
Keine elegante Lösung, aber für mich erst einmal besser als nichts.
Ciao Mr.Fisch