Alexa Skills programmieren für Amazon Echo & Co. (eBook)
336 Seiten
MITP Verlags GmbH & Co. KG
978-3-7475-0116-0 (ISBN)
- Einfacher Einstieg in die Programmierung von Alexa Skills mit JavaScript
- Nutzerantworten speichern und verarbeiten, Bilder und Audiofiles einbinden, fortgeschrittenes Dialogmanagement, Anbindung externer APIs u.v.m.
- Skills bekannt machen und damit Geld verdienen
Über 11 Millionen Menschen in Deutschland nutzen Amazon Alexa aktiv und das Potenzial der verfügbaren Skills ist noch lange nicht ausgeschöpft. Egal, ob Sie experimentierfreudiger Privatanwender oder professioneller Programmierer sind - wenn Sie einen Skill für Amazon Alexa entwickeln möchten und bereits erste Erfahrungen mit JavaScript haben, ist dieses Buch genau das richtige für Sie.
Anhand verschiedener Praxisbeispiele zeigt der Autor, wie Sie mit der Alexa Developer Console und Node.js ganz einfach Ihren ersten Skill erstellen und Schritt für Schritt um neue Funktionen erweitern. Dank des AWS-Promotional-Credits-Programms ist das für Entwickler völlig kostenlos möglich.
Sie lernen, Nutzerantworten zu speichern und zu verarbeiten, Skill Cards für die Ausgabe in der Alexa App zu erstellen und Alexa mit verschiedenen Stimmen sprechen zu lassen. Für alle, die noch einen Schritt weitergehen wollen, beschreibt der Autor das fortgeschrittene Dialogmanagement, das Erstellen von Skills mit der AWS Cloud sowie die Nutzung externer Informationen, beispielsweise für das Abrufen von Wetterdaten oder Versenden von E-Mails.
Abschließend zeigt der Autor Ihnen Schritt für Schritt, wie Sie einen Eintrag im Alexa Skill Store erstellen und gibt Ihnen praktische Tipps für die Veröffentlichung und die Monetarisierung Ihrer Skills an die Hand.
Aus dem Inhalt:- Skills in der Alexa Developer Console anlegen
- Skill-Code automatisch erzeugen
- JSON-Sprachmodell und Skill-Logik in Node.js
- Antworten speichern mit DynamoDB
- Skills testen
- Debugging mit CloudWatch
- SSML-Tags zur Veränderung der Aussprache
- Skill Cards für die Alexa App erstellen
- Audiodateien, Bilder und Videos einbinden
- Antworten auf Plausibilität prüfen und Kontextwechsel
- Alexa Skills in der AWS Cloud
- Externe Informationen nutzen und APIs einbinden
- Skills zertifizieren und veröffentlichen
- Alexa-SEO und Monetarisierung
- Code-Beispiele zum Download
Zimmermanns Internet & PR-Beratung
Kapitel 1:
Der Einstieg in die Alexa-Skill-Programmierung
In diesem Kapitel werden Sie einen Hosted-Skill direkt in der Alexa Developer Console einrichten. Dafür nutzen wir auch gleich schon mal das von Amazon vorgegebene »Fact Skill«-Template, das Sie nach Ihrem Geschmack anpassen können. Hier im Buch geht es um einen einfachen Fakten-Skill zum Thema Weltraum. Sie können natürlich aber auch ein ganz eigenes Faktenthema wählen. Das Prinzip bleibt das gleiche.
Um Ihren eigenen Skill zu programmieren, benötigen Sie als Erstes einen Alexa-Developer-Account, damit Sie loslegen können. Dafür gehen Sie auf die Seite https://developer.amazon.com/alexa/console/ask.
Alexa-Developer-Console-Anmeldemaske
Klicken Sie nun auf Create your Amazon account.
Abb. 1.2: Alexa Developer Console, Create account
Jetzt geben Sie Ihren Entwicklernamen sowie Ihre E-Mail-Adresse ein und vergeben ein Passwort mit mindestens 6 Zeichen. Danach klicken Sie unten auf den blauen Button.
Abb. 1.3: E-Mail-Adresse bestätigen
Zu guter Letzt müssen Sie die Einrichtung mit einem One-Time Password (OTP) bestätigen.
Abb. 1.4: Developer-Registrierung
Jetzt müssen alle Pflichtangaben in dem Formular ausgefüllt werden. Sie legen hier auch den Firmennamen fest, falls Sie für eine Firma Skills entwickeln möchten. Wenn Sie alles gewissenhaft ausgefüllt haben, klicken Sie auf Accept and Continue.
Abb. 1.5: Amazon Developer Services Agreement
In dieser Maske klicken Sie für den Ausdruck des Vertrages auf Print Agreement und anschließend auf Accept and Continue.
Abb. 1.6: Amazon Developer Console
Jetzt sind Sie in der Amazon Developer Console registriert. Sie haben nun die Möglichkeit, hier Ihre Steuerdaten und Kontoverbindungen für App- oder Skill-Einnahmen zu hinterlegen. Dann haben Sie einen vollwertigen Amazon-Developer-Account und können neben Skills auch Apps für Smartphones entwickeln, aber das ist ein anderes Thema.
Fahren Sie in der Amazon Developer Console oben in der Navigation auf Alexa und klicken Sie anschließend im Untermenü auf Alexa Skills Kit.
Abb. 1.7: Alexa Skills Kit in der Navigation oben
Jetzt sind Sie in der Alexa Developer Console. Von hier aus überblicken Sie alle Ihre Skills, eventuelle Verdienste, Zahlungen sowie das Hosting, falls Sie »Alexa-Hosted« für Ihren Skill ausgewählt haben.
Abb. 1.8: Die Alexa Developer Console
Die Hürde, einen Skill zu entwickeln, hat Amazon immer weiter gesenkt und vereinfacht, indem Sie nun bei der Skill-Erstellung die Wahl haben: Sie können Ihren Programmcode in einer AWS Cloud, in einer privaten Cloud oder als »Alexa-Hosted«-Skill anlegen. Für den Einstieg wählen Sie die einfachste Variante, einen Alexa-Hosted-Skill.
Abb. 1.9: Screenshot aus der Alexa Developer Console
Der Vorteil der Alexa-Hosted-Skills ist, dass Sie sich als Entwickler keine Sorgen darum machen müssen, wie die Cloud betrieben wird. Amazon stellt den Nutzern eine fertige Umgebung für den Skill zusammen, der dem Betreiber nicht berechnet wird. Sie müssen hier auch keine Kreditkartendaten hinterlegen. Ich werde in Kapitel 6 näher darauf eingehen, wie Sie einen Skill selbst über die AWS Cloud einrichten und betreiben. Aber fangen wir zunächst mit den Grundlagen an.
Wenn Sie keine Scheu vor Programmcode haben, neue Dinge lernen möchten oder gar schon selbst etwas in JavaScript programmiert haben, ist die Seite https://github.com/alexa/ der richtige Einstiegspunkt für Sie.
Dort finden Sie fertige Alexa Skills als Vorlagen für Ihren eigenen Skill. Auch das Hosted-Skill-Codebeispiel befindet sich dort. Im Prinzip brauchen Sie hier nur noch im Code die Texte für die Sprachausgabe und Textanzeige zu verändern. Das einfachste Beispiel für den Einstieg ist wohl das Code-Beispiel für einen »Fact Skill« unter https://github.com/alexa/skill-sample-nodejs-fact. Ich habe so angefangen, indem ich mir die index.js
-Datei des Code-Beispiels im Browser angeschaut und versucht habe, die Stellen zu finden, wo ein Text ausgegeben wurde. Anschließend habe ich ihn an meine Idee angepasst.
Zudem empfehle ich Ihnen, sich im Netz über JavaScript fortzubilden. Über eine Google-Suche nach »JavaScript Tutorial« werden Ihnen viele nützliche Quellen angezeigt, um die Grundlagen von JavaScript zu lernen.
1.1 Was ist ein Alexa Skill?
Ein Alexa Skill ist im Prinzip eine Voice-App, nur dass diese nicht auf einem Gerät installiert, sondern in der Cloud betrieben wird. Ein Skill wird also nicht installiert, sondern nur aktiviert.
Das hat für den Nutzer den Vorteil, dass er keine Ressourcen für die Speicherung einer Applikation auf seinem Gerät benötigt. Dieser Vorteil beinhaltet aber auch gleichzeitig den Nachteil, dass ein Skill nur mit einer Internetverbindung zur Cloud funktionieren kann.
Alexa wird mithilfe von Skills schlauer, aktuell gibt es international über 100.000 Skills. In Deutschland sind es gerade mal etwas über 11.600. Die beliebtesten Kategorien sind in Deutschland Musik & Audio (2989), Spiele & Quiz (1604), Bildung & Nachschlagewerke (945), Lifestyle (891) und News (791), Stand 11.11.2019. Wie eine Case Study der Website beyto.com
schreibt, ist das Skill-Wachstum in Deutschland eher gebremst, siehe https://www.beyto.com/wachstum-skills-amazon-alexa-skill-store-oktober-2019/.
1.1.1 Wie wird ein Skill aufgerufen?
Per Sprache wird dem Amazon-Echo-Gerät eine Frage oder Aufforderung mitgeteilt. Ein Nutzer könnte zum Beispiel sagen: »Alexa, öffne Bierflasche.« Dieser einfache Satz wird von der KI in die Bestandteile zerlegt und interpretiert:
[Wake Word], [Launch Word] [Invocation Name] [Connecting Word] [Utterance]
Diese Wake Words kennt Amazon Echo:
-
Alexa
-
Amazon
-
Computer
-
Echo
Das Wake Word (Weckwort) muss vom Nutzer über die Alexa-Companion-App eingestellt werden. Standardmäßig ist »Alexa« voreingestellt. Bisher ist Alexa der einzige Heimassistent, der den Nutzern hier eine Wahlmöglichkeit lässt, das ist einer der Gründe, warum Alexa so beliebt ist.
Beispiel
Alexa, öffne Bierflasche und gib mir einen Trinkspruch.
Diese »Launch«-Wörter kennt Amazon Echo:
-
Start
-
Starte
-
Öffne
-
Frage
-
Lade
-
sprich mit
-
führe (Ausführungsname) aus
-
benutze
Diese Kommandos sollten Sie im Hinterkopf behalten, wenn Sie einen »Invocation Name« für Ihren Skill auswählen, um eine möglichst natürliche Kommunikation zu ermöglichen.
Beispiel
Alexa, öffne Bierflasche und gib mir einen Trinkspruch.
Was ist ein Invocation-Name?
Der Invocation-Name bzw. Ausführungsname ist der Name des Skills. Der Skill-Name ist fast frei wählbar. Er sollte zu einer natürlichen Sprache passen. In unserem Beispiel lautet der Ausführungsname Bierflasche.
Wenn also der Bierflasche-Skill aktiviert wurde, erkennt Alexa ihn und kann zu der Aufforderung »Alexa, öffne Bierflasche« eine sinnvolle Antwort geben.
Beispiel
Alexa, öffne Bierflasche und gib mir einen Trinkspruch.
»Connecting«-Wörter für Skills:
-
mit
-
und
-
aus
-
um
-
für
Beispiel
Alexa, öffne Bierflasche und gib mir einen Trinkspruch.
Was bedeutet »Utterance«?
»Utterance« ist das englische Wort für Äußerung. Äußerungen können bestimmte Intents zugeordnet werden.
Beispiel
Alexa, öffne Bierflasche und gib mir einen Trinkspruch.
Was bedeutet Intent?
Wenn wir miteinander kommunizieren, haben wir immer eine Intention (Absicht), warum wir kommunizieren. Wenn wir etwas Bestimmtes wissen wollen, fragen wir also unseren Gesprächspartner etwas. In der Skill-Programmierung wird der Begriff Intent genauso verwendet. Mit einem Alexa-Skill-Intent soll also eine bestimmte Absicht des Anwenders befriedigt werden.
Wenn Sie einen Skill programmieren möchten, sollten Sie sorgfältig alle Nutzungsszenarios Ihres Skills planen und jedem Szenario einen Intent zuordnen. In dem vorangegangenen Beispiel meines Bierflasche-Skills wurde die Äußerung »gib mir einen Trinkspruch« dem Intent »Trinkspruch« zugeordnet, der genau diesen Wunsch des Nutzers erfüllt. Die Äußerung »gib mir ein Bier« würde das Geräusch einer aufploppenden Bierflasche abspielen und ist demzufolge dem Bierflaschen-Intent zugeordnet.
1.1.2 Wie funktioniert ein Skill genau?
Abb. 1.10:...
Erscheint lt. Verlag | 18.3.2020 |
---|---|
Reihe/Serie | mitp Professional |
Sprache | deutsch |
Themenwelt | Mathematik / Informatik ► Informatik ► Programmiersprachen / -werkzeuge |
Schlagworte | Alexa • alexa programmieren • Alexa skills • alexa skills programmieren • amazon • amazon skills • Apps • AWS • Buch • Echo Dot • Echo Show • JavaScript • Skills • skills für alexa • Sprachassistent |
ISBN-10 | 3-7475-0116-8 / 3747501168 |
ISBN-13 | 978-3-7475-0116-0 / 9783747501160 |
Haben Sie eine Frage zum Produkt? |
Größe: 7,8 MB
Digital Rights Management: ohne DRM
Dieses eBook enthält kein DRM oder Kopierschutz. Eine Weitergabe an Dritte ist jedoch rechtlich nicht zulässig, weil Sie beim Kauf nur die Rechte an der persönlichen Nutzung erwerben.
Dateiformat: EPUB (Electronic Publication)
EPUB ist ein offener Standard für eBooks und eignet sich besonders zur Darstellung von Belletristik und Sachbüchern. Der Fließtext wird dynamisch an die Display- und Schriftgröße angepasst. Auch für mobile Lesegeräte ist EPUB daher gut geeignet.
Systemvoraussetzungen:
PC/Mac: Mit einem PC oder Mac können Sie dieses eBook lesen. Sie benötigen dafür die kostenlose Software Adobe Digital Editions.
eReader: Dieses eBook kann mit (fast) allen eBook-Readern gelesen werden. Mit dem amazon-Kindle ist es aber nicht kompatibel.
Smartphone/Tablet: Egal ob Apple oder Android, dieses eBook können Sie lesen. Sie benötigen dafür eine kostenlose App.
Geräteliste und zusätzliche Hinweise
Buying eBooks from abroad
For tax law reasons we can sell eBooks just within Germany and Switzerland. Regrettably we cannot fulfill eBook-orders from other countries.
aus dem Bereich