Sommario:

Alexa Skill Erstellen (tedesco - tedesco): 10 passaggi
Alexa Skill Erstellen (tedesco - tedesco): 10 passaggi

Video: Alexa Skill Erstellen (tedesco - tedesco): 10 passaggi

Video: Alexa Skill Erstellen (tedesco - tedesco): 10 passaggi
Video: AC Milan 2018 in 2023 ⚫🔴 almost everyone is gone🤔 2024, Luglio
Anonim
Alexa Skill Erstellen (tedesco | tedesco)
Alexa Skill Erstellen (tedesco | tedesco)

Era ein Alexa Skill?

Alexa è un cloud-basierter Sprachservice, der auf Geräten wie Amazon Echo, Echo Dot, Echo Show o Echo Spot verfügbar ist. Entwickler können Alexa Fähigkeiten hinzufügen, so genannte Skills, mit denen die Nutzer ihr Gerät auf ihre Bedürfnisse anpassen können. È già disponibile Skills in Alexa Skills Store zu entdecken, u. un. von Unternehmen wie Deutsche Bahn, Chefkoch oder dem ZDF e vielen weiteren innovativen Designern und Entwicklern. ~ Quelle: developer.amazon.com

In diesem Tutorial wird erklärt, wie man einen solchen Alexa Skill è stato sviluppato e programmato.

Ziel:

Ziel ist es, einen Witze Skill, namens lustige Witze zu programmieren. Dieser Skill soll dem Benutzer Witze zufällig ausgewählte Witze erzählen.

Dimostrazione:

Um zu sehen, wie der Skill nachher Funktionieren soll, gibt es hier bereits eine Demo:

skills-store.amazon.de/deeplink/dp/B07ZKH9…

Dieser Skill può essere utilizzato per ottenere risultati.

Forniture

  • Programmierkenntnisse
  • Kenntnisse in Node.js

Passaggio 1: Erstellen Eines Account sviluppatore Amazon

Erstellen Eines Account sviluppatore Amazon
Erstellen Eines Account sviluppatore Amazon

Sofern Du noch keinen Amazon Developer Account besitzt, kannst Du hier einen erstellen, oder dich hier anmelden.

Fase 2: Abilità Erstelle Einen Neuen

Erstelle Einen Neuen Skill
Erstelle Einen Neuen Skill
Erstelle Einen Neuen Skill
Erstelle Einen Neuen Skill
  1. Folge diesem Link:
  2. Clicca sulla creazione del pulsante abilità sulla pagina successiva. Eine neue Seite öffnet sich anschließend.
  3. Gib den Namen deines Abilità (in unserem Fall: Lustige Witze) im Nome dell'abilità Feld ein.
  4. Stelle die Sprache bei Lingua predefinita in tedesco (DE).
  5. Wir wollen einen Custom-Skill erstellen, also wählen wir beim Modello Custom aus.
  6. Wähle bei Scegli un metodo per ospitare le risorse di backend delle tue abilità das zweite, anche Alexa-Hosted (Node.js) aus.
  7. Nachdem Du alles ausgewählt hast, klicke oben rechts auf Crea abilità.
  8. Ein neues Fenster öffnet sich

Fase 3: Begrüße Den Benutzer

Begrüße Den Benutzer
Begrüße Den Benutzer

Das erste, was ein Benutzer mit einem Skill macht, ist ihn zu öffnen. Der Intent der den Skill öffnet ist beits im Skill eingebaut, somit muss dieser Intent nicht extra hinzugefügt werden.

  1. Öffne den Code Tab → Das Code Fenster mit der index.js Datei öffnet sich.

    Jeder Intent Handlet hat zwei Funzioni:

    • può gestire()
    • maneggiare()

    Die canHandle() Funktion beinhaltet den Request, also die Anfrage, auf die der Handler antwortet.

    Die handle() Funzione gibt dem Benutzer dann einen Antwort.

    Wenn dein Skill eine Anfrage empfängt, so wird in der canHandle() Funktion nachgesehen, ob der Handler dieser Anfrage antworten kann.

  2. In der handle() Funktion des LaunchRequestHandlers lösche den gesamten Code heraus und füge anschließend zu Beginn folgendes ein:

    const speakOutput = 'Willkommen bei "Lustige Witze"! Frage einfach nach einem Witz.';

    const repromtText = 'Möchtest du einen Witz hören?';

  3. Nun müssen wir die Antwort noch an den Benutzer senden.

    return handlerInput.responseBuilder

    .speak(speakOutput).reprompt(repromtText).getResponse();

Clicca su Save und anschließend auf Deploy

Der bereits generierte Code gibt Antworten in englischer Sprache. Damit der Alexa Skill später auch genehmigt wird, muss jede englische Antwort auf Deutsch umgeschrieben werden.

