Table des matières:

Créez des compétences Alexa avec Cloud9 - Aucune carte de crédit ou matériel requis : 7 étapes (avec photos)
Créez des compétences Alexa avec Cloud9 - Aucune carte de crédit ou matériel requis : 7 étapes (avec photos)

Vidéo: Créez des compétences Alexa avec Cloud9 - Aucune carte de crédit ou matériel requis : 7 étapes (avec photos)

Vidéo: Créez des compétences Alexa avec Cloud9 - Aucune carte de crédit ou matériel requis : 7 étapes (avec photos)
Vidéo: Technology Stacks - Computer Science for Business Leaders 2016 2024, Novembre
Anonim
Créez des compétences Alexa avec Cloud9 - Aucune carte de crédit ou matériel requis
Créez des compétences Alexa avec Cloud9 - Aucune carte de crédit ou matériel requis

Bonjour, aujourd'hui, je vais vous montrer comment créer votre propre skill Amazon Alexa à l'aide de Cloud9. Pour ceux d'entre vous qui ne le savent pas, Cloud9 est un IDE en ligne prenant en charge de nombreuses langues différentes et il est 100 % gratuit - aucune carte de crédit requise. Une skill Alexa est comme une application mais pour les appareils Alexa.

J'ai toujours aimé la programmation et les assistants vocaux, mais ce n'est que récemment que j'ai commencé à programmer l'Amazon Echo. Mes problèmes sont que je ne connais pas beaucoup de node.js, donc je vais programmer en python pour ce tutoriel et, étant un élève du secondaire, je n'ai pas de carte de crédit, ce qui signifie que je ne peux pas utiliser AWS lamda. La façon dont j'ai résolu ce problème était d'utiliser Cloud9.

J'espère que vous apprécierez ce tutoriel. Si vous êtes bloqué quelque part, essayez les images car j'ai essayé d'ajouter des astuces aux bons endroits et si vous êtes toujours bloqué, n'hésitez pas à ajouter une question ou un commentaire.

