【发布时间】:2019-05-02 17:58:50
【问题描述】:
有没有办法暂时从一个意图重定向到另一个意图以填充插槽或会话属性,然后返回到原始意图以得到响应或实现?
我的用例是在帐户链接后要求提供帐户 PIN 作为辅助身份验证。例如,如果有人问“我的帐户详细信息是什么?”,我希望该意图在会话属性中进行更改(如果存在),如果不存在,则暂时重定向到将提示他们输入 PIN 并设置它的意图……然后回来回答他们的帐户详细信息请求。类似于下面的例子:
const IntentHandler = {
canHandle(input) {
return (
input.requestEnvelope.request.type === 'IntentRequest' &&
input.requestEnvelope.request.intent.name === 'MyIntent'
},
handle(input) {
const { accessToken } = input.requestEnvelope.context.System.user
// ... do stuff with accessToken
if (!input.attributesManager.getSessionAttributes().pin) {
// redirect to other intent to set the pin session attribute
}
// ...response to intent request
}
}
我可以使用插槽填充提示使用单个意图来完成此工作,但这是多个意图的常见任务,并且希望将其分开,因此不必在控制台中针对所有需要它进行配置。
仅供参考:在 Node.js 中使用 ask-sdk
当前版本的ask-sdk 可以做到这一点吗?
【问题讨论】:
标签: node.js alexa alexa-skills-kit alexa-skill