问题描述
我在 NodeJS 中使用 alexa SDK 处理意图重定向时遇到问题。
所以,我有两个意图:“CriaragendamentoIntent”(CreateScheduleIntent),它在某个时候重定向到“SelecionaragendamentoIntent”(SelectScheduleIntent),它有两个必需的槽(日期和小时)。
两个意图都有确认,因此我需要更改意图以开始另一个确认,问题是,当我从 CriaragendamentoIntent 转到 SelecionaragendamentoIntent 时,SeleciaragendamentoIntent 的 handlerInput 中的 confirmStatus 已经设置为“CONFIRMED”。
让我展示一些代码:
CriaragendamentoIntent handle() 重定向到 SelecionaragendamentoIntent:
if (confirmationStatus === 'CONFIRMED') {
let updatedIntent = {
dialogState: 'STARTED',name: 'SelecionaragendamentoIntent',confirmationStatus: 'NONE',slots: {},};
return handlerInput.responseBuilder
.speak(dialogoCriaragendamentos.mensagemEnderecoConfirmado.speak)
.reprompt(dialogoCriaragendamentos.mensagemEnderecoConfirmado.reprompt)
.addDelegateDirective(updatedIntent)
.withShouldEndSession(false)
.getResponse();
}
运行该条件后,我被重定向到 SelecionaragendamentoIntent 的 handle():
handle: async function (handlerInput) {
const confirmationStatus = handlerInput.requestEnvelope.request.intent.confirmationStatus;
}
所以,这个confirmationStatus 是“CONFIRMED”,但它应该是“NONE”,正如我之前展示的updateIntent 变量中所定义的那样。
这是“CriaragendamentoIntent”的 Alexa 开发者控制台配置: https://i.stack.imgur.com/YhDJM.png
这是“SelecionaragendamentoIntent”的 Alexa 开发者控制台配置: https://i.stack.imgur.com/ERavI.png
你们知道发生了什么吗?
如果您需要更多信息,请告诉我!
谢谢!
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)