Installation d'un plug-in pour utiliser AWS Lambda à partir d'Eclipse Veuillez vous référer à ceci tel qu'il est introduit dans le ↓. [AWS Toolkit for Eclipse --Yamamugi] (https://www.yamamanx.com/aws-toolkit-eclipse/)
Tout d'abord, [Amazon Developer Portal] Accédez à (https://developer.amazon.com/en/) et accédez à l'écran de création de compétences Alexa.
Choisissez un nom de compétence. Veuillez garder la langue en japonais.
Cette fois, sélectionnez une compétence personnalisée.
Choisissez un nom d'appel. C'est la partie de ** "○○" ** de "Alexa, ouvrez ** ○○ **" et "△△ avec ** ○○ **".
Faites une intention. Correspond à la partie ** "△△" ** de "○○ de ** △△ **".
Pour le moment, j'ai créé un intent appelé ** "Hello Intent" **.
Ensuite, je vais définir un exemple de discours pour HelloIntent, Je vais également utiliser l'emplacement d'intention. J'ai donc défini un emplacement d'intention appelé ** "Emplacement" ** et Je souhaite utiliser l'emplacement standard d'Amazon ** AMAZON.City **. ** {Location} ** est un nom de lieu commun déjà enregistré sur Amazon. Peut-être qu'il y a aussi la ville d'Osaka. Je ne sais pas.
Après cela, saisissez l'emplacement d'intention que vous avez créé plus tôt dans l'exemple de discours, Enregistrez quelques exemples d'énoncés que l'utilisateur est susceptible de dire. Après vous être enregistré dans une certaine mesure, appuyez sur ** "Enregistrer le modèle" ** et ** "Construire le modèle" **. Une fois la construction réussie, le travail sur le portail d'administration Alexa est interrompu ici.
Cette fois, en utilisant AWS Toolkit for Eclipse qui a été installé en premier, Créez une fonction Lambda à partir d'Eclipse.
Puisque nous allons utiliser l'exemple de projet Java de GitHub, [ici] Clonez de (https://github.com/alexa/skill-samples-java) vers Eclipse. Après le clonage, importez uniquement le projet helloworld et modifiez HelloWorldSpeechlet.java.
HelloWorldSpeechlet.java(Ligne 49)
@Override
public SpeechletResponse onIntent(SpeechletRequestEnvelope<IntentRequest> requestEnvelope) {
IntentRequest request = requestEnvelope.getRequest();
log.info("onIntent requestId={}, sessionId={}", request.getRequestId(),
requestEnvelope.getSession().getSessionId());
//Obtenir l'intention de la demande
Intent intent = request.getIntent();
String intentName = (intent != null) ? intent.getName() : null;
//Obtenez la valeur de l'emplacement à partir de l'intention
Slot slot = intent.getSlot("Location");
String slotValue = slot.getValue();
if ("HelloIntent".equals(intentName)) {
//Changer pour transmettre la valeur de l'emplacement comme argument
return getHelloResponse(slotValue);
} else if ("AMAZON.HelpIntent".equals(intentName)) {
return getHelpResponse();
} else {
return getAskResponse("HelloWorld", "This is unsupported. Please try something else.");
}
}
HelloWorldSpeechlet.java(Ligne 93)
private SpeechletResponse getHelloResponse(String slotValue) {
String speechText = null;
if(slotValue != null && slotValue.contains("Osaka")) {
//À la valeur de l'emplacement"Osaka"Si inclus
speechText = "Oups, est-ce rentable?";
} else {
//Autrement
speechText = "Salut comment allez-vous?";
}
// Create the Simple card content.
SimpleCard card = getSimpleCard("HelloWorld", speechText);
// Create the plain text output.
PlainTextOutputSpeech speech = getPlainTextOutputSpeech(speechText);
return SpeechletResponse.newTellResponse(speech, card);
}
Cliquez avec le bouton droit sur HelloWorldSpeechlet.java dans l'Explorateur de projets d'Eclipse et sélectionnez ** Télécharger la fonction vers AWS Lambda ** à partir d'Amazon Web Services. (Pour Windows, cliquez avec le bouton droit sur le projet helloworld pour l'afficher.)
Sélectionnez un compartiment ou un rôle S3 et parcourez l'écran pour terminer le téléchargement de la fonction Lambda.
Dans l'écran de gestion Lambda de la console AWS, sélectionnez le Lambda que vous avez téléchargé précédemment et sélectionnez Sous Ajouter un déclencheur, sélectionnez Kit de compétences Alexa. Ensuite, en bas de l'écran, un formulaire pour spécifier l'ID de compétence Alexa Skill apparaîtra.
Revenir à l'écran du portail des développeurs Alexa Copiez et collez le ** Skill ID ** commençant par "amzn1.ask.skill." Dans le menu du point final. Enfin, appuyez sur "Enregistrer" en haut à droite pour terminer.
Ensuite, au contraire, l'ARN commençant par "arn: aws: lambda:" en haut à droite de l'écran de gestion de la fonction Lambda, Collez-le dans le formulaire ** «Région par défaut» ** dans le menu du point de terminaison du portail d'administration Alexa. Enfin, appuyez sur ** «Enregistrer le point de terminaison» ** et vous êtes prêt à partir.
Allez dans le menu ** «Test» ** du portail d'administration Alexa Essayez de taper "Donner une salutation à Osaka avec vos exemples de compétences". Si Alexa répond: "Oh, tu fais de l'argent?", Tu as réussi!
Je vous remercie pour votre travail acharné!
Recommended Posts