In diesem Blog schreibe ich regelmäßig zu Themen rund um Alexa und Voice. Zum Teil verweisen die Texte weiter auf englische Artikel oder Beispielprojekte in meinem Github-Account.


Neuer Alexa Skill “Mission Perseverance”

Alexa Skill Mission Perseverance

Der Alexa Skill “Mission Perseverance“ ermöglicht es, das öffentliche Film-Archiv der NASA zu der Mars-Mission Perseverance zu durchsuchen. Die Suchergebnisse können dann direkt auf einem Gerät mit Bildschirm angesehen werden.

Den Skill gibt es nur in englischer Sprache, weil die Zertifizierung es nicht mag, wenn ein deutscher Skill englische Inhalte transportiert.

So erging es mir im letzten Jahr bei der Zertifizierung von “Sky Pix“. Dieser Skill setzt auf dem Angebot von “APOD” (Astronomy Picture of the Day) auf. Dort musste ich den englischen Beschreibungstext der Bilder in der deutschen Version künstlich entfernen.

Bei alten Echo-Show Geräten kann es vorkommen, dass bestimmte Videos nicht abgespielt werden können.


Alle zwei Wochen am Donnerstag: #VoiceLunch for Developers

VoiceLunch

Achtung Technik: während man bei anderen #VoiceLunch Veranstaltungen nur selten eine Zeile Code zu sehen bekommt, sieht es bei VoiceLunch for Developers anders aus. Hier blickt man über den Tellerrand, geht tiefer in die Materie und teilt sein Wissen.

Wann und Wo?: Alle zwei Wochen am Donnerstag. Registrieren kann man sich hier


ShowTime!

Neuer Alexa Skill “ShowTime!”

Der Alexa Skill “ShowTime!“ ist eine spezielle Version von dem Skill “Meine Mediathek“, die für den Zugriff auf Sendungen über die Themen Live-Konzert, Kabarett und Theater optimiert ist. Höchstwahrscheinlich irrelevante Beiträge wie Nachrichtensendungen werden aus den Ergebnislisten herausgefiltert, besonders lange Beiträge bevorzugt dargestellt.

Mehr über diesen Skill erfahrt Ihr hier.


Power Booster

Neuer Alexa Skill “Power Booster”

Der Alexa Skill “Power Booster“ schenkt Dir einen kurzen Moment Entspannung, um Deine Batterien wieder aufzuladen. Benötigt wird ein Gerät mit Bildschirm. Einfach mal ausprobieren: danach fühlst Du Dich garantiert besser!


Rosenzeit

Neuer Alexa Skill “Rosenzeit”

Der Alexa Skill “Rosenzeit“ ist eine spezielle Version von dem Skill “Meine Mediathek“, die für den Zugriff auf Sendungen über die Themen Herz & Schmerz & Schlager optimiert ist. Höchstwahrscheinlich irrelevante Beiträge wie Nachrichtensendungen werden aus den Ergebnislisten herausgefiltert.

Mehr über diesen Skill erfahrt Ihr hier.


Naturzeit

Neuer Alexa Skill “Naturzeit”

Der Alexa Skill “Naturzeit“ ist eine spezielle Version von dem Skill “Meine Mediathek“, die für den Zugriff auf Sendungen über die Themen Erde, Natur und Tierwelt optimiert ist. Höchstwahrscheinlich irrelevante Beiträge wie Nachrichtensendungen werden aus den Ergebnislisten herausgefiltert, der Sender KiKa wird nicht berücksichtigt.

Mehr über diesen Skill erfahrt Ihr hier.


Zweiter Platz bei Hackathon für Smart Speaker der DT

Darüber habe ich mich gefreut. Nach 16 Tagen hat die Jury beim Hackathon “Remote Rhapsody“ für den Smart Speaker “Hallo Magenta” der Deutschen Telekom meinen Beitrag “Virtual Help Desk“ auf den zweiten Platz gewählt.

Zweiter Platz im Hackathon


Raumzeit

Neuer Alexa Skill “Raumzeit”

Der Alexa Skill “Raumzeit“ ist eine spezielle Version von dem Skill “Meine Mediathek“, die für den Zugriff auf Sendungen über die Themen Geschichte, Schience und Fiction optimiert ist. Höchstwahrscheinlich irrelevante Beiträge wie Nachrichtensendungen werden aus den Ergebnislisten herausgefiltert, der Sender KiKa wird nicht berücksichtigt.

Mehr über diesen Skill erfahrt Ihr hier.


Smart Speaker “Hallo Magenta” der Deutschen Telekom (DT)

Durch meine Teilnahme beim Hackathon “Remote Rhapsody“ hatte ich ausführlich Gelegenheit, mich intensiver mit dem Smart Speaker “Hallo Magenta“ der Deutschen Telekom zu beschäftigen.

Durch die Brille eines Alexa-Entwicklers gesehen sind mir die folgenden Punkte aufgefallen:

  • Für Custom Skills ist kein “Invocation Name” erforderlich, da im Hintergrund mit einem einheitlichen großen Sprachmodell gearbeitet wird. Das Trainieren dieses Modells dauert lange und es drohen Seiteneffekte, wenn ein neuer Skill dazu kommt. Deshalb bin ich etwas skeptisch, inwiefern dieser Ansatz gut skalieren kann, wenn mehr und mehr Skills dazu kommen. Für den Anwender ist es aber natürlich eine tolle Sache, wenn er sich den Namen eines Skills nicht mehr merken muss und er einfach danach fragen kann, was ihn interessiert.

  • Es gibt vordefinierte Domänenmodelle zum Beispiel für Wetter-Skills. Mehrere Custom Skills können so ein Domänenmodell implementieren und der Benutzer hat die Wahl, welchen Skill er zum Beispiel zum Thema “Wetter” einsetzen möchte.

    Das macht es möglich, so etwas zu fragen wie “Magenta, wie wird das Wetter in München” statt “Magenta, frage Big Sky wie wird das Wetter in München?”.

  • Ein eingebauter DECT Chip macht es möglich, das Gerät mit einem Telefon-Router zu verknüpfen. Bei mir hat es mit einer FritzBox erfolgreich funktioniert. Damit ist es mir möglich, ein Telefongespräch anzustoßen oder einen Anruf auf meiner Festnetznummer entgegenzunehmen.

  • Eine API für Telefonie macht es möglich, native Anrufe auch von einem Skill aus anzustoßen. Ein möglicher Anwendungsfall ist zum Beispiel ein Help Desk Skill, der den Benutzer nach seiner Situation fragt und dann einen Anruf zu einer passenden Hotline auslöst.

  • Alexa ist in die Geräte “eingebaut”. Abhängig vom Wake-Word werden die Requests zu unterschiedlichen Endpunkten weiter geleitet.

  • Für die Implementierung von Custom Skills ist ein Python SDK verfügbar (es soll auch ein JAVA API existieren, das habe ich aber nicht testen können). Das SDK nimmt einem die Arbeit mit der JSON-Kommunikation zwischen Gerät und Skill ab. Ein SDK für Node.JS ist (noch?) nicht verfügbar.

  • Um einen Custom Skill zum Laufen zu bringen, muss manuell mit unterschiedlichen Artefakten (Code und JSON)hantiert werden. Eine einheitliche Oberfläche, wie wir sie im Zusammenhang mit Alexa Hosted Skills kennen, existiert für Magenta derzeit nicht

  • Eine Integration in Visual Studio Code existiert nicht.

  • Der Skill kann irgendwo gehostet werden, so lange er über eine offentliche URL erreichbar ist.

  • Die Companion App unterstützt “Cards”, bei denen URLs angeklickt werden können.

  • Zum Testen existiert ein Command Line Tool, das einen “Chat” mit dem eigenen Skill ermöglicht.


Krimizeit

Neuer Alexa Skill “Krimizeit”

Der Alexa Skill “Krimizeit“ ist eine spezielle Version von dem Skill “Meine Mediathek“, die für den Zugriff auf Krimisendungen optimiert ist. Tipps, Filter und Suchfunktion sind für diesen Zweck angepasst. Höchstwahrscheinlich irrelevante Beiträge wie Nachrichtensendungen werden aus den Ergebnislisten herausgefiltert, die Sender KiKa und Phoenix gar nicht erst berücksichtigt.

Mehr über diesen Skill erfahrt Ihr hier.


Neu: Generator für APL Grid Layout mit Container-Elementen

Immer wieder stehe ich vor der Aufgabe, mit den Containerlementen von APL eine Gitterstruktur aufbauen zu müssen. Da das wenig Spaß macht, habe ich einen Generator geschrieben, der den langweiligen Teil dieser Arbeit übernimmt. Danach bleibt dann mehr Zeit übrig, sich um den interessanten Teil der Arbeit zu kümmern.

Auf Wunsch werden Container für Kopf- und Fußzeilen angelegt. Nach Bedarf kann das Tool auch eindeutige Ids und Styles anlegen, mit denen wiederkehrende Layouts ausgelagert werden können.

Achtung: technisch ist es möglich, sehr große Gitterstrukturen mit dieser Anwendung generieren zu lassen. In der Praxis muss man aber darauf achten, dass eine Response nicht größer als “24 kilobytes“ (kein Scherz) sein darf (siehe hier auch die entsprechende Stelle in der Developer Dokumentation).

Das Tool kann man hier aufrufen: aplgrid.applicate.de.

APL Container based grid layout

Wie sieht das Ergebnis aus? Hier ein Beispiel für ein 5 x 7 Gitter (5 Zeilen und 7 Spalten) mit Kopf- und Fußzeilen:

APL Container based grid layout

Auf dieser Grundlage kann man dann schneller mit der Feinarbeit beginnen und sich um die Inhalte des Layouts kümmern.


Neu: Expression Language für Alexa Sprachmodelle

Wenn die JSON Beschreibungsdateien für Alexa wachsen, wird es immer unhandlicher, diese zu pflegen. Zu diesem Zweck arbeite ich selber mit einer Beschreibungssprache, die es mir erlaubt, dynamische Ausdrücke kompakt zu schrieben. Mit dem folgenden Ausdruck habe ich mal eben so zwölf verschiedene “sample utterances“ notiert:

"Wie [geht|läuft|funktioniert|macht man] das [ | jetzt | hier]"

Mit einem Tool kann ich mir dann aus dieser Notation heraus die JSON Dateien generieren, die in der Alexa Developer Console verwendet werden. Durch den Einsatz von Variablen kann ich mir das Vorgehen weiter vereinfachen.

Dieser Ansatz macht es einfacher, Sprachmodelle zu pflegen und wieder zu verwenden. Vielleicht ist das auch für andere Alexa Entwickler nützlich. Deshalb habe ich eine Webseite geschrieben, die diese Toolchain für jeden Benutzer zugänglich macht: interactionmodel.applicate.de.

Click here to find a detailed English description about the approach.

Voice Model Expression Language


TV Live Streams auf dem Echo Show ansehen

Wer sich für eigene Zwecke selber einen Skill schreiben möchte, um “mal eben so” eine Webseite auf dem Echo Show zu öffnen, der kann sich den Code von meinem Alexa Skill “News Flash” auf github ansehen.

Der Skill startet einen Browser und öffnet eine Webseite, die im dargestellten Fall einen CNN-Livestream anbietet. Die URL für die Webseite könnt Ihr natürlich einfach anpassen.

Dieser Ansatz taugt sicher für eigene Anwendungsfälle, durch die Zertifizierung wird er es so aber nicht schaffen.

Was habe ich bei der Entwicklung gelernt:

  • Das Verhalten des Geräts unterscheidet sich abhängig vom eingestellten Browser (Silk oder Firefox). Schaut selber, was für Euch am besten funktioniert.

  • Auf einem Echo Spot funktioniert dieser technische Ansatz nicht. Dieses Gerät unterstützt zwar APL, aber keinen Browser.


Online JSON Formatter

Da ich so etwas im Zusammenhang mit Alexa häufiger brauche, habe ich mir so ein Tool nun selber geschrieben und mache es gerne öffentlich: unter der Adresse jsonformatter.applicate.de gibt es ab sofort einen Online-JSON-Formatter.

JSON online formatter tool


Neue Benutzerführung bei “Meine Mediathek”

Die Oberfläche von “Meine Mediathek“ habe ich gründlich überarbeitet, die Ergebnisse werden jetzt anders präsentiert. Auch der Pause-Dialog bei der Filmwiedergabe wurde mit einer kleinen Animation “aufgehübscht”.

Wer den Skill auf verschiedenen Geräten benutzt, der wird bemerken, dass sich das Erscheinungsbild abhängig vom Device unterscheidet. Das System dahinter ist: bei Geräten mit schwacher Hardwareleistung wird weniger Video und mehr Text gezeigt. Das soll den Skill bedienbar halten.


Neu: Alexa Arcade Game “Garten Party”

Der Alexa Arcade Skill “Garten Party“ ist mein Beitrag zum ‘Amazon Alexa Hackathon at VOICE 2020’. Er ist in einer deutschen und englischen Variante verfügbar. Als Erläuterung habe ich eine englische Beschreibung erstellt.

Alexa Skill Garten Party

Worum geht es? Als Spieler hilfst Du “Frank dem Frosch” dabei, möglichst viele Blumen auf der Wiese zu sammeln. Außerdem muss der Frosch die anderen Tiere mit seiner langen Zunge schnappen, bevor diese schneller sind. Mit Sprachbefehlen wie ‘links’, ‘rechts’, ‘oben’, ‘unten’ oder ‘Feuer!’ kannst Du den Frusch durch die Blumenwiese steuern.

Ein Level ist abgeschlossen, wenn weder Blumen noch andere Tiere übrig sind. Dabei muss ein Level muss beendet werden, bevor Zeit und Energie verbraucht sind. Das Einsammeln von Blumen bringt mehr Energiepunkte als das Schnappen mit der Zunge. Das Spiel wird mit der Zeit schneller und es krabbeln pro Level mehr Tiere über die Wiese.

Wer es ausprobieren mag: Das Programm hört in Deutschland auf den Namen Garten Party und international auf Garden Party:


Meine Mediathek: “Der beste Alexa Skill im Bereich Unterhaltung”

Das freut mich: mein Alexa Skill “Meine Mediathek“ wurde von der Webseite “HouseControllers“ in der Rubrik “Die besten Alexa Skills 2020“ nominiert für “Der beste Alexa Skill im Bereich Unterhaltung”“.


Buchempfehlung “Did you mean Camel Lion?”

Aus der Reihe “Books we will likely never see in print“:

Rebuilding Large Language Models.


Neu: Kostenloser Kurs “Zero To Hero” direkt auf dem Echo

Wer lernen möchte, wie man einen Alexa Skill programmiert, für den stellt Amazon viel kostenloses Material zur Verfügung, unter anderem auch den Videokurs “Zero To Hero“, der auf YouTube verfügbar ist. Wer sich den Kurs direkt auf einem Echo Show ansehen möchte, kann ihn nun direkt per Sprache aufrufen. Wer es ausprobieren mag: Das Programm hört in Deutschland auf den Namen Entwickler Tutorial und international auf Developer Tutorial:

Alexa Skill Zero To Hero

Aufruf in Deutschland

"Alexa, starte Entwickler Tutorial"

Aufruf International (click here for an english homepage)

"Alexa, open Developer Tutorial"

🇩🇪 https://www.amazon.de/gp/product/B08L6LQJQ3 (de-DE)
🇺🇸 https://www.amazon.com/gp/product/B08L6LQJQ3 (en-US)
🇬🇧 https://www.amazon.co.uk/gp/product/B08L6LQJQ3 (en-GB)
🇨🇦 https://www.amazon.ca/gp/product/B08L6LQJQ3 (en-CA)
🇮🇳 https://www.amazon.in/gp/product/B08L6LQJQ3 (en-IN)
🇦🇺 https://www.amazon.com.au/gp/product/B08L6LQJQ3 (en-AU)


Mehr Suchergebnisse bei “Meine Mediathek”

Der Skill “Meine Mediathek“ hat wieder etwas dazu gelernt: Es werden nun nicht mehr nur maximal sechs Suchergebnisse auf einem einzigen Bildschirm dargestellt, sondern insgesamt bis zu drei Bildschirme mit jeweils sechs Ergebnissen, zwischen denen dann per Wischgeste auf dem Bildschirm oder mit Sprachbefehl gewechselt werden kann.

Auch im barrierefreien Betrieb gibt es nun bis zu 18 Ergebnisse. Vorgelesen werden aber nur die ersten drei davon. Die Inhaltsbeschreibungen der anderen Ergebnisse können bei Bedarf direkt per Sprachbefehl abgefragt werden.

Meine Mediathek zeigt mehr Ergebnisse


Buchempfehlung “Rebuilding Large Language Models”

Aus der Reihe “Books we will likely never see in print“:

Rebuilding Large Language Models.


Alexa Skill “Stadtplan” / “Metropolis” ist live

Stadtpläne interaktiv mit Sprache aufrufen. So etwas hatte ich schon einmal implementiert. Aber das Programm ist in die Jahre gekommen und so habe ich den Code und die Darstellung noch einmal gründlich überarbeitet. Statt der Lösung von Open Street Maps benutze ich nun Karten von Nokia HERE Maps. Damit gelingt die Benutzererfahrung deutlich schneller.

Auf einem Echo Show, Echo Spot und einem Fire TV werden die Ergebnisse unterschiedlich angepasst dargestellt und fallweise zusätzliche Bildschirmelemente zur Navigation angeboten.

Innerhalb der Karten kann per Sprachbefehl navigiert werden:

  • Zoom In
  • Zoom Out
  • Nach Norden
  • Nach Süden
  • Nach Westen
  • Nach Osten
  • Gehe nach London / Paris / New York / Sidney

Start:

  • Alexa, öffne Stadtplan
  • Alexa, frage Stadtplan nach einer Karte von Berlin

Wer es ausprobieren mag: Das Programm hört in Deutschland auf den Namen Stadtplan und international auf Metropolis.

Alexa Skill Metropolis

Erhältlich im Skill Store:

🇩🇪 https://www.amazon.de/gp/product/B07NY8BJY9 (de-DE)
🇺🇸 https://www.amazon.com/gp/product/B07NY8BJY9 (en-US)
🇬🇧 https://www.amazon.co.uk/gp/product/B07NY8BJY9 (en-GB)
🇨🇦 https://www.amazon.ca/gp/product/B07NY8BJY9 (en-CA)
🇮🇳 https://www.amazon.in/gp/product/B07NY8BJY9 (en-IN)
🇦🇺 https://www.amazon.com.au/gp/product/B07NY8BJY9 (en-AU)


Buchempfehlung “Memorable Invocation Names”

Aus der Reihe “Books we will likely never see in print“:

Finding Memorable Invocation Names.


Bessere Screenshots für Alexa Skills

Bildschirmfotos oder auch Videos von Alexa Skills zu erstellen, ist nicht immer ganz einfach. Eingebaute Funktionen gibt es keine und das Abfilmen mit der Handykamera gerät in der Regel zur echten Wackelpartie.

Etwas einfacher ist die Situation nun mit einem praktischen Tool von Alexander Martin (@xeladotbe), geworden, das es komfortabel ermöglicht, APL-Dokumente auf verschiedenen Geräten darzustellen:

APL Simulator für bessere Screenshots


Englische Inhalte in deutschen Alexa Skills

Schon häufiger bin ich über dieses Thema gestolpert: bei der Zertifizierung von deutschen Alexa Skills sieht man den Bezug zur englischen Sprache kritisch. So wurde schon einmal ein Skill abgelehnt, der zu öffentlichen Bildern der NASA englische Bildbeschreibungen vorlas. Auch mit englischen Invocation Names kann man Probleme bekommen.

