Wenn es um die Einbindung von Alexa in ioBroker geht führt kein Weg am entsprechenden Adapter vorbei. Dieser ermöglicht es eigene Sprachausgaben zu senden, wie z.B. eine Info, dass die Waschmaschine fertig ist und auch hat der Adapter noch einiges mehr drauf. Bleib dabei!
Der Alexa Adapter

Installation und Adapter Basics
Bevor wir uns gleich anschauen wie du Alexa mit ioBroker steuern kannst kümmern wir uns wie gewohnt um die Einrichtung des Adapters.
Nach dem Hinzufügen einer Instanz werden wir in die Konfiguration geworfen.
Als ersten Schritt müssen wir das Amazon Konto mit dem Adapter verknüpfen. Dazu klicken wir oben auf den Link zum Anmelden und geben die Kontodaten ein.


Wir erhalten die Nachricht dass das Cookie erfolgreich empfangen wurde und können das Fenster jetzt schließen. Zurück in der Alexa Oberfläche aktualisieren wir das Fenster mit einem Klick auf F5 und siehe da, die Verbindung ist bereits hergestellt.

Sollte das Cookie erstellen hier aus irgendwelchen Gründen scheitern hilft es vielleicht einen Blick in den ioBroker Log zu werfen. Hier ist dann ein Link zu finden über den das Cookie erstellt werden kann. Diesen also kopieren und im Browserfenster einfügen.
Diesen Beitrag als Video ansehen!


Dank Dir




Zurück zur Alexa Konfiguration die schon fast abgeschlossen ist.
Die Push Verbindung lassen wir aktiviert, so haben wir eine Echtzeit Aktualisierung der Daten bzw. Objekte. Andernfalls kann man sie auch deaktivieren und eine langsamere Aktualisierung, geregelt am untenstehenden Pulling Intervall einstellen.

Über den Reiter Cookie können wir nachsehen ob unser eben, durch das anmelden, erstelltes Cookie auch wirklich eingetragen wurde. Auch kann man hier das Cookie zurücksetzen oder gar manuell nachtragen. Das manuelle nachtragen ist etwas komplexer und unter dem angezeigten Link beschrieben, sollte das Einloggen nicht funktioniert haben dann kann man darauf zurückgreifen.

Erläuterung zu "Bespoken"
Oben rechts finden wir noch den Reiter “Bespoken Virtuelles Gerät”. Leider funktioniert diese Option zur jetzigen Zeit nicht richtig, ich möchte aber kurz erläutern was es damit aufsich hat.
Bespoken soll es ermöglichen einen eingegebenen Text zu Sprache umzuwandeln und diese an die Alexa Cloud zu senden. Wenn man also bspw. Den Text “spiele mir die aktuellen single charts auf dem echo dot im wohnzimmer” eingibt (also im Datenpunkt von ioBroker) soll Bespoken diesen erfassen und in eine Sprachnachricht umwandeln um diese wiederum an Alexa zu senden, so dass diese den Befehl ausführen kann und die Single Charts im wohnzimmer abspielt.
Klingt vielleicht komplizierter als es eigentlich ist.
Leider funktioniert der Bespoken Teil wie gesagt derzeit nicht richtig und auch ist ein solches Konto nur für 30 Tage kostenlos, so dass wir hier nicht weiter darauf eingehen wollen und gleich damit weitermachen uns die Objekte anzusehen die der Alexa Adapter zur Verfügung stellt.
Dazu klicke ich also links im Menü auf Objekte und öffne den Pfad der Alexa Instanz.

Nachricht an Personenkontakte senden
Wir finden ganz oben den Ordner Contacts. Hier sind sämtliche Kontakte aufgeführt von Freunden und Verwandten die ebenfalls Alexa verwenden. Man kann hier über das Feld “text message” eine Nachricht an jene senden die diese Funktion eingeschaltet haben.
Das entspricht der Alexa Funktion wenn man ihr per Sprache mitteilt sie soll eine Nachricht an Person x senden. Der gelbe Ring leuchtet dann auf und man kann sich die Nachricht anhören. Testen kann man die Funktion hier indem man einfach an sich selber eine Nachricht sendet.

Echo-Dot mittels Adapter steuern
Spannend ist hier der Datenpunkt speak im Ordner commands. Hier können wir einen Text verfassen der dann von dem entsprechenden Echo ausgegeben wird.
Dieses Objekt lässt sich natürlich auch mit Blockly steuern, das schauen wir uns gleich auch noch an, zuvor möchte ich gerne noch einige interessante Datenpunkte zeigen und erwähnen, dass der speak Datenpunkt auch mit einer bestimmten Lautstärke gesteuert werden kann. Möchten wir eine Ausgabe von nur 10% Lautstärke dann muss im Feld eine 10 gefolgt von einem Semikolon und dem Text eingegeben werden. Jetzt spricht Alexa mit nur 10% Lautstärke.

