Table des matières:
- Fournitures
- Étape 1: Créez un compte de développeur Amazon
- Étape 2: Créer une nouvelle compétence
- Étape 3: Accueillir l'utilisateur
- Étape 4: Testez le message d'accueil
- Étape 5: ajouter des intentions
- Étape 6: Ajoutez des mots amusants
- Étape 7: ajouter des gestionnaires d'intention
- Étape 8: Enregistrez les gestionnaires d'intention
- Étape 9: Testez la compétence
- Étape 10: Définir l'aperçu des compétences et soumettre pour examen
Vidéo: Comment créer une compétence Alexa : 10 étapes
2024 Auteur: John Day | [email protected]. Dernière modifié: 2024-01-30 09:07
Qu'est-ce qu'une compétence alexa ?
Les compétences Alexa sont comme des applications. Vous pouvez activer et désactiver les compétences, à l'aide de l'application Alexa ou d'un navigateur Web, de la même manière que vous installez et désinstallez des applications sur votre smartphone ou votre tablette. Les compétences sont des capacités Alexa à commande vocale. Vous pouvez ajouter des compétences Alexa à votre Echo pour donner vie à vos produits et services. Vous pouvez afficher les compétences disponibles et les activer ou les désactiver à l'aide de votre application Alexa.
Ce tutoriel vous montre comment créer une compétence alexa.
But:
Le but est de créer une compétence qui dit à l'utilisateur un mot allemand amusant à chaque fois, demande l'utilisateur.
Démo:
Pour voir comment la compétence devrait fonctionner par la suite, vous pouvez la tester ici:
www.amazon.com/gp/product/B07ZH9GL9N?ref&r…
Fournitures
- Connaissances en programmation
- Notions de base sur Node.js et Javascript
Étape 1: Créez un compte de développeur Amazon
Si vous n'avez pas de compte développeur Amazon, vous pouvez vous inscrire ici. Sinon, vous pouvez vous connecter ici.
Étape 2: Créer une nouvelle compétence
- Suivez ce lien:
- Cliquez sur Créer une compétence sur le côté droit. Une nouvelle page s'ouvre ensuite.
- Entrez le nom de votre compétence (dans notre cas: Funny German Words) dans le champ Skill name.
- Définissez la langue dans la boîte de sélection de la langue par défaut sur l'anglais (États-Unis)
- Nous allons créer une compétence personnalisée, nous choisissons donc le modèle Custom
- Chez Choisissez une méthode pour héberger les ressources backend de votre compétence, nous choisissons Alexa-Hosted (Node.js)
- Une fois que vous avez terminé, cliquez sur Créer une compétence
- Une nouvelle fenêtre s'ouvre
Étape 3: Accueillir l'utilisateur
La première chose qu'un utilisateur fait avec votre compétence, c'est de l'ouvrir. L'intention, qui ouvre la compétence est déjà implémentée dans l'exemple de code et n'a plus besoin d'être ajoutée.
-
Ouvrez l'onglet Code → La fenêtre de code avec le fichier index.js s'ouvre
Chaque gestionnaire d'intention a deux fonctions
- peut gérer()
- manipuler()
La fonction canHandle() inclut la requête à laquelle le gestionnaire répond.
La fonction handle() envoie une réponse à l'utilisateur.
Si une compétence reçoit une demande, la fonction canHandle() de chaque gestionnaire d'intention est appelée et vérifie si elle peut envoyer une réponse à cette demande.
-
Dans la fonction handle () du LaunchRequestHandler, supprimez l'intégralité du code et collez ensuite ce qui suit:
const speakOutput = 'Bienvenue dans Funny German Words. Découvrez quels mots amusants la langue allemande a à offrir et ce qu'ils signifient. Voulez-vous entendre un mot amusant ?';
const repromptText = 'Voulez-vous entendre un mot allemand amusant ?'; return handlerInput.responseBuilder.speak(speakOutput).reprompt(repromptText).getResponse();
- Cliquez sur Enregistrer et déployer.
Le gestionnaire d'intention d'aide doit être modifié pour correspondre à la compétence. Supprimez le code de la fonction handle() et insérez ceci:
const speakOutput = 'Découvrez quels mots amusants la langue allemande a à offrir et ce qu'ils signifient. Voulez-vous entendre un mot amusant ?';
const repromptText = 'Voulez-vous entendre un mot allemand amusant ?'; return handlerInput.responseBuilder.speak(speakOutput).reprompt(repromptText).getResponse();
Après avoir terminé, cliquez sur Enregistrer et déployer.
Étape 4: Testez le message d'accueil
Chaque fois que vous avez plus de fonctionnalités pour votre compétence, testez si cela fonctionne vraiment, pour savoir en cas d'erreur, où l'erreur pourrait être.
- Cliquez sur l'onglet Test → Une nouvelle fenêtre s'ouvre.
- Activez l'environnement de test en sélectionnant Développement dans la zone de sélection.
- Écrivez ou parlez: "ouvrir des mots allemands amusants" → La compétence devrait maintenant répondre avec le message d'accueil.
Étape 5: ajouter des intentions
Nous allons maintenant ajouter des opportunités sur la façon dont un utilisateur peut interagir avec votre compétence. Les intentions permettent de réagir correctement après des phrases spéciales et de déclencher le gestionnaire de corret par la suite.
- Cliquez sur l'onglet Build → La fenêtre Build s'ouvre.
- La barre de navigation sur la droite montre toutes les intentions activées. Tout d'abord, supprimez le HelloWorldIntent.
- Cliquez ensuite sur le bouton Ajouter à côté de l'onglet Intentions dans la barre de navigation.
Tout d'abord, nous ajoutons des intentions intégrées à partir de la bibliothèque intégrée d'Alexa
- Cliquez sur Utiliser une intention existante de la bibliothèque intégrée d'Alexa
- Recherchez YesIntent et NoIntent et cliquez sur ajouter par les deux.
Maintenant, nous ajoutons notre propre intention personnalisée.
- Cliquez sur Créer une intention personnalisée
- Donnez le nom TellAFunnyWordIntent à l'intention
- Cliquez sur Créer une intention personnalisée
Nous allons maintenant ajouter quelques exemples de phrases à notre intention. Les exemples de phrases sont des phrases que l'utilisateur pourrait peut-être dire. Entrez simplement ces exemples de phrases:
- dis moi un mot
- dis-moi un drôle de mot allemand
- un mot
- un mot drôle
- me dire un mot
Bien sûr, il y a beaucoup plus de phrases que l'utilisateur pourrait dire. Vous pouvez étendre l'intention si vous le souhaitez, mais nous nous concentrons actuellement sur la fonctionnalité.
Après avoir ajouté les phrases, cliquez sur Enregistrer le modèle puis sur Construire le modèle. Une fois la construction terminée, revenez à l'onglet Code.
Étape 6: Ajoutez des mots amusants
Pour que notre compétence dise des mots drôles, elle a d'abord besoin de mots drôles.
Pour cela, créez un nouveau fichier nommé words.json dans le dossier lambda.
Insérez ces mots dans le fichier words.json:
[{ "word": "Lebensabschnittpartner", "explanation": "Ce mot est surtout décrit comme une autre option pour le partenaire ou l'amant, mais avec une torsion plus transitoire." }, { "mot": "Unabhängigkeitserklärungen", "explication": "Ce mot décrit la déclaration d'indépendance." }, { "word": "Freundschaftsbezeugung", "explanation": "C'est la démonstration de l'amitié." }, { "word": "Rechtsschutzversicherungsgesellschaften", "explanation": "Le Livre Guinness des records reconnaît ce mot lourd comme le mot allemand le plus long d'usage courant. Il désigne les compagnies d'assurance fournissant une protection juridique." }, { "mot": "Kaftfahrzeug-Haftpflichtversicherung", "explication": "Il s'agit d'une assurance responsabilité civile automobile." }, { "word": "Donaudampfschiffahrtsgesellschaftskapitän", "explanation": "Ce mot continue le thème du transport, et est composé de quatre mots soigneusement assemblés pour dire capitaine de la compagnie de navigation du Danube." }]
Bien sûr, vous pouvez ajouter d'autres mots si vous en connaissez. Mais pour tester, cela devrait déjà fonctionner.
Cliquez à nouveau sur Enregistrer et déployer.
Étape 7: ajouter des gestionnaires d'intention
Les intents précédemment créés ont maintenant besoin d'un gestionnaire, qui est déclenché par un intent. Le NoIntentHandler ferme la compétence. Le YesIntentHandler et le TellAFunnyWordIntentHandler répondent avec un mot amusant et son explication.
Supprimez l'intégralité du HelloWorldIntentHandler du fichier index.js et ajoutez-en trois nouveaux à la place:
const TellAFunnyWordIntentHandler = {
canHandle(handlerInput) { return Alexa.getRequestType(handlerInput.requestEnvelope) === 'IntentRequest' && Alexa.getIntentName(handlerInput.requestEnvelope) === 'TellAFunnyWordIntent'; }, handle(handlerInput) { mots const = JSON.parse(fs.readFileSync('./words.json')); mot const = mots[Math.floor(Math.random() * mots.longueur)]; const speakOutput = mot.mot + '. ' + mot.explication; return handlerInput.responseBuilder.speak(speakOutput).getResponse(); } }; const YesIntentHandler = { canHandle(handlerInput) { return Alexa.getRequestType(handlerInput.requestEnvelope) === 'IntentRequest' && Alexa.getIntentName(handlerInput.requestEnvelope) === 'AMAZON. YesIntent'; }, handle(handlerInput) { mots const = JSON.parse(fs.readFileSync('./words.json')); mot const = mots[Math.floor(Math.random() * mots.longueur)]; const speakOutput = mot.mot + '. ' + mot.explication; 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 = 'D'accord, peut-être une autre fois.'; return handlerInput.responseBuilder.speak(speakOutput).getResponse(); } };
Étape 8: Enregistrez les gestionnaires d'intention
Nous devons maintenant enregistrer les nouveaux gestionnaires d'intention. Pour cela, faites défiler jusqu'à la fin du fichier index.js.
Remplacez ceci:
exports.handler = Alexa. SkillBuilders.custom()
.addRequestHandlers(LaunchRequestHandler, HelloWorldIntentHandler, HelpIntentHandler, CancelAndStopIntentHandler, SessionEndedRequestHandler, IntentReflectorHandler, // assurez-vous que IntentReflectorHandler est le dernier afin qu'il ne remplace pas vos gestionnaires d'intention personnalisés)
avec ça:
exports.handler = Alexa. SkillBuilders.custom()
.addRequestHandlers(LaunchRequestHandler, TellAFunnyWordIntentHandler, YesIntentHandler, NoIntentHandler, HelpIntentHandler, CancelAndStopIntentHandler, SessionEndedRequestHandler, IntentReflectorHandler, // assurez-vous que IntentReflectorHandler est le dernier à remplacer votre personnalisation.
Cliquez ensuite à nouveau sur Enregistrer et déployer. Une fois le déploiement terminé, testez à nouveau la compétence.
Étape 9: Testez la compétence
- Cliquez sur l'onglet Test → Une nouvelle fenêtre s'ouvre.
- Écrivez ou parlez: "ouvrir des mots allemands amusants" → La compétence devrait maintenant répondre avec le message d'accueil.
- Écrivez ou parlez: "dis-moi un mot allemand amusant" → La compétence devrait maintenant dire l'un des mots.
Si tout fonctionne, vous pouvez déjà soumettre votre skill.
Étape 10: Définir l'aperçu des compétences et soumettre pour examen
Remplissez toutes les zones de texte requises avec votre description personnelle de la compétence.
Dans Exemples de phrases, écrivez:
- Alexa, ouvre Funny German Words.
- Alexa, demande à Funny German Words de me dire un mot amusant.
Après avoir rempli tous les champs requis et après avoir téléchargé les icônes, cliquez sur Enregistrer et continuer.
Choisissez les bonnes réponses dans Confidentialité & Compilance et Disponibilité.
S'il vous plaît jeter un oeil à la liste de contrôle de soumission avant de soumettre
Maintenant, vous devez exécuter quelques tests. Cela peut prendre un certain temps.
Ensuite, vous pouvez soumettre votre compétence pour examen. Il faudra 1 ou 2 jours jusqu'à ce que vous obteniez des commentaires sur votre compétence. Si vous avez tout fait correctement, votre compétence sera publiée juste après l'examen.
Si vous souhaitez déjà essayer la compétence, mais qu'elle est toujours en cours de certification, vous pouvez toujours utiliser cette compétence:
www.amazon.com/gp/product/B07ZH9GL9N?ref&ref=cm_sw_em_r_as_dp_uCOJljYBKfNx9
Conseillé:
Comment faire une horloge analogique et une horloge numérique avec une bande LED à l'aide d'Arduino: 3 étapes
Comment faire une horloge analogique et une horloge numérique avec une bande LED à l'aide d'Arduino Horloge numérique avec Led Strip et module MAX7219 Dot avec Arduino. Elle corrigera l'heure avec le fuseau horaire local. L'horloge analogique peut utiliser une bande LED plus longue, elle peut donc être accrochée au mur pour devenir une œuvre d'art
Comment créer une fausse alarme de voiture à l'aide d'une minuterie 555 : 5 étapes
Comment créer une fausse alarme de voiture à l'aide d'une minuterie 555 : Ce projet montre comment créer une lumière LED clignotante avec un délai de cinq secondes à l'aide d'un NE555. Cela pourrait servir de fausse alarme de voiture, car il imite un système d'alarme de voiture avec sa LED clignotante rouge vif.Niveau de difficultéLe circuit lui-même n'est pas difficile
Compétence en électronique Niv 2 : 5 étapes
Compétence en électronique Lvl 2: Ce sera un tutoriel rapide pour vous aider à compléter le niveau 2 de compétence en électronique. Vous n'êtes pas obligé de le faire exactement tel quel ! Vous pouvez substituer des pièces/composants à votre guise, mais vous serez responsable de modifier le code pour le faire fonctionner. je vais un
Comment faire un robot de combat (pour n'importe quel niveau de compétence) : 8 étapes
Comment faire un robot de combat (pour TOUS les niveaux de compétence) : Lorsque j'ai commencé la robotique de combat, j'ai découvert qu'il n'y avait pas de « pas à pas » Procédure pas à pas pour construire un robot de combat, donc après avoir fait des tonnes de recherches sur Internet, j'ai décidé d'en compiler une partie pour créer un guide pour créer un robot de combat afin que quelqu'un
Lumière réactive musicale--Comment créer une lumière réactive musicale super simple pour créer un bureau génial.: 5 étapes (avec images)
Lumière réactive musicale || Comment faire de la lumière réactive musicale super simple pour rendre le bureau génial.: Hé quoi de neuf les gars, aujourd'hui, nous allons construire un projet très intéressant. la basse qui est en fait un signal audio basse fréquence. C'est très simple à construire. Nous allons