Aktuell habe ich Schwierigkeiten, weil mein Sprachmodell auch auf die Befehle “Zoom In“ und “Zoom out“ hört. Das mögen die Prüfer gar nicht. Da hilft es wenig, dass im Deutschen DUDEN das Wort “Zoom” sowohl als Verb wie auch als Substantiv enthalten ist.


Alles hat einen Anfang: Zeitreise in das Jahr 1987

Wenn man bei Google seinen eigenen Namen eingibt, dann stößt man manchmal auf seltsame Dinge aus der eigenen Vergangenheit: In einem C64-Wiki bin ich auf einen Eintrag aus meiner Zeit als C64-Entwickler gestoßen. Dort hat sich jemand wirklich die Mühe gemacht, ein über 30 Jahre altes Programm von mir nachträglich zu dokumentieren, dass einmal bei “INPUT 64“ erschienen ist.

Ich selber konnte mich an dieses Werk “PLH” gar nicht mehr erinneren. Dank an den unbekannten Autor, der sich die Mühe gemacht hat, diesen Moment wieder zurück in die Gegenwart zu holen!

Commodore 64 - PLH


Textvariationen für bessere Alexa Skills

Alexa Skills, die immer dasselbe sagen, wirken schnell langweilig und eintönig. Mit wenigen Zeilen Code kann man aber einfach Abwechlung und Vielfalt in der Äußerungen eines Skills zu bringen.

Alles was man braucht, ist eine Hilfsfunktion wie im folgenden Beispiel:

function unwrap(text) {
    var matches, options, random;
    var regEx = new RegExp(/{([^{}]+?)}/);
    while ((matches = regEx.exec(text)) !== null) {
        options = matches[1].split("|");
        random = Math.floor(Math.random() * options.length);
        text = text.replace(matches[0], options[random]);
    }
    return text;
}

Diese Funktion verwende ich in mehr oder weniger allen meinen Alexa Skills. Was die Methode macht und wie sie funktioniert, erkläre ich auf GitHub.


Akustische Verzerrung und Echoeffekte mit APLA

Von einem Gerät, dass ECHO im Namen trägt, sollte man eigentlich erwarten, dass es einfach ist, für Sprachausgaben Echo-Effekte oder Verzerrungen zu konfigurieren. Out-of-the-box ist das aber überaschenderweise nicht der Fall.

SSML bietet hier nur wenig Unterstützung. Wie man eine mit SSML verzerrte Stimme in der Praxis einsetzen kann, kann man sich bei meinem Arcade-Skill “Commander Speedo“ anhören.

Mit der Einführung von “APLA“ haben wir nun aber ganz neue Möglichkeiten bekommen. Eine “Mixer“ genannnte Funktion erlaubt es, Sprachausgaben mit Zeitversatz parallel abzuspielen. Damit bekommen wir einen Echo-Effekt hin und haben sogar viele Schrauben, an denen wir zum Feintuning drehen können. Wie das genau funktioniert, könnt Ihr Euch auf meinem Github-Account ansehen.


Mehr “Barrierefreiheit” für Alexa Skill “Meine Mediathek”

Der Alexa Skill “Meine Mediathek“ hat wieder etwas dazu gelernt. Im aktuellen Update wird insbesondere das Thema “Barrierefreiheit” addressiert, was durch die Erweiterung der Funktionalität auf bildschirmlose Geräte und die Unterstützung von “VoiceView” zum Ausdruck kommt:

Hier eine Liste mit neuen Funktionen und Änderungen:

  • Neu: Barrierefreiheit - Einsatz von VoiceView auf Geräten mit Bilschirm
  • Neu: Barrierefreiheit - Funktioniert auch auf Geräten ohne Bildschirm wie Echo Dot
  • Auf Geräten ohne Bildschirm sagt Alexa mehr, als auf Geräten mit Bildschirm
  • Neu: Das Angeobt vom Saarländischen Rundfunk fehlte noch in der Ergebnisliste und wurde ergänzt
  • Neu: Zur Vermeidung von doppelten Ergebnissen werden - wenn nicht explizit gesucht - solche Sendungen mit dem Merkmalen “Hörfassung” und “Audiodeskription” nicht angezeigt
  • Neu: Die explizite Suche nach Sendungen mit “Hörfassung” findet automatisch auch Filme mit dem Merkmal “Audiodeskription”
  • Neu: Die Anwendung merkt sich den zuletzt verwendeten Suchbegriff für den nächsten Start
  • Neu: Die Episodensuche findet nun noch mehr Schreibweisen für Episoden
  • Neu: unaussprechliche Sonderzeichen werden aus der Filmbeschreibung herausgefiltert
  • Neu: Wenn die Wiedergabe pausiert wird, dann wird der Skill erst nach 10+ Minuten abgebrochen und nicht schon nach 30 Sekunden
  • Die Performance der Wiedergabe auf einem “Fire TV” wurde verbessert
  • Ein Fehler in der Sortierung von Filmen wurde behoben
  • Die gesprochenen Hilfetexte wurden verbessert

Achtung: Während der Tonwiedergabe von Filmen auf einem Gerät ohne Bildschirm wie zum Beispiel dem Echo Dot ändert sich teilweise die Art der Aufrufe von Funktionen. Dies ist dann der Fall, wenn während der Wiedergabe der Tonspur eine Aktion ausgelöst werden soll. Dann muss der Name “Meine Mediathek“ mit im Befehl verwendet werden.

An einem Beispiel wird das verständlicher. Eine Beispielsitzung auf einem Echo Dot könnte folgendermaßen aussehen:

  • Alexa öffne Meine Mediathek
  • Alexa öffne Meine Mediathek und suche nach Tatort Hörfassung“ (findet auch Filme mit “Audiodeskription!”)
  • Alexa, lies die Beschreibungen noch einmal
  • Alexa, worum geht es in Film Nummer 2?
  • Alexa spiele Film Nummer 2
  • Alexa, Pause
  • Alexa, fortsetzen
  • Alexa, frage Meine Mediathek: was läuft gerade?
  • Alexa, öffne Meine Mediathek und gehe zum Anfang.
  • Alexa, öffne Meine Mediathek und spule vor.“ (es wird 30 Sekunden vorgespult)
  • Alexa, öffne Meine Mediathek und spule zurück.“ (Die Sendung wird 30 Sekunden zurück gespielt)
  • Alexa, öffne Meine Mediathek und suche nach Krimis Hörfassung
  • Alexa, öffne Meine Mediathek und gehe zurück zur Übersicht
  • Alexa, öffne Meine Mediathek und suche nach Sturm der Liebe

Das ist zum Teil etwas umständlich. Beim Einsatz des Alexa AudioPlayers führt aber technisch leider kein Weg daran vorbei, den Namen des Skills während der Wiedergabe noch einmal nennen zu müssen.

Hier findet Ihr mehr zu dem Skill “Meine Mediathek” inklusive einer ausführlichen Befehlsliste.

Alexa aktiviere den Skill Meine Mediathek


Update für Alexa Skill “Meine Mediathek” bringt Episodensuche

Der Alexa Skill “Meine Mediathek“ hat wieder etwas dazu gelernt. Wenn nach Serien wie “Sturm der Liebe” oder “Huber und Staller” gesucht wird, kann gezielt nach einer Episodennummer gesucht werden. Ein Dialog könnte dann folgendermaßen aussehen:

  • Alexa, öffne Meine Mediathek und suche nach Sturm der Liebe
  • Alexa, suche nach Episode 2000

Oder

  • Alexa, öffne Meine Mediathek und suche nach Hubert und Staller
  • Alexa, suche nach Folge Nummer 12

Hier findet Ihr mehr zu dem Skill “Meine Mediathek” inklusive einer ausführlichen Befehlsliste.


“Commodore 64” Emulator für Alexa / Echo Show

Noch so ein Experiment: Durch Einsatz der “Web API for Games“ ist es möglich, einen Emulator für den Commodore 64 auf einem Echo Show zu booten:

Commodore 64 - Beispielprogramm

Wenn man den Echo Show mit einem Bluetooth Keyboard verbindet, dann können wir sogar Programme im Commodore Basic V2 schreiben:

Commodore 64 - Bluetooth Keyboard

Leider ist es sehr ungewiss, ob so ein Ansatz es durch die Zertifizierung schaffen würde. Das lässt mich zögern, aus diesem Ansatz einen vollwertigen Skill zu machen.


“Quick Links” für Alexa Skills

Quick Links“ sollen dem Benutzer eines Browsers den schnellen Zugriff auf einen Alexa Skill per Link ermöglichen. Leider ist dieses Feature noch nicht für Deutschland verfügbar. Folgt man der Anleitung und erstellt manuell einen Quick Link für einen deutschen Skill, dann erscheint im Browser einen Fehlermeldung.

Das kann man zum Beispiel beim Skill Meine Mediathek sehen. Hier lautet der Quick Link:

https://alexa-skills.amazon.com/apis/custom/skills/amzn1.ask.skill.8872472e-9436-4e9e-887c-5a936f8191d8/launch

Was aber passiert, wenn man den Quick Link für einen Skill erstellt, der sowohl für “en-US” wie auch “de-DE” verfügbar ist?
Im Falle von “Commander Speedo” lautet der Link:

https://alexa-skills.amazon.com/apis/custom/skills/amzn1.ask.skill.08488df0-fe4f-4d4e-a749-eb0d1603bae7/launch

Der Request wird dann weitergeleitet auf die deutsche Skill Store Seite von dem Skill. Das ist doch schon einmal etwas.

Wer das für “Commander Speedo” schon einmal ausprobieren möchte, hier ist der Link:


Erfahrungsbericht: APL “Document Link” im Einsatz

Mit APL 1.4 haben wir nun die Möglichkeit, APLA und APL Dokumente zu hosten um dann über eine URI vom Skill Code aus auf diese Dokumente zu verlinken.

Wie sich der Einsatz dieser neuen Funktionalität in der Praxis anfühlt, darüber habe ich einen Artikel zu Document Links mit Codebeispielen auf Github veröffenticht.

return handlerInput.responseBuilder
  .addDirective({
    type: "Alexa.Presentation.APL.RenderDocument",
    token: "someToken",
    document: {
      src: "doc://alexa/apl/documents/some-apl-template-name",
      type: "Link",
    },
    datasources: {},
    packages: [],
  })
  .speak(speakOutput)
  .reprompt(speakOutput)
  .getResponse();
}

Das Node.js-Codebeispiel zeigt, wie man vom Code aus auf ein abgelegtes Dokument verweist.


Alexa Sounds mischen mit “APLA” (APL for Audio)

Die Alexa Live 2020 hat uns als Neuerung auch APLA (APL for Audio) gebracht. Damit können Töne und Sprache bei der Ausgabe gemischt werden, um besondere Effekt zu erzielen. Das ist schon bei einfachen Beispielen ein effektvoller Fortschritt.

Mir kam der Gedanke, mit diesem Feature einen Alexa DJ Skill zu erstellen, der als “Soundmaschine“ vom Benutzer über die Toucheingabe von einem Echo Show gesteuert wird.

Bei den ersten Experimenten mit dieser Idee kam aber schnell heraus, dass APLA nicht so präzise arbeitet, wie es für so eine Idee nötig wäre.

So ist zum Beispiel das Kommando “Mixer“ dazu da, Töne und Sprachausgaben parallel zu mixen. Im Idealfall sollte man also bei zwei gleichen Ausgaben und perfektem Timing überhaupt nichts bemerken.

Tatsächlich hört man aber einen kräftigen Echo-Effekt. Wer es selber einmal ausprobieren möchte:

{
  "type":"Mixer",
  "items":[
      {
        "type":"Speech",
        "contentType":"PlainText",
        "content":"Tell me why the echo"
      },
      {
        "type":"Speech",
        "contentType":"PlainText",
        "content":"Tell me why the echo"
      }
  ]
}

Nachtrag: Wie sich nachträglich herausgestellt hat, war dies tatsächlich ein Bug, der mittlerweile gefixt wurde. Nun funktioniert es wie dokumentiert.


“Device Log”: Fehlersuche in der Developer Web Console

Wenn es bei der Skill-Entwicklung klemmt, dann beginnt in de Regel die leidige Arbeit mit dem Durchsuchen von Logfiles, auf die wir über CloudWatch zugreifen können. Das erweist sich oft als mühselig.

Wenn das Fehlerverhalten von einem Skill auch auf der Testseite der Developer Web Console reproduziert werden kann, dann gibt es noch eine weitere Möglichkeit zur Analyse, die häufig übersehen wird:

Der Knopf “Device Log“ eröffnet uns Einblick in einige Fehlermeldungen, die wir niemals in CloudWatch zu sehen bekommen. Falls gar nichts mehr geht, dann ist dies zumindest einen Versuch wert:

Web Console


Multimodale Alexa-Skills: APL oder Web-Technologie?

