Nachdem ich mich ein wenig mit IFTTT auseinander gesetzt und versucht habe die Beispiel Appelts zu verstehen, bin ich zum Entschluss gekommenen, dass es einfacher ist, um IFTTT besser verstehen zu können, die Applets von Grund auf neu zu erstellen. Für einen User hier im Forum habe ich eine kleine Anleitung geschrieben, welche sich auf die unterschiedlichen Trigger und deren unterschiedliche Arbeitsweise bezieht, hier am Beispiel der Alexa Shopping List. Diese Anleitung habe ich ein wenig aufbereitet und stelle sie hiermit ins Wiki ein, damit jeder etwas davon hat.

Vorabinformationen

Was ist IFTTT?

  • Mit IFTTT können verschiedene Webanwendungen wie beispielsweise Facebook, Twitter, o.ä. mit zum Teil automatisierten Prozessen kombiniert werden. Da Amazon Alexa auch eine Webanwendung ist, hat Amazon die Möglichkeit, Alexa mit IFTTT zu verbinden. Damit gewährt Amazon ein Zusammenspiel von Alexa (über echo, bzw. echo dot) an eine Menge verschiedener Services, die auch mit IFTTT kooperieren.
  • IFTTT ist eine Abkürzung für den englischen Wortlaut „If This Then That“, auf Deutsch „Wenn das, dann das“ (siehe Bild). Vereinfacht erklärt bedeutet dies somit: „Wenn ein definierter Zustand (1) gegeben ist, dann soll ein zu definierender Prozess (2) gestartet werden.

Ein Konto bei IFTTT anlegen, bzw. Services verbinden

  • Ein Konto bei IFTTT anlegen ist sehr einfach. Man benötigt nur eine E-Mail Adresse und muss keine weiteren Daten bei der Anmeldung angeben. Gesichert wird der Account mit einem Passwort. IFTTT Website
  • Um Services die mit IFTTT kompatibel sind nutzen zu können, muss man diese Services „connecten“. Die Aufforderung dazu erscheint automatisch, wenn das erste mal der Service verwendet werden soll (beispielsweise Facebook).

Einfache Beispiele für IFTTT

Man kann mit IFTTT viele Dinge erledigen, hier habe ich ein paar Beispiele aufgeführt, die mir auf die schnelle eingefallen sind:

  • Wenn bei Facebook das Profilfoto geändert wurde, soll das Profilfoto auch bei Twitter geändert werden.
  • Wenn die Temperatur xx °C beträgt, soll automatisch eine E-Mail über GMail verschickt werden.
  • Automatische Sicherung von Fotos bei Facebook in der Dropbox.
  • usw.

Alexa Beispiele für IFTTT

Da wir uns hier im Amazon echo / Alexa Forum befinden, sollen auch ein paar Beispiele in diesem Zusammenhang folgen:

  • Wenn ein Musiktitel abgespielt wird, soll dieser Titel in einer Google Docs Liste eingetragen werden, um nachvollziehen zu können, welche Lieder gespielt wurden.
  • Man kann Alexa sagen, dass beim Android Handy Wlan aktiviert werden soll.
  • Oder wie im nachfolgenden Beispiel erwähnt: Die Einkaufsliste per EMail senden.

Vorbereitungen

Nachdem man sich bei IFTTT angemeldet hat, muss man unter dem Punkt „My Applets“ den Button „New Applet“ anklicken. Alternativ diese URL verwenden ;) Applet erstellen

Die eigentliche Frage des Users hier im Forum war, wie man einen IFTTT Trigger aufrufen kann und damit zusammenhängend welche unterschiedlichen Trigger es gibt. Ich möchte speziell diese beiden Trigger Unterschiede beschreiben, bzw. an Hand dieser beiden Trigger ein Applet anlegen:

Los geht es mit dem ersten Teil: (1) this config / Zustandsbeschreibung

  • Man wählt nun das blaue „this“ aus
  • Man sucht in der Suche nach „Alexa“
  • Beim ersten Mal muss man sich nun über das Amazon Konto mit Alexa verbinden (dazu einfach dem Amazon Formular folgen).
  • Man sucht nun den jeweils relevanten Trigger aus (für den weiteren Verlauf dieser Erklärung habe ich Trigger 1 genommen):
Trigger 1
Ask what's on your Shopping List
This Trigger fires every time the you ask Alexa what's on your Shopping List.

Bei diesem Trigger wird automatisch im Hintergrund ein noch zu definierenden IFTTT Prozess ausgeführt. Dazu redet man mit Alexa wie folgt: „Alexa, was steht auf meiner Einkaufsliste“.


Trigger 2
Say a specific phrase
This trigger fires every time you say „Alexa trigger“ + the phrase that you have defined. For instance, if you set „party time“ as the phrase, you can say „Alexa trigger party time“ to have your lights loop colors. Please use lower-case only.

Bei diesem Trigger kann man einen Satz definieren (siehe Bild), welcher im Anschluss einen noch zu definierenden IFTTT Prozess ausführt. Definiert man beispielsweise den Satz „erinnerung senden“, dann muss man Alexa wie folgt ansprechen: „Alexa, trigger erinnerung senden“.

Es ist wichtig in diesem Fall den Unterschied deutlich zu machen:

  1. Beim ersten Trigger wird darauf gewartet, dass Alexa etwas eigenständig ausführt. Wenn Alexa dies tut, dann soll automatisch ein IFTTT Prozess gestartet werden. In diesem Fall fragt man „Alexa, was steht auf meiner Einkaufsliste“. Alexa wird nun mitteilen was auf der Liste steht. Gleichzeitig wird Alexa aber auch den IFTTT Trigger anstoßen, welcher einen noch zu definierenden Prozess ausführt.
  2. Beim zweiten Trigger wird Alexa nichts eigenständiges ausführen, sondern einfach nur einen bestimmten Satz entgegennehmen, um diesen danach an IFTTT zu senden. Das geschieht indem man wie folgt den Satz beginnt „Alexa, trigger “. Und mit einer kleinen gedachten Pause fügt man nun einen Satz hinzu, welchen man zuvor bei IFTTT definiert hat. In diesem Fall „erinnerung senden“. Im ersten Schritt wird somit vereinfacht gesagt eine Art skill mit der Bezeichnung „trigger“ aufgerufen und im zweiten Schritt dann die eindeutige Bezeichnung des Triggers hinzugefügt.

Die Technik bei den beiden unterschiedlichen Triggern ist wie folgt zu verstehen:

  1. Beim ersten Trigger wird automatisch der Inhalt der Einkaufsliste an IFTTT übergeben und bei einem noch zu definierenden Prozess anschließend weiter verarbeitet.
  2. Beim zweiten Trigger wird KEIN INHALT an IFTTT übergeben. Man kann mit diesem Trigger nur etwas autarkes anstoßen, was vollständig losgelöst vom eigentlichen Inhalt der Einkaufsliste ist. Deshalb kann beim zweiten Trigger auch nicht der Inhalt der Einkaufsliste beispielsweise per E-Mail verschickt werden, sondern exemplarisch nur eine Erinnerungs E-Mail mit dem Betreff „Einkaufsliste“ und dem Text „Denke an den Einkaufszettel in deiner alexa app … “.

Weiter geht es mit dem zweiten Teil: (2) that config / zu definierender Prozess

  • Man wählt nun das blaue „that“ aus
  • Man sucht nun in der Liste den Service „Email“
  • Nun gibt es eine Kachel mit dem Inhalt „Send me an email“
  • Anschließend sieht man nun ein bereits fast vollständig ausgefülltes Formular in Bezug auf den Einkaufszettel

Nun erscheint der Baustein „EntireList“ im Body, ein sogenanntes „Ingredient“. Dies bedeutet, dass Alexa dem IFTTT die Einkaufsliste übergeben hat, welche nun per E-Mail verschickt werden kann. IFTTT ist somit der Inhalt der Einkaufsliste bekannt.

Weiter geht's:

  • Man klickt nun auf „Create action“
  • Nun kann man noch die Beschreibung vom Applet ändern oder diese so lassen wie sie ist
  • Anschließend auf „Finish“ klicken. Fertig.

Wenn man nun Alexa fragt „Alexa, was steht auf meiner Einkaufsliste“ wird dir Alexa zusätzlich zur sprachlichen Ausgabe eine E-Mail mit dem Inhalt vom Einkaufszettel senden.

Nun noch eine Erklärung bezüglich dem Unterschied zum zweiten Trigger:

Wenn man den zweiten Trigger auswählt, dann wird wie vorher erwähnt kein Inhalt an IFTTT übergeben. Beim Testen wie oben beschrieben wird man bei dem Schritt „fast vollständig ausgefülltes Formular“ erkennen, dass das Formular leer ist (siehe Bild) und man auch kein „Ingredient“ in Bezug auf die Einkaufsliste auswählen kann. Hier müsste man also einen statischen E-Mail Text eingeben, welcher verschickt wird wenn man Alexa fragt: „Alexa, trigger erinnerung senden“. Dies macht also nur Sinn, wenn man jedes mal beim Einkaufen das selbe einkauft.

Hinweis: Die Email wird an die bei IFTTT registrierte E-Mail Adresse geschickt, möchte man eine andere E-Mail Adresse verwenden muss man beispielsweise auf einen anderen Service (GMail) ausweichen.