(Merci à HeikoAL sur Pixabay pour l'image de couverture)

Étape 1: Connectez-vous à Cloud9 et à la console développeur Amazon

Connectez-vous à Cloud9 et à la console développeur Amazon
Connectez-vous à Cloud9 et à la console développeur Amazon
Connectez-vous à Cloud9 et à la console développeur Amazon
Connectez-vous à Cloud9 et à la console développeur Amazon
Connectez-vous à Cloud9 et à la console développeur Amazon
Connectez-vous à Cloud9 et à la console développeur Amazon

Pour créer notre compétence, nous devrons créer la logique principale de la compétence en python sur Cloud9 et la façon dont elle s'intègre à Alexa sur la console développeur d'Amazon.

1. Cloud9

Vous aurez probablement déjà besoin d'un compte Cloud9 pour que cela fonctionne car récemment Amazon a repris Cloud9, l'intégrant dans AWS, mais il semble être possible de se connecter avec Github, Bitbucket ou Google sur l'ancienne plate-forme, ce dont nous avons besoin pour faire.

Visitez ce site Web: https://c9.io/login et connectez-vous.

2. Console développeur Amazon

Visitez maintenant https://developer.amazon.com et connectez-vous dans le coin supérieur droit. Cliquez maintenant sur Alexa puis sur Vos tableaux de bord Alexa en haut à droite. Vous devriez voir un écran plus ancien comme celui ci-dessus à droite. Nous devons maintenant cliquer sur Get Started dans la boîte Alexa Skills Kit.

Étape 2: configurer la compétence Alexa dans la console de développement Amazon

Configurer la compétence Alexa dans la console de développement Amazon
Configurer la compétence Alexa dans la console de développement Amazon

Nous allons maintenant configurer la compétence sur le serveur Amazon. Si vous savez déjà comment procéder, vous n'avez pas besoin de lire ceci et vous pouvez passer à l'étape suivante.

Cliquez sur Ajouter une nouvelle compétence et un écran comme celui ci-dessus devrait s'afficher.

Dans les boutons radio en haut, nous devrions choisir Modèle d'interaction personnalisé

Choisissez maintenant la langue de votre compétence. Il est important de choisir l'anglais britannique si votre compte amazon a une adresse au Royaume-Uni, car les tests ne fonctionneront pas sur un appareil d'écho réel si vous choisissez les États-Unis. Cela peut quand même fonctionner sur Echoism.

Vous devez maintenant saisir le nom et le nom d'invocation de votre compétence. Je recommanderais que ce soient les mêmes pour plus de commodité. Le nom est ce qu'un utilisateur verrait dans l'application Alexa et le nom d'invocation est ce qu'un utilisateur dirait lors du déclenchement de la compétence, par exemple: Alexa, demandez « Nom d'invocation » sur la météo. Pour ma première compétence, je les ai nommés tous les deux Test.

Notre compétence n'utilisera pas les trois dernières choses afin qu'elles puissent être laissées seules.

Maintenant, vous devez cliquer sur enregistrer et sur suivant. La console de développement peut reformater légèrement ici, mais elle ne perdra aucune donnée.

Étape 3: Modèle d'interaction

Modèle d'interaction
Modèle d'interaction
Modèle d'interaction
Modèle d'interaction
Modèle d'interaction
Modèle d'interaction

Vous devriez maintenant être sur l'onglet modèle d'interaction de la console. C'est là que nous disons à Alexa comment nous aimerions qu'elle interprète nos commandes. Choisissez l'option Lancer la version bêta de Skill Builder.

Nous devons maintenant mettre en place une intention pour notre compétence qui est comme une fonction qu'elle remplit. Cliquez sur le bouton Ajouter une intention et entrez un nom approprié. Cela peut être n'importe quoi et n'a pas besoin d'être connu de l'utilisateur, mais nous en aurons besoin pour la programmation plus tard. J'ai nommé mon HelloWorld.

Maintenant, nous devons ajouter quelques énoncés qui sont des choses qu'un utilisateur pourrait dire s'il voulait invoquer cela. J'ai tapé "pour un message d'accueil" et "pour un bonjour" dans cette case. Assurez-vous d'appuyer sur Entrée entre les deux. Afin d'activer cette intention, un utilisateur dira "Alexa, demande un test pour un message d'accueil".

Une fois cela terminé, nous devons maintenant appuyer sur enregistrer le modèle et créer le modèle en haut. Assurez-vous d'abord d'enregistrer, puis de créer. La construction peut prendre quelques minutes.

Enfin, nous devons cliquer sur le bouton Configuration en haut à gauche.

Étape 4: sur Cloud9

Sur Cloud9
Sur Cloud9
Sur Cloud9
Sur Cloud9

À ce stade, nous devons revenir à Cloud9 et construire le back-end de notre compétence.

Dans votre tableau de bord, créez un nouvel espace de travail et entrez un nom mémorable. Vous pouvez ajouter une description si vous le souhaitez mais ce n'est pas nécessaire. Vous devez également choisir Python comme langage. Maintenant, appuyez sur créer un espace de travail. Le chargement prendra un certain temps, mais vous devriez finalement vous retrouver avec un écran comme celui ci-dessus. Ceci est votre espace de travail.

Les espaces de travail Cloud9 sont des machines Linux Ubuntu qui fonctionnent de manière très similaire à un Raspberry Pi. Ils ont le seul avantage d'être hébergés. Avant de pouvoir écrire notre code dans cet environnement, nous devrons exécuter quelques commandes pour le préparer.

1. Mettre à niveau le pip: sudo -H pip2 install --upgrade pip

2. Installer le flacon: sudo pip install flask

3. Installez Flask-Ask, la librairie qui s'interface avec Alexa: sudo pip install flask-ask

Nous pouvons maintenant écrire notre programme. Cliquez sur le plus vert en haut et choisissez Nouveau fichier. Appuyez sur Fichier, Enregistrer et entrez un nom approprié avec.py à la fin, par exemple HelloAlexa.py. Maintenant, appuyez sur Enregistrer. Dans l'étape suivante, nous entrerons le code de notre programme.

Étape 5: Le code

Le code!
Le code!

Maintenant, il est nécessaire d'entrer le code suivant, au lieu de HelloWorld, utilisez votre nom d'intention que vous avez créé précédemment:

from flask import Flask, render_templatefrom flask_ask import Ask, instruction

importer le système d'exploitation

app = Flacon (_nom_)

ask = Ask(app, '/')

def bonjour():

déclaration return("Bonjour, tout le monde.")

if _name_ == "_main_":

hôte = os.getenv('IP', '0.0.0.0')

port = int(os.getenv('PORT', 8080))

app.debug = Vrai

app.run(hôte=hôte, port=port)

Parcourons le code:

Les trois premières lignes importent nos modules nécessaires, Flask-Ask, pour amazon Alexa et Flask qui est une condition préalable de Flask-Ask. Les deux lignes suivantes créent une application et demandent quelles sont les variables principales de notre programme. Pour accéder aux bits auxquels nous voulons accéder, nous en avons besoin. Line 6 est un décorateur. Il indique que lorsque nous recevons un appel à l'adresse Web sur laquelle notre programme s'exécute, si l'URL contient "HelloWorld", le bloc de code suivant s'exécutera. La fonction sous le décorateur n'exécute aucun code, elle renvoie simplement la valeur Hello, world. La commande statement() est nécessaire pour convertir la chaîne en une forme qu'Alexa peut comprendre. Enfin, le reste du code est un moyen de s'assurer que notre programme s'exécute correctement sur Cloud9. Cela dit en gros: si nous exécutons ce code directement, comme dans le cas non en tant que module, le code écoutera sur le port 8080. La ligne app.debug garantit que le code ne s'arrête pas prématurément. Si jamais vous créez une autre application comme celle-ci sur Cloud9, vous devrez toujours vous souvenir des 5 dernières lignes, sinon vous obtiendrez une erreur "Aucune application ne semble s'exécuter ici". Les ports utilisés par Cloud9 sont 8080, 8081 et 8082, donc n'importe lequel d'entre eux aurait été parfait.

Assurez-vous d'enregistrer votre code, puis passez à l'étape suivante.

Étape 6: Liez Cloud9 à Alexa

Lier Cloud9 à Alexa
Lier Cloud9 à Alexa
Lier Cloud9 à Alexa
Lier Cloud9 à Alexa

Nous devons maintenant lier notre code Cloud9 à notre application Alexa dans le portail Dev.

Appuyez sur le bouton de course vert dans le coin. Maintenant, copiez et collez le lien en haut de votre terminal dans votre navigateur Web. Regardez l'image si vous ne la trouvez pas. Si vous voyez un écran orange avec un bouton Ouvrir l'application, vous devez cliquer dessus. Vous devriez voir un écran blanc indiquant Méthode non autorisée dessus. Cela peut sembler mauvais, mais tout cela signifie que Flask-Ask a été correctement configuré afin que seul le service Alexa puisse visiter cette page. Si cela a bien fonctionné, revenez à la console de développement d'Amazon et assurez-vous que vous êtes dans l'onglet de configuration. Maintenant, appuyez sur HTTPS et collez l'URL que vous venez d'avoir dans la zone de texte qui apparaît. Vous pouvez ignorer le reste des paramètres, appuyez simplement sur Enregistrer et sur Suivant. Vous devriez maintenant voir une petite boîte vous interrogeant sur les certificats. Choisissez la deuxième option, "Mon point de terminaison de développement est un sous-domaine d'un domaine qui a un certificat générique d'une autorité de certification" et appuyez maintenant sur Enregistrer, puis sur Suivant.

Vous devriez être sur la scène de test maintenant. Si vous l'êtes, c'est un grand progrès vers l'étape suivante. Sinon, vérifiez que vous avez bien suivi les instructions.

Étape 7: Testez

Essai!
Essai!
Essai!
Essai!

Vous devriez maintenant voir une page comme celle ci-dessus. Si la case i où il est indiqué Veuillez compléter le modèle d'interaction est définie sur Désactivé, activez-la. Nous pouvons commencer par tester la compétence ici, puis nous pouvons essayer avec un véritable appareil d'écho. Descendez dans la section simulateur de service et entrez l'un des énoncés que vous avez créés précédemment. Appuyez maintenant sur Demander le test. Vous devriez voir du texte bleu des deux côtés. Celui de droite doit contenir les mots "Hello, World" ou un autre texte avec lequel vous définissez votre compétence pour répondre. Si celui de droite contient une erreur, vérifiez que votre code est toujours en cours d'exécution et que vous l'avez bien tapé.

Une fois que cela fonctionne, vous pouvez passer au test avec un véritable appareil d'écho. Assurez-vous que l'appareil echo est connecté avec le même compte, puis vous devriez pouvoir l'essayer. N'oubliez pas de dire "Alexa, demandez Test", puis votre énoncé. Si vous n'avez pas d'appareil d'écho, vous pouvez utiliser le simulateur d'écho https://echosim.io/welcome Vous devrez vous connecter avec votre compte développeur Amazon.

Merci d'avoir lu mon Instructable. J'espère que cela a fonctionné pour vous. Si vous avez des questions, assurez-vous de poster un commentaire et si vous l'avez aimé, votez pour moi dans le concours Voice Activated et le concours d'auteur pour la première fois.

Merci!

Conseillé: