【发布时间】:2019-06-29 21:36:28
【问题描述】:
我正在尝试混合使用对话管理和意图链接。我已禁用自动委派。
但我坚持, 当用户填写所有槽值,然后我使用意图确认并提示他数据是否正确。
如果用户说“不”。 我想重新启动对话管理以实现相同的意图。
但我得到的错误是, “指令“Dialog.Delegate”只能在对话框处于活动状态且尚未完成时使用”。
我尝试用其他意图替换第 15 行,它可以工作,但当我发送相同意图的指令时就不行了。 有谁知道我错过了什么?
const DeniedPostMessageIntentHandler = {
canHandle(handlerInput) {
return handlerInput.requestEnvelope.request.type === 'IntentRequest' &&
handlerInput.requestEnvelope.request.intent.name === 'PostMessageIntent' &&
handlerInput.requestEnvelope.request.dialogState === 'COMPLETED' &&
handlerInput.requestEnvelope.request.intent.confirmationStatus === 'DENIED';
},
handle(handlerInput) {
let speechText = ri('POST_MESSAGE.DENIED');
return handlerInput.jrb
.speak(speechText)
.addDelegateDirective({
name: 'PostMessageIntent',
confirmationStatus: 'NONE',
slots: {}
})
.getResponse();
},
};
【问题讨论】:
标签: node.js alexa alexa-skills-kit alexa-skill