如何解决Alexa 中的意图重定向与 NodeJS 不改变确认状态
我在 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 举报,一经查实,本站将立刻删除。