Mit der offiziellen Freischaltung der “Web API for Games“ hat der Entwickler nun zwei ganz unterschiedliche Technologien zur Auswahl, wenn es darum geht, grafische Inhalte auf dem Bildschirm darzustellen:

  1. Web-API for Games - frei verfügbar sein Alexa Live 2020
  2. Alexa Presentation Language (APL) - seit Alexa Live 2020 verfügbar in der Version 1.4

Für welchen Ansatz soll man sich entscheiden? An einem Punkt ist es einfach: Wenn der Skill nicht mit einem Spiel zu tun hat, bleibt einem nur der Weg über APL. Der Einsatz von Web-API for Games ist eingeschränkt auf den Einsatz in Spiele-Skills. Obwohl der Ansatz auch in einem anderen Kontext technisch funktionieren würde, bringt man ihn nicht durch die Zertifizierung.

Schwieriger wird es, wenn man ein Spiel implementieren möchte. Hier hat man die Qual der Wahl, die folgenden Kriterien helfen vielleicht bei der Entscheidung:

Web API for Games

  • PRO

    • Vertraute Technologie
    • Viele Tools existieren
    • eventuell existierende Codebase kann angepasst werden
    • Entwickler mit Know-How sind leicht am Markt zu finden
  • CONTRA

    • nicht alles funktioniert wie im Browser
    • Startup der Engine dauert länger als bei APL

Alexa Presentation Language:

  • PRO

    • Schnelleres Startup
    • Grundsätzlich bessere Performance: Die Technologie ist näher an der Hardware dran
  • CONTRA

    • Lernkurve für Einsteiger, (nicht mehr ganz so) neue Technologie
    • Tooling noch nicht so komfortabel wie bei HTML, aber es wird besser (seit Alexa Live 2020 gibt es Preview in Visual Studio Code)
    • Entwickler mit entsprechendem Know How gibt es (noch) nicht so viele.

Alexa APL: Autoscrolling von Texten mit String.slice()

Auf github zeige ich an einem Beispiel, wie man durch Kombination der Funktionen Time() und String.slice() in APL Texte dazu bringen kann, von selber zu scrollen.

Das ist hilfreich, wenn man viel Information auf wenig Platz unterbringen will.

Es gibt da aber aktuell eine Einschränkung: Wie sich bei der Entwicklung zeigte, bringt die Funktion String.slice() ein APL zum Absturz, wenn sie auf einen Umlaut angewendet wird.

Der Bug ist gemeldet und in Arbeit.


Alexa Live: Alexa Conversations ausprobiert

Alexa Live“ hat uns vergangene Woche mit “Alexa Conversations“ ein neues Feature freigeschaltet, welches verspricht, Alexa Skills mit deutlich weniger Code zu implementieren. Die Anzahl verstandener Äußerungen soll gleichzeitig sehr viel umfangreicher und flexibler sein.

Das klingt vielversprechend und deshalb habe ich es selber einmal ausprobiert. Erster Eindruck: Unabhängig von dem, was “Alexa Conversations” in der Spracherkennung leistet, verändert sich der Entwicklungsprozeß. Zumindest Teile der Konfiguration werden nicht auf Code-Artefakte abgebildet, wenn wir mit den Ask-Tools von der Kommandozeile arbeiten. Ohne Web-Developer-Console geht es also nicht. Das ist schade.

Deployment-Zyklen beim Ändern des Sprachmodells werden sich deutlich verlangsamen: ich selber habe schon beim Ändern eines “invocation names” Zeiten von 7,5 Minuten für einen Rebuild gemessen. Die offizielle Dokumentation von Amazon nennt “15 Minuten” realistisch.

In anderen Worten bedeutet dies, dass man damit rechnen muss, nicht mehr als vier Änderungen pro Stunde durchzubringen. Das ist nicht viel, wenn man mit einer neuen Technologie erst einmal warm werden muss.


Alexa Live: Web API für Games nun frei verfügbar

Die Alexa “Web API for Games“ ist nun für jeden Entwickler frei verfügbar. Damit ist es möglich, auf Geräten mit einem Bildschirm Spiele zu implementieren, die Webtechnologien verwenden.

Wie die Einbindung von Webinhalten in einen Skill funktioniert, kann man sich auf meiner Github-Seite an einem sehr einfachen Beispiel ansehen. Der Launch-Request wird dort direkt an eine existierende Webseite weiter geleitet und das Ergebnis auf dem Bildschirm dargestellt.

Nicht alles, was im Web geht, funktioniert auch auf den Echo-Geräten. Wer den Einsatz der Web API in seinem Projekt plant, sollte vorher die offizielle Liste der Einschränkungen konsultieren. Außerdem pflegt Amazon eine Liste mit “Known Issues“.

Die aus meiner Sicht wichtigste Einschränkung ist nicht technischer Natur. Amazon untersagt den Einsatz dieser Technologie für solche Alexa Skills, die nichts mit Spielen zu tun haben. Nachvollziehbar finde ich das nicht:

Das Web ist der alltägliche Beweis dafür, dass es viele Anwendungsgebiete gäbe, bei denen der Einsatz der Web API auch für andere Zwecke eine gute Idee wäre. Aber auch wenn es technisch funktioniert: die Regeln zur Zertifizierung von Alexa Skills werden streng gelebt und ich würde nicht dazu raten, diese Einschränkung bei einer Technologieentscheidung zu ignorieren.


Alexa Skills einfacher testen mit “Tap to Alexa”

Die “Acessibility Tools“ von einem Echo Show sollen den barrierefreien Zugang zu dem Sprachassistenten erleichtern. Die Optionen, die wir hier bei den Einstellungen finden, bieten mit “Tap to Alexa“ aber auch eine Funktion, die uns Entwicklern die Arbeit erheblich erleichtern kann.

Werden die Funktionen grundsätzlich aktiviert, dann erscheint zunächst ein “schwebender” Knopf auf dem Bildschirm, der in gewissem Rahmen frei verschoben werden kann. Bei mir hat er oben rechts auf dem Bildschirm ein Zuhause gefunden:

Tap to Alexa - Activation Button

Wozu ist das gut? Wer beim Testen einen Skill nicht immer wieder per Sprachbefehl aktivieren mag, hat nun alternativ die Möglichkeit, eine Art Makro zu definieren, die mit einem Knopf verknüpft wird, dessen Funktion per Touch aktiviert werden kann. Damit läßt sich dann ein “stummer Aufruf” von einem Alexa Skill realisieren:

Tap to Alexa - Menu


APL 1.4: Hinweise auf ein Update?

Der “APL Doctor“ zeigt auf meinem Echo Show für die Alexa Presentation Language die Versionsnummer APL 1.4 an (siehe unten). Auch die Testumgebung der Developer Console steht mittlerweile auf der Versionsnummer 1.4, von der wir offiziell noch gar nichts wissen. Vielleicht erfahren wir demnächst bei der Alexa Live!-Konferenz Neuigkeiten zu diesem Thema?

[APL 1.4 coming soon]


Update für Alexa Skill “Meine Mediathek”

Der Alexa Skill “Meine Mediathek“ hat dazu gelernt. Da aus Platzgründen stets nur bis zu sechs Ergebnisse auf dem Bildschirm angezeigt werden, gibt es noch die Möglichkeit, das Suchergebnis zu filtern:

  • Alexa, suche nach langen Filmen
  • Alexa, suche nach kurzen Filmen
  • Alexa, suche nach aktuellen Filmen

Hier findet Ihr mehr zu dem Skill Meine Mediathek inklusive einer ausführlichen Befehlsliste.


APL 1.3: Die Timer API für andere Zwecke verwenden

Auf github.com habe ich anhand mehrere Beispiele erläutert, wie es möglich ist, die Time-API von APL 1.3 für ganz andere Zwecke zweckzuentfremden. Mit ihrer Hilfe lassen sich einfache Animationen erstellen, die im Hintergrund laufen und auch nicht durch Spracheingabe unterbrochen werden.

APL 1.3 Time API


Alexa Skill “Memo Mail” ist live

Wer seine Mailbox gerne auch als Aufgaben/ToDo-Liste verwendet, der wird diesen Skill nützlich finden: “Memo Mail“ schickt einen kurzen gesprochenen Text an die Mailadresse, die mit dem Account des Echo-Geräts verknüpft ist.

Zum Aufruf gibt es zwei Möglichkeiten:

Aufruf in einem Kommando:
Alexa starte Memo Mail und schicke mir den Text: Milch und Brot einkaufen“ (das funktioniert nur mit kurzen Texten)

Verwendung in zwei Schritten:
Alexa starte Memo Mail“ (Alexa fragt danach nach dem zu versendenden Text, der dann auch länger sein darf)

Tipp: Je kürzer der gesprochene Text ist, um so besser kann Alexa ihn verstehen

Tipp: Das Subject von der Mail enthält das Symbol ‘📎’ und am Ende ein Tag mit dem Namen [MemoMail]. Das erleichtert bei Bedarf das Erstellen von automatischen Filterregeln.

Zur Erläuterung habe ich auch eine englische Beschreibung erstellt.

Memo Mail


Alexa Skill “Sky Pix” ist live

Der Alexa Skill “Sky Pix“ zeigt auf einem Echo-Gerät mit Bildschirm zufällige Bilder von der NASA-Webseite “Astronomy picture of the day” (APOD) an.

Zur Erläuterung habe ich eine englische Beschreibung erstellt.

Sky Pix


Linux und X Windows auf einem Echo Show

Basierend auf der großartigen Vorarbeit von Fabrice Bellard (bellard.org) ist es möglich, ein komplettes Linux-System inklusive X Windows auf einem Echo Show zu booten. Auch die Erkennung vom Touch-Bildschirm funktioniert:

Echo Show running Linux and X Windows

Das ganze passiert allerdings “nur” innerhalb von einem Browserfenster. Aber es zeigt, was die Hardware von einem Echo Show technisch hergibt.


Alexa Skill “Meine Mediathek” ist live

Der Alexa Skill “Meine Mediathek“ bietet Zugriff auf Inhalte von Mediatheken der Öffentlich-rechtlichen Sender in Deutschland. Mit einem Suchbefehl können alle Mediatheken auf einmal durchsucht und Filme auf Zuruf abgespielt werden.

Hier findet Ihr mehr zu dem Skill Meine Mediathek.

Meine Mediathek

Der Skill ist ausschließlich in deutscher Sprache verfügbar:


Echo Show mit Tastatur

Man muss nicht alles machen, was machbar ist. Es ist auch nicht immer sinnvoll, aber Spaß macht es vielleicht trotzdem:

So ist es zum Beispiel technisch möglich, einen Echo Show per Bluetooth mit einer externen Tastatur zu verbinden. Wenn man dann noch im Echo Show einen Browser öffnet, dann kann man dieses Setup als Entwicklungsumgebung benutzen, wie folgendes Foto zeigt:

Echo Show mit Tastatur

So gezeigt, ist das eher eine Machbarkeitsstudie, aber vielleicht gibt es für dieses Setup ja auch sinnvolle Use Cases?


Alexa Skill “Campus Voice” ist live

Der Alexa Skill “Campus Voice“ bietet schnellen Zugriff auf freie und kostenlose Dienste, die den Alexa Skill Entwickler bei seiner Arbeit unterstützen. Enthalten sind zum Beispiel Zugriffe auf Twitch-Vorträge, Video-Kurse, Vorträge, Diskussionsforen und Beispielprojekte auf GitHub.

Zur Erläuterung habe ich eine englische Beschreibung erstellt.

Campus Voice


Alexa Arcade Skill “Commander Speedo” ist live

Der Alexa Arcade Skill “Commander Speedo“ ist live in einer deutschen und englischen Variante! Zur Erläuterung habe ich eine englische Beschreibung erstellt.

Als Spieler hilfst Du dabei “Commander Speedo”, das Universum zu retten. Sammle Energiekristalle und schieße alle Monster auf dem Bildschirm ab, bevor sie Dich erwischen. Mit Sprachbefehlen wie ‘links’, ‘rechts’, ‘oben’, ‘unten’ oder ‘Feuer!’ kannst Du die Rakete steuern.

Ein Level ist abgeschlossen, wenn weder Monster noch Edelsteine übrig sind. Dabei muss ein Level muss beendet werden, bevor Zeit und Energie verbraucht sind. Das Einsammeln von blinkenden Edelsteinen bringt mehr Energiepunkte als das Abschießen. Das Spiel wird mit der Zeit schneller und es treten pro Level mehr und mehr Monster gegen Dich an.

Der Skill wurde auch live im “Alexa Game Chat” gespielt und besprochen:

Commander Speedo on Twitch


Auf Wiedersehen “Echo Buttons”

Amazon hat angekündigt, dass die “Echo Buttons Skill API” ab 1. Dezember 2020 “deprecated” wird.

Die Idee von Echo Buttons hat mir gefallen, aber Skills dafür zu programmieren hat wenig Spaß gemacht.

Sechs Buttons habe ich daheim, aber bis auf einen Button, der auf Knofdruck alle Smart-Home-Lampen in der Wohnung abschaltet, warten die anderen in einer Schublade auf einen Aufgabe.


Alexa Skill “APL Doktor” ist live

Auf Alexa Geräten mit Bildschirm werden vom “APL Doctor“ gerätespezifische Daten angezeigt, die für die Entwicklung von Alexa Skills mit APL (Alexa Presentation Language) hilfreich sind.

