Du willst also eine App für deinen Amazon Echo programmieren – hast aber nach 3 Stunden noch nichts zu Stande gebracht? Da geht es dir genauso wie mir^^ Keine Ahnung was IT-Firmen wie IBM, Google, Apple oder eben Amazon geritten hat, aber ich habe noch kein Tutorial von denen gefunden, wo ich auf Anhieb gesagt hätte: „Jo, das ist es! Das ist geil:) Lass uns XY darauf programmieren.“
Nichts, Nada, Niente, Nothing – einfach nix und das ist traurig. Es reicht heutzutage einfach nicht mehr aus irgendwelche Code-Beispiele über den Zaun auf Github zu werfen und zu hoffen, dass es die Communtiy irgendwie richtet. Es gibt zwar verrückte Softwareentwickler, aber ohne Doku und nur mit Try&Error wird das eben nichts. Aber genug gejammert – hier kommt die Rettung:) In diesem Beitrag geht es um Amazon Alexa Skills und die grundlegende Architektur.
Zunächst halten wir mal fest, dass es keine Apps für Amazon Echo gibt. Es gibt nur so genannte Alexa Skills und die werden nicht installiert, sondern nur aktiviert. Und da ist auch schon der Knackpunkt – die Architektur eines Alexa Skills.
Ein Alexa Skill besteht aus mehreren Frontends und einem Backend. Ein Frontend kann zum Beispiel ein Amazon Echo, ein Amazon Dot oder ein LG Kühlschrank sein. Das Backend hingegen ist ein einfacher Web Service (also ein Skript was einen Request verabreiten kann) hinter einer HTTPS-URL. Dieses kann wahlweise auf dem eigenen Server oder auf Amazon Lambda betrieben werden. Anhand einer „Web-Konfiguration“ auf https://developer.amazon.com/ werden die zwei Teile miteinander verbunden. Die folgende Grafik zeigt den Aufbau.
Auf das Frontend ansich hat der Entwickler keinen Einfluss. Daher schauen wir uns lieber die Web-Konfiguration etwas genauer an. Die Web-Konfiguration beinhaltet folgende wichtigen Bestandteile:
Das Backend hingegen ist echt einfach. Es empfängt Requests im JSON-Format und antwortet im JSON-Format. fertig. Mehr macht es nicht^^
Jetzt weißt du, wie ein Alexa Skill aufgebaut ist. Jetzt solltest du dir den Workflow anschauen!
Copyright © 2017 AxxG – Alexander Gräsel
Kommentar verfassen