Wenn man einen Kalender mit Alexa verknüpft hat können die Kalenderfunktionen hier praktisch sein. Man könnte sich ein Blockly bauen welches die Anwesenheit erkennt und wenn man nach Hause kommt den Kalender vorgetragen bekommt. Knifflig wirds allerdings wenn mehrere Echos verwendet werden, daher hab ich immer einen Echo Dot der nur für Mitteilungen vom ioBroker verwendet wird.
Neben der normalen Funktion für speak gibt es noch die erweiterte SSML Funktion. Hier können sogenannte XML Strings eingetragen werden. So kann bspw. Mit einer anderen Stimme gesprochen, geflüstert oder buchstabiert werden. Eine nette Spielerei wie ich finde. Ich füge hier mal einen Text ein.

Hallo MarleneHallo, ich bin Marlene, in der Videobeschreibung erfährst du mehr darüber wie dieses Feld funktioniert. .

Den entsprechenden Foren Beitrag zur Funktion findest du hier.
Schauen wir mal in den Ordner Music Provider. Hier hat man die Möglichkeit per Text ein Lied oder Interpreten einzugeben um diesen über den gewünschten Provider abzuspielen. Ich gebe Fritz Kalkbrenner bei Spotify ein und mir wird ein Lied von dem Künstler abgespielt. Durch einen Klick auf deviceStop im Ordner Commands kann man sämtliche laufende Aktionen und damit das laufende Lied wieder stoppen.

Natürlich lassen sich diese Datenpunkte alle mit Blockly steuern so dass den Möglichkeiten da wenige Grenzen gesetzt sind.
Über den Ordner Player lässt sich der Player auch steuern, so dass wir durch die Musik durchschalten und uns Informationen zum aktuell Laufenden Track anzeigen lassen können. Auch die Lautstärke kann hier angepasst werden.

Der Alexa Adapter bietet also wunderbare Möglichkeiten zur Wiedergabe und Steuerung von Musik und wenn man eine Visualisierung hat kann man sich diese Informationen auch dort darstellen lassen bzw den Musik Player steuern.
Im Ordner Routinen finden wir sämtliche über die App erstellte Routinen die wir hier natürlich auch auslösen können. So ist hier zum beispiel die Guten morgen Routine die Aktiv wird wenn man “Alexa, guten morgen” sagt. Man kann also über die Alexa App Routinen erstellen, zum Beispiel um Geräte zu steuern und diese Routine hier über den Adapter dann abrufen und starten.

Um Geräte zu steuern haben wir aber noch weitere Möglichkeiten mit dem Adapter, verlassen wir mal die Ordnerstruktur des Echo Dots und schauen uns die Smart Home Devices an. Hier finden wir alle Geräte die mit Alexa verknüpft sind wieder. So lassen sich auch Geräte anderer Hersteller, wie die Lampen von Philips Hue hier steuern.
Natürlich ist diese Steuerung dann in gewisser Weise eingeschränkt. Eben so, wie Alexa die Steuerung ermöglicht.

Mit den Objekten des Alexa Adapters kann man sich also wirklich lange beschäftigen, ausprobieren und herumspielen und natürlich auch sinnvolle Steuerungen basteln, zum beispiel mit Blockly.
Waschmaschinen Skript auf Sprachausgabe umbauen
Bei meinem Beitrag als wir eine Waschmaschine Smart gemacht haben kam der Wunsch auf anstelle einer Telegram Nachricht zu senden eben eine Alexa Sprachausgabe zu senden. Wie einfach das funktioniert möchte ich gerne anhand des vielleicht bereits bekannten Waschmaschinen Skripts zeigen.
Anstelle des senden an Telegram Bausteins fügen wir hier einen einfachen steuere Objekt ID Baustein ein. Wir nehmen den “erstelle Text aus” Baustein der unsere Nachricht ergibt und ziehen ihn in den “Steuere Objekt mit” Baustein hinein.
Jetzt müssen wir natürlich noch das Objekt definieren. Dazu klicken wir auf Objekt ID und navigieren zur Alexa Instanz. Unter Echo Devices und dann dem gewünschten Echo klicken wir noch auf den Ordner commands und finden hier den Datenpunkt speak wieder den wir uns eben bereits angesehen haben.
Nun ändern wir den Text des Skripts noch mit der gewünschten Lautstärke, also in meinem Fall eine 50 davor und mit einem Semikolon getrennt dann den Rest des Textes. Hier entferne ich noch die für Telegram generierten Zeilenumbrüche und wenn die Waschmaschine fertig ist wird Alexa uns nun darüber informieren.

Alternativ könnte man auch einfach die Nachrichtenfunktion verwenden und eine Nachricht an sich selber senden. Da muss auch kein spezieller Echo-Dot gewählt sein und man ist ein wenig flexibler.
Wenn du meine Arbeit unterstützen möchtest würde ich mich freuen wenn du über diesen Link bei Amazon einkaufst! 🙂
- Chris
- März 7, 2022
- 10:57 pm
- No Comments