私のAlexaアプリのIntentsには、いくつかのスロットが必要です。 Alexaのスキルビルダーがこれを簡単にします。私は必要に応じてスロットに印を付けることができ、ユーザーがスロットの情報を提供するためにAlexaが求めるべきものを設定することができます。問題は開発者としてAlexaにあなたのラムダと言って、Alexaがスロット充填を処理して欲しいということです。ドキュメントを読んAmazon Alexa SDKでDialog.Delegateを返す方法は?
が、私はこの部分を取得:ダイアログがIN_PROGRESSである場合
それは無いupdatedIntentでDialog.Delegateを返し、
を述べています。
どうすればよいですか?私のラムダで私は持っています
@Override
public SpeechletResponse onIntent(final IntentRequest request, final Session session)
throws SpeechletException {
Intent intent = request.getIntent();
String intentName = (intent != null) ? intent.getName() : null;
if ("AddTwoNumbers".equals(intentName)) {
if (!request.getDialogState().equals("COMPLETED")) {
return new DelegateDirective();
} else {
handleAdditionIntent();
}
} else { // handle other intents}
}
そのコードサンプルはあまりにも役に立たないようです。
} else if (intentRequest.dialogState != "COMPLETED"){
// return a Dialog.Delegate directive with no updatedIntent property.
} else {
アレクサの開発に対するアマゾンのサポートはひどいものです。私は助けに感謝します。私が見逃していた大きな問題は、 'speechletResp.setNullableShouldEndSession(false);' Cheers! – EGHDK
私はもっと同意できません...文書は非常に抽象的で、Javaの具体例はありません – DLee