Bei folgenden Handlern muss der Wert der speakOutput Variable auf deutsch umgeschrieben werden:

  • AiutoIntentHandler

    const speakOutput = 'Dieser Skill erzählt dir die lustigsten Witze. Frage einfach nach einem Witz.';

    const repromtText = 'Möchtest du einen Witz hören?'; return handlerInput.responseBuilder.speak(speakOutput).reprompt(repromtText).getResponse();

  • CancelAndStopIntentHandler

    const speakOutput = 'Bis calvo!';

  • IntentoReflectorHandler

    const speakOutput = `Du hast ${intentName} ausgelöst.`;

  • ErrorHandler

    const speakOutput = `Es tut mir leid, aber ich kann deine Frage zurzeit nicht verarbeiten.`;

Zum Schluss immer auf Save und anschließend auf Deploy klicken.

Fase 4: Iniziare i test

Begrüßung Testen
Begrüßung Testen
Begrüßung Testen
Begrüßung Testen

Immer nachdem Du eine Funktion zu deinem Skill hinzugefügt hast, solltest Du diese unbedingt testen, damit Du, falls ein Fehler auftritt ungefähr weißt, wo der Fehler liegen könnte.

  1. Clicca sulla scheda di prova → ein neues Fenster öffnet sich.
  2. Aktiviere das Testen, indem du in der Select-Box Development auswählst.
  3. Schreibe oder spreche: "öffne lustige Witze." → der Skill sollte nun mit der Begrüßung antworten.

Passaggio 5: Intenzioni Hinzufügen

Intenti Hinzufügen
Intenti Hinzufügen
Intenti Hinzufügen
Intenti Hinzufügen
Intenti Hinzufügen
Intenti Hinzufügen

Nun fügen wir Möglichkeiten hinzu, wie der Benutzer mit dem Skill interagieren kann. Intents ermöglichen es auf verschiedene Phrasen zu reagieren und anschließend einen bestimmten auszulösen, der die Anfrage dann verarbeitet.

  1. Clicca sulla scheda Build → das Build Fenster öffnet sich.
  2. Rechts in der Navigationsleiste steht bei Intents der HelloWorldIntent. Diesen löschen wir zu Beginn.
  3. Anschließend klicken wir auf den Add Button neben der Intents-Leiste.

Zuerst fügen wir bereits von Amazon vordefinierte Intents hinzu.

  1. Klicke dazu auf Usa un intento esistente dalla libreria integrata di Alexa
  2. Suche nach YesIntent und NoIntent und klicke bei beiden auf add

Nun fügen wir unseren eigenen Intent hinzu.

  1. Clicca per creare un intento personalizzato
  2. Gib dem Intent den Namen TellAJokeIntent
  3. Clicca su Crea intento personalizzato

Jetzt fügen wir ein paar Beispielphrasen zu unserem Intent hinzu, also Phrasen, die der Benutzer sagen könnte. Gib dazu einfach die Phrasen ohne Punkt am Ende ein:

  • Erzähle mir einen Witz
  • Sag mir einen Witz
  • Erzähle mir einen lustigen Witz
  • Einen Witz bitte
  • nach einem Witz
  • mir einen Witz zu erzählen

Natürlich gibt es noch viele weitere Möglichkeiten, diesen Intent zu aktivieren, aber wir beschränken uns hier auf ein paar essentielle.

Nachdem Du alle Phrasen hinzugefügt hast clicke oben auf Save Model e anschließend auf Build Model. Nachdem der Build abgeschlossen ist, navigiere zurück zum Codice Tab.

Passaggio 6: Witze Hinzufügen

Damit unser Skill Witze erzählen kann, benötigen wir ein paar Witze.

Erstelle dazu im lambda Ordner eine neue Datei mit dem Namen jokes.json

Füge folgendes in die jokes.json Datei ein:

["Was ist weiß und guckt durchs Schlüsselloch? Ein Spannbettlaken.", "Welches Getränk trinken Firmenchefs? Leitungswasser.", "Was essen Autos am liebsten? Parkplätzchen.", "Was passiert wenn man Cola und Bier gleichert?, "Wie heißt ein Spanier ohne Auto? Carlos", "Was sitzt auf einem Baum und winkt? Ein Huhu!", "Was sagt ein Gen, wenn es ein anderes trifft? Halogen.", "Was ist ein studierter Bauer? Ein Akademiker.", "Ich bin so unentschlossen. Als japanischer Krieger wäre ich ein Nunja."]

Natürlich kannst Du selbst noch mehr Witze hinzufügen, zum Testen jedoch sollte es schon funktionieren.

Clicca per salvare e distribuire.

Passaggio 7: gestore dell'intento Hinzufügen

Die zuvor erstellen Intents benötigen nun einen Handler, der darauf reagiert, wann die Intents ausgelöst werden sollen. Der NoIntentHanlder statodet den Skill. Der YesIntentHandler, sowie der TellAJokeIntentHandler Antwortet mit einem Witz.

Lösche den gesamten HelloWorldIntentHandler aus der index.js Datei heraus und füge an der Stelle die neuen drei IntentHandler ein:

const TellAJokeIntentHandler = {

canHandle(handlerInput) { return Alexa.getRequestType(handlerInput.requestEnvelope) === 'IntentRequest' && Alexa.getIntentName(handlerInput.requestEnvelope) === 'TellAJokeIntent'; }, handle(handlerInput) { const jokes = JSON.parse(fs.readFileSync('./jokes.json')); const speakOutput = scherzi[Math.floor(Math.random() * scherzi.lunghezza)]; return handlerInput.responseBuilder.speak(speakOutput).getResponse(); } }; const YesIntentHandler = { canHandle(handlerInput) { return Alexa.getRequestType(handlerInput.requestEnvelope) === 'IntentRequest' && Alexa.getIntentName(handlerInput.requestEnvelope) === 'AMAZON. YesIntent'; }, handle(handlerInput) { const jokes = JSON.parse(fs.readFileSync('./jokes.json')); const speakOutput = battute[Math.floor(Math.random() * battute.lunghezza)]; return handlerInput.responseBuilder.speak(speakOutput).getResponse(); } }; const NoIntentHandler = { canHandle(handlerInput) { return Alexa.getRequestType(handlerInput.requestEnvelope) === 'IntentRequest' && Alexa.getIntentName(handlerInput.requestEnvelope) === 'AMAZON. NoIntent'; }, handle(handlerInput) { const speakOutput = 'Okay, vielleicht später einmal.'; return handlerInput.responseBuilder.speak(speakOutput).getResponse(); } };

Passaggio 8: registrazione del gestore dell'intento

Nun müssen nur noch die Intent Handler registriert werden. Scrolle dazu bis ans Ende der index.js Datei.

Ersetze muore:

exports.handler = Alexa. SkillBuilders.custom()

.addRequestHandlers(LaunchRequestHandler, HelloWorldIntentHandler, HelpIntentHandler, CancelAndStopIntentHandler, SessionEndedRequestHandler, IntentReflectorHandler, // assicurati che IntentReflectorHandler sia l'ultimo in modo che non sovrascriva i tuoi gestori di intent personalizzati).addErrorHandlers,(la)

durch da:

exports.handler = Alexa. SkillBuilders.custom()

.addRequestHandlers(LaunchRequestHandler, TellAJokeIntentHandler, YesIntentHandler, NoIntentHandler, HelpIntentHandler, CancelAndStopIntentHandler, SessionEndedRequestHandler, IntentReflectorHandler, // assicurati che IntentReflectorHandler sia l'ultimo in modo che intentHandler non sostituisca il tuo.);

Anschließend klicke wieder auf Save und Deploy. Nachdem das Deployment abgeschlossen wurde, kannst Du deinen Skill wieder testen.

Passaggio 9: test di abilità

  1. Clicca sulla scheda di prova → ein neues Fenster öffnet sich.
  2. Schreibe oder spreche: "öffne lustige Witze." → der Skill sollte nun mit der Begrüßung antworten.
  3. Schreibe oder spreche: "Erzähle mir einen Witz". → der Skill sollte nun einen der Witze erzählen.

Wenn alles funktioniert, kannst du deinen Skill auch schon zertifizieren lassen.

Step 10: Skill Vorschau Festlegen Und Zertifizieren Lassen

Skill Vorschau Festlegen Und Zertifizieren Lassen
Skill Vorschau Festlegen Und Zertifizieren Lassen

Fülle alle Textboxen mit deiner persönlichen Beschreibung des Skills aus.

Bei esempio di frasi schreibe:

  • Alexa, öffne lustige Witze.
  • Erzähle mir einen Witz.
  • Alexa, frage lustige Witze nach einem Witz.

Sobald du alle verpflichtenden Felder ausgefüllt hast und die Icons hochgeladen hast klicke auf Salva e continua.

Wähle bei Privacy & Compliance, sowie bei Availability die zutreffenden Antworten aus.

Siehe dir vor der Zertifizierung die Checklist di presentazione an

Nun musst du ein paar Test durchlaufen. Dies kann eine Weile dauern.

Anschließend kannst du deinen Skill zur Zertifizierung absenden. Es wird ca. 1-2 Tage dauern, bis zu ein Feedback zu deinem Skill bekommst. Wenn du alles richtig gemacht hast, sollte dein Skill sofort veröffentlicht werden.

Wenn du den Skill jetzt schon ausprobieren möchtest, aber dein Skill noch nicht zertifiziert wurde, kannst du jederzeit diesen Skill verwenden:

skills-store.amazon.de/deeplink/dp/B07ZKH9…

Consigliato: