Die besten Alexa Skills für Entwickler

Die Entwicklung von Alexa Skills für Amazon Echos und andere Alexa-fähige Geräte ist zu einem wichtigen Thema geworden, über das immer mehr Entwickler und Unternehmen nachdenken. Aufgrund der rasanten Zunahme der Nutzung von Amazon Alexa klafft eine Lücke zwischen sachkundigen Entwicklern und der Nachfrage nach Alexa Skills. Amazon versucht, diese Lücke zu füllen, indem das Unternehmen versucht, die Entwicklung von Alexa Skills durch das Alexa Development Framework-Optionen zu erleichtern.

Was sind Alexa Skills?

Skills sind wie Apps für Alexa und bieten Benutzern einen Raum für ihre Inhalte und Dienste. Mit Skills können Kunden ihre Stimme nutzen, um alltägliche Aufgaben auszuführen, wie zum Beispiel Nachrichten abrufen, Musik hören, ein Spiel spielen und vieles mehr. Einzelne Entwickler oder Unternehmen und können die Skills im Alexa Skills Store veröffentlichen, um andere Menschen oder Kunden auf Millionen Alexa-Geräten zu erreichen.

Werkzeuge wie der Alexa Skills Kit (ASK) oder das Self Service API oder andere Skill Komponenten erleichtern die Entwicklung neuer Skills. Ein Framework kann Entwickler beim Aufbau von Skill Fähigkeiten unterstützen und ihnen dabei helfen, sich auf computerspezifische Aufgaben zu konzentrieren. Im Alexa Skill Store sind zurzeit mehr als 10000 Skills veröffentlicht, Tendenz steigend.

Welche Skills gibt es?

Mit dem Alexa Skills Kit können Entwickler Spracherlebnisse für eine Vielzahl von Skill-Typen erstellen, von Spielen über Musik bis hin zu Essen und mehr. Folgende Skills sind möglich:

+ Custom Skills – eigene Spracherlebnisse für Spiele, Bildung, Gesundheit und mehr
+ Game Skills – die neue Art zu Spielen: Innteraktiv und familienfreundlich
+ Music & Audio Skills – Musik, Podcast oder Radio
+ Food Ordering Skills – Restaurants in der Nähe finden und Essen bestellen
+ Smart Home Skills – Kontrolle smarter Gerät durch Alexa
+ Video Skills – Auswahl und Abspielen von Videos
+ Flash Briefing & News Skills – Nachrichten, Schlagzeilen, Wetter
+ Connected Vehicle Skills – Kontrolle und Status des eigenen Autos
+ Knowledge Skills – Berufliche und persönliche Entwicklung

Alexa Skills Software Development Kit (SDK)

Das wichtigste Tool, das Amazon Entwicklern zur Nutzung an die Hand gibt, ist das Alexa Skills Kit SDK (Software Development Kit) für Node.js. Mit diesem Kit verwenden Entwickler JavaScript, damit ihr Alexa Skill in AWS Lambda funktioniert. Dieses Kit hilft den Entwicklern, Antworten basierend auf den Anfragen von Alexa zu erstellen.

Amazon hat das Alexa Skills Kit SDK mit dem Hintergedanken entwickelt, dass Entwickler AWS dazu verwenden, um Skills in AWS zu erstellen. Es gibt außerdem Optionen, andere AWS-Services in Verbindung mit einem Skill zu verwenden. Durch das Kit ist der Prozess um einiges einfacher, als die Skills von Grund auf neu zu programmieren. Amazons empfiehlt diesen Weg als Einstieg, zumindest ist es das Toolkit, das Amazon am meisten bewirbt.

Mit dem Alexa Skills Kit SDK allein kann es etwas schwierig sein, die Alexa Skills zu erstellen und zu testen. Es gibt zurzeit kein wirklich gutes Testtool. Entwickler müssen eine Lambda-Funktion für ihren Skill erstellen und mit einem Alexa-Skill verbinden, bevor mit dem Testen begonnen werden kann. Jedes Mal, wenn der Code aktualisiert wird, muss auch die Lambda-Funktion aktualisiert werden. Dies mag nicht so schlimm erscheinen, aber die Zeit, die für eine winzige Codeänderung benötigt wird, kann ziemlich frustrierend sein.

Alexa-App als Entwicklungsframework

Eine weitere Option ist das Alexa-App- Framework. Dieses von Matt Kruse entwickelte Framework ist nicht mit Amazon verbunden, hat aber eine starke Community, so dass gleich mehrere Entwickler an der Weiterentwicklung arbeiten. Der Amerikaner Matt Kruse, Web Developer, Javascript Guru und Alexa Champion, hat auch ein Testtool namens Alexa-app-server entwickelt, mit dem Entwickler ihre Alexa-Fähigkeiten in einem Webbrowser mit sofortigem Feedback testen können. Dies kann die Entwicklungsgeschwindigkeit eines Alexa Skills erheblich erhöhen.