Fun fact: Amazon hat mich im Rahmen der Zertifizierung gebeten, deutlich zu machen, dass dies eine privat entwickeltes Tool und kein offizieller Amazon Skill ist.

Zur Erläuterung habe ich eine englische Beschreibung erstellt.


Alexa Skill “Sternzeit” / “Starfield Clock” ist live

Auf Alexa Geräten mit Bildschirm zeigt dieser Skill eine Analoguhr vor einem animierten Hintergrund an. Im deutschsprachigen Raum hat der Skill den Namen “Sternzeit“, im englischsprachigen Raum hört der Skill auf “Starfield Clock“.

Starfield Clock

Zur Erläuterung habe ich eine englische Beschreibung erstellt.


Alexa Skill “Corona Monitor” nicht zertifizierbar

Aus aktuellem Anlaß habe ich einen Skill geschrieben, der auf Zuruf zu genannten Ländern die aktuellen Corona-Fallzahlen auf einer Weltkarte anzeigt und vorliest.

Leider hat es der Skill aus konzeptionellen Gründen nicht durch die Zertifizierung geschafft:

Skills zum Thema “Corona” wolle man grundsätzlich nicht im Skill Store haben, weil man gegenüber dem Benutzer nicht sicher stellen könne, dass die genannten Zahlen fundiert sind. Ich habe beobachtet, dass auch andere Skills mit Bezug zu Corona, die gelistet waren, nachträglich wieder verschwunden sind.


Prototyping mit APL (Alexa Presentation Language)

Vor der Implementierung kommt die Konzeptarbeit: aktuell arbeite ich mit APL (Alexa Presentation Language) an der GUI Gestaltung für einen neuen Skill:

Commander Speedo

Wenn alles klappt, wird das einmal ein sprachgesteuertes Arcade-Spiel werden.


Alexa Skill: S.O.S. als Morsezeichen

Ein kleiner Skill von mir, der das Signal S.O.S. als Morsezeichen abspielt, hat es nicht durch die Zertifizierung geschafft:

Man wolle vermeiden, dass ein Benutzer den Skill irrtümlicherweise dazu benutzt, einen echten Notruf absetzen zu wollen …


Einstieg in die Skill Entwicklung mit Minimal Viable Product (MVP)

Mittlerweile bin ich seit mehreren Jahren bei dem Thema Alexa dabei. Da ist es Zeit für einen Blick auf die Zugriffs- und Nutzerzahlen. Es gibt Skills von mir, die an einem Tag entstehen und solche, in denen sehr viel Arbeit steckt (Wikipedia, Landkarten, Bewegungstrainer).

Ernüchternd ist die Erkenntnis, dass die aufwendigen Skills eher diejenigen sind, die nicht so häufig benutzt werden.

Für mich ist das ein starkes Argument dafür, beim Einstieg in das Thema mit einem minimal viable product (MVP) zu beginnen und erst einmal Erfahrung damit zu sammeln, ob und wie die Kunden einen Skill benutzen.


Richtlinien zur Zertifizierung

Manchmal wundert man sich, an welcher Vision für “gute” Alexa-Skills sich der Zertifizierungsprozeß orientiert:

  • Ein Skill von mir, der die Ballade “Erlkönig“ von Johann Wolfgang von Goethe vorliest, wurde aus konzeptionellen Gründen abgelehnt. Man hätte Zweifel an der Benutzererfahrung, so hieß es sinngemäß.

  • Ein anderer Skill von mir, der auf den Namen “Manamana“ hört, daraufhin mit “Bidibidibi“ antwortet und sonst gar nichts macht, hat es dagegen problemlos durch die Zertifizierung geschafft.

Was sagt das über den Zertifizierungsprozeß aus?


Skill Entwicklung anders mit Litexa

Das Team von Litexa stellt ein Framework vor, mit dem sich Alexa Skills mit deutlich weniger Aufwand entwickeln lassen. Es werden längst nicht alle Features unterstützt, die Alexa bietet, deshalb sollte der Einsatz vor Projektbeginn gründlich geprüft werden.

Vor allem der Deployment-Prozeß verringert - wenn einmal eingerichtet - den nötigen Zeitaufwand für die Livestellung ganz erheblich.

Erstaunlich ist, wie der Umfang an Code, der für die Entwicklung nötig ist, auf einen Bruchteil schrumpft im Vergleich zum klassischen Ansatz.

Mittlerweile habe ich mehrere Skills auf diesem Weg erstellt und bin jedes Mal erstaunt darüber, wie schnell ich fertig bin. Dieser Ansatz hat sicher Zukunft!


Liste meiner Alexa Skills

Eine Liste meiner veröffentlichten Alexa Skills findet man bei amazon.de.


Durcheinander bei der Skill Prüfung

Szenario: Ein Kunde leitet mir einen Fehlerbericht von Amazon weiter mit der Aufforderung, dass ein Fehler im Skill korrigiert werden soll. Andernfalls droht dem Skill die Abschaltung.

Seltsam: Die Fehlerbeschreibung aus der Abteilung “Zertifizierung” passt überhaupt nicht zu dem Skill, den ich implementiert habe.

Lösung: Es gibt einen anderen Skill mit demselben Namen von einem anderen Anbieter. Die Tester haben Skills und die dazugehörigen Herausgeber miteinander verwechselt. Das sollte eigentlich nicht passieren.


Alexa friendly mp3-Files erzeugen

Alexa ist sehr wählerisch damit, was die Aufbereitung von mp3-Dateien angeht.

Unter Linux ist das Thema mit einem Einzeiler erledigt:

1
ffmpeg -i <input-file> -ac 2 -codec:a libmp3lame -b:a 48k -ar 16000 <output-file.mp3>

Wer das ganze lieber interaktiv im Browser erledigt, dem empfehle ich die Webseite https://www.jovo.tech/audio-converter#


Amazon empfiehlt meinen R2 D2 Skill

Im wöchentlichen Alexa-Newsletter hat Amazon den Nutzern meinen R2-D2-Skill empfohlen:

.

Danach gingen dann die Zugriffe und Aufrufzahlen für den Skill unmittelbar durch die Decke. Aber wie man sieht, normalisiert sich das über die Zeit wieder:

.

Amazon hat mir einige Tage später eine Warnung zugeschickt, dass durch den intensiven Aufruf des Skills Kosten durch die Nutzung der AWS-Infrastruktur entstehen können. Dabei geht es allerdings um einen Betrag < 1 €. Ich denke, damit kann ich leben. :-)

Wer es selber einmal ausprobieren will: R2D2 im Alexa Skill Store