Hallo Zusammen,
da es ja gerade in ist, verschiedenste Amazon Alexa Einbindungen zu realisieren, hier noch eine etwas rudimentäre, dafür aber wohl die einfachste Einbindung mittels IFTTT.
Es gibt zwar keinen IFTTT Skill, Alexa spricht aber von Haus aus schon IFTTT. So triggert Alexa z.B. in IFTTT, wenn der Wecker klingelt, ein neues Lied abgespielt wird, … und viele mehr. Eine Liste der Trigger findet man hier https://ifttt.com/amazon_alexa
Man kann aber auch eigene Trigger ausführen, in dem man sagt „Alexa, trigger …“ und dann eine beliebige Phrase hinzufügt. In IFTTT kann man dann auf diese Phrase triggern und mit dem Maker Channel eine HTTP Request an Symcon absetzten.
So wird’s in 3 Schritten eingerichtet:
1. Amazon Echo
Hier ist nicht zu tun - Alexa spricht von Haus aus IFTTT
2. IFTTT
IFTTT mit Alexa verbinden:
Auf der IFTTT Startseite bei „Search“ „Alexa“ eingeben. Gleich auf den ersten Eintrag unter „Service“ auf „Amazon Alexa“ klicken. Hier dann auf „Connect“. Jetzt kann man IFTTT über OAuth Zugriff auf Amazon Alexa geben.
In IFTTT ein neues Applet anlegen:
Auf IFTTT Website oben rechts auf den Benutzernamen klicken -> danach auf „new Applet“.
Trigger: Amazon Alexa -> „Say a specific phrase“ -> Befehl eingeben, auf den Alexa reagieren soll.
Hier muss man, sofern noch nicht geschehen, IFTTT mit Amazon Alexa verknüpfen.
Action: Maker Channel -> „Make a web request“ -> URL eingeben und Variablen definieren, die an Symcon gesendet werden sollen.
Wenn man Symcon-Connect verwendet sieht die URL so ähnlich aus: https://0123456789abcde.ipmagic.de/hook/ifttt
3. IP-Symcon
Script
Neues Script erstellen und folgenden Inhalt hinein kopieren. Für jeden Befehl ein „case“ Block anlegen, und dort die gewünschte Aktion ausführen.
$password = '123456789';
if ( isset( $_REQUEST['trigger'] ) && isset( $_REQUEST['password'] ) && $_REQUEST['password'] == $password ){
IPS_LogMessage('IFTTT', print_r($_REQUEST, true));
switch ( $_REQUEST['trigger'] ){
case 'alles_aus':
// script ausführen oder Variablen setzten
break;
case 'party':
// script ausführen oder Vraiablen setzten
break;
default:
break;
}
}
WebHook
Kern Instanzen -> Webhook -> Hinzufügen -> Bei hook „ifttt“ eintragen und bei ScriptID, die ID des eben angelegten angeben.
Übernehmen klicken und fertig!
Alternativ kann man auch das IFTTT Modul von Fonzo verwenden: https://www.symcon.de/forum/threads/32856-IFTTT-Modul?highlight=ifttt
Jetzt nur noch sagen „Alexa, trigger …“