Andere Entwickler haben begonnen an parallelen Projekten zu arbeiten, die auf Matts Originalarbeit basieren, und haben einige Tools entwickelt, die andere Entwickler möglicherweise verwenden möchten, je nachdem, was sie mit ihren Skills tun möchten.

Das Alexa Skills Kit SDK und die Alexa-App sind die beiden am häufigsten verwendeten Optionen des Alexa-Entwicklungsframeworks und sind vielfach der Ausgangspunkt für Entwickler, die neu in der Amazon Alexa-Entwicklung sind. Für Entwickler gibt es außerdem noch ein paar andere Optionen, die Amazon auf der Webseite des Frameworks aufgelistet hat. Es bedarf jedoch einiger Recherchen, um festzustellen, wie diese Optionen funktionieren.

Maßgeschneiderte Werkzeuge

Einige maßgeschneiderte Werkzeuge haben damit begonnen, sich als eigene Alexa Skill Entwicklungstools zu bewerben. DieseTools sind Kommandozeilen-basiert und geben Entwicklern die Möglichkeit, in mehreren Programmiersprachen (Java, Python oder JavaScript) ihre Skills zu entwickeln. Die meisten anderen Frameworks arbeiten nur mit JavaScript als Entwicklungssprache.

Die maßgeschneiderten Werkzeuge bieten außerdem eine Entwicklungsumgebung und Bereitstellungstools. Dies scheint ein vielversprechendes Framework für die Entwicklung von Alexa Skills zu sein, aber da es noch relativ neu ist, lohnt es sich wahrscheinlich, es auszuprobieren, bevor ein Projekt vollständig in einem bestimmten Toolset durchgeführt wird.

Tools zum Entwickeln und Verwalten von Alexa Skills

+ Alexa Developer Console – Die Alexa-Entwicklerkonsole bietet Unterstützung bei der Erstellung, Verwaltung und Veröffentlichung von Skills.
+ Alexa Hosted Skills – Bei der Entwicklung eines von Alexa gehosteten Skills speichert dieses Tool den Code und die Ressourcen auf AWS.
+ ASK Toolkit for VS Code – Das ASK Toolkit bietet einen speziellen Arbeitsbereich für Alexa-Skills in VS Code.
+ ASK SDKs – Die Alexa Skills Kit (ASK) SDKs sind Softwareentwicklungstools und Bibliotheken, die Entwicklern Programm-technischen Zugriff auf Alexa-Funktionen bieten. ASK SDKs sind für Node.js, Java und Python verfügbar.
+ ASK CLI – Mit dem Alexa Skills Kit Command Line Interface (ASK CLI) können Entwickler die meisten Alexa Skills über die Befehlszeile ausführen.
+ Skill-Verwaltungs-API – Die Alexa Skill-Verwaltungs-API (SMAPI) bietet HTTP-Schnittstellen für die programmgesteuerte Durchführung von Alexa Skills.
+ AWS-Tools – Entwickler können Alexa-Skills mit Cloud-basierten Tools von Amazon Web Services (AWS) erstellen, entwickeln und verwalten.
+ Skill Flow Builder – Designer und Autoren können Skill Flow Builder verwenden, um Inhalte schnell zu entwerfen und zu ändern.

Welches Framework für Alexa Skills ist das richtige?

Da Alexa Skills immer beliebter werden und die Nachfrage der Entwickler wächst, lohnt es sich, sich einige Zeit zu nehmen, um sich für ein Toolset zu entscheiden, bevor man an die Entwicklung eines neuen Projekts geht. Abhängig von den eigenen Anforderungen und der Entwicklungserfahrung gibt es mehrere Optionen, die für einen Entwickler geeignet sein könnten.

Da Google Home und andere Konversations-App-Plattformen ebenfalls auf dem Vormarsch sind, könnten Entwickler versucht sein, eines der plattformübergreifenden Tools auszuprobieren. Dieses kann funktionieren, aber Entwickler sollten auch entscheiden, ob sie sich an ein bestimmtes Framework binden möchten. Das ist besonders wichtig, wenn man berücksichtigt, wie schnell die Entwicklung von Alexa Skills im Allgemeinen ist.

Fazit

Entwickler, die bei der Entwicklung von Alexa Skills völlig neu sind, sollten mit dem Alexa Skills SDK beginnen. Eine andere Möglichkeit wäre, die Alexa App auf die eigenen Entwickler-Bedürfnisse hin zu erweitern und zu nutzen, was diese Software an Werkzeugen zu bieten hat. Für erfahrene Entwickler, die darüber nachdenken, komplexe und plattformübergreifende Anwendungen zu entwickeln, lohnt es sich darüber nachzudenken und einige Zeit mit den anderen Frameworks zu verbringen, um sich darin einzuarbeiten.

Rückmeldungen