Installieren eines Plugins zur Verwendung von AWS Lambda von Eclipse Bitte beachten Sie dies, wie es in ↓ vorgestellt wird. [AWS Toolkit für Eclipse - Yamamugi] (https://www.yamamanx.com/aws-toolkit-eclipse/)
Zuerst [Amazon Developer Portal] Gehen Sie zu (https://developer.amazon.com/en/) und rufen Sie den Bildschirm zur Erstellung von Alexa-Fertigkeiten auf.
Entscheide dich für einen Skillnamen. Bitte behalten Sie die Sprache als Japanisch bei.
Wählen Sie diesmal eine benutzerdefinierte Fertigkeit aus.
Legen Sie einen Rufnamen fest. Es ist der Teil von ** "○○" ** von "Alexa, open ** ○○ **" und "△△ with ** ○○ **".
Machen Sie eine Absicht. Entspricht dem ** "△△" ** Teil von "○○ de ** △△ **".
Vorerst habe ich eine Absicht namens ** "Hallo Absicht" ** erstellt.
Als nächstes werde ich ein Sprachbeispiel für HelloIntent festlegen. Ich werde auch den Intent-Slot verwenden, also setze ich einen Intent-Slot mit den Namen ** "Location" ** und Ich möchte den Standard-Slot von Amazon ** AMAZON.City ** verwenden. ** {Location} ** ist ein gebräuchlicher Ortsname, der bereits bei Amazon registriert ist. Vielleicht gibt es auch Osaka City. Ich weiß es nicht.
Verschränken Sie danach den Intent-Slot, den Sie zuvor in der Beispielrede erstellt haben. Registrieren Sie einige Beispiele für Äußerungen, die der Benutzer wahrscheinlich sagen wird. Drücken Sie nach der Registrierung zu einem gewissen Grad ** "Modell speichern" ** und ** "Modell erstellen" **. Sobald der Build erfolgreich ist, wird die Arbeit am Alexa Admin Portal hier unterbrochen.
Verwenden Sie diesmal das zuerst installierte AWS Toolkit für Eclipse. Erstellen Sie eine Lambda-Funktion aus Eclipse.
Da wir das Java-Beispielprojekt von GitHub verwenden werden, [hier] Klonen Sie von (https://github.com/alexa/skill-samples-java) nach Eclipse. Importieren Sie nach dem Klonen nur das helloworld-Projekt und bearbeiten Sie HelloWorldSpeechlet.java.
HelloWorldSpeechlet.java(Zeile 49)
@Override
public SpeechletResponse onIntent(SpeechletRequestEnvelope<IntentRequest> requestEnvelope) {
IntentRequest request = requestEnvelope.getRequest();
log.info("onIntent requestId={}, sessionId={}", request.getRequestId(),
requestEnvelope.getSession().getSessionId());
//Holen Sie sich die Absicht von der Anfrage
Intent intent = request.getIntent();
String intentName = (intent != null) ? intent.getName() : null;
//Holen Sie sich den Slot-Wert aus der Absicht
Slot slot = intent.getSlot("Location");
String slotValue = slot.getValue();
if ("HelloIntent".equals(intentName)) {
//Ändern Sie diese Option, um den Wert des Steckplatzes als Argument zu übergeben
return getHelloResponse(slotValue);
} else if ("AMAZON.HelpIntent".equals(intentName)) {
return getHelpResponse();
} else {
return getAskResponse("HelloWorld", "This is unsupported. Please try something else.");
}
}
HelloWorldSpeechlet.java(Zeile 93)
private SpeechletResponse getHelloResponse(String slotValue) {
String speechText = null;
if(slotValue != null && slotValue.contains("Osaka")) {
//Auf den Wert des Steckplatzes"Osaka"Wenn enthalten
speechText = "Ups, ist es rentabel?";
} else {
//Andernfalls
speechText = "Hallo wie geht's dir?";
}
// Create the Simple card content.
SimpleCard card = getSimpleCard("HelloWorld", speechText);
// Create the plain text output.
PlainTextOutputSpeech speech = getPlainTextOutputSpeech(speechText);
return SpeechletResponse.newTellResponse(speech, card);
}
Klicken Sie im Projektexplorer von Eclipse mit der rechten Maustaste auf HelloWorldSpeechlet.java und wählen Sie in den Amazon Web Services die Option ** Funktion in AWS Lambda hochladen **. (Klicken Sie unter Windows mit der rechten Maustaste auf das helloworld-Projekt, um es anzuzeigen.)
Wählen Sie einen S3-Bucket oder eine S3-Rolle aus und fahren Sie mit dem Bildschirm fort, um den Upload der Lambda-Funktion abzuschließen.
Wählen Sie im Lambda-Verwaltungsbildschirm der AWS-Konsole das zuvor hochgeladene Lambda aus und wählen Sie Wählen Sie unter Trigger hinzufügen die Option Alexa Skills Kit aus. Am unteren Bildschirmrand wird dann ein Formular zur Angabe der Alexa Skill Skill ID angezeigt.
Kehren Sie zum Bildschirm Alexa Developer Portal zurück Kopieren Sie die ** Skill ID ** und fügen Sie sie ein, beginnend mit "amzn1.ask.skill". Im Endpunktmenü. Zum Schluss drücken Sie oben rechts auf "Speichern", um den Vorgang abzuschließen.
Als nächstes wird im Gegenteil die ARN, die mit "arn: aws: lambda:" oben rechts im Verwaltungsbildschirm der Lambda-Funktion beginnt, angezeigt. Fügen Sie es in das Formular ** "Standardregion" ** im Alexa Admin Portal-Endpunktmenü ein. Drücken Sie abschließend ** "Endpunkt speichern" ** und Sie können loslegen.
Gehen Sie im Alexa Admin Portal zum Menü ** "Test" ** Geben Sie "Begrüßen Sie Osaka mit Ihren Beispielfähigkeiten" ein. Wenn Alexa antwortet: "Oh, verdienst du Geld?", Bist du erfolgreich!
Danke für deine harte Arbeit!
Recommended Posts