我一直试图让自己的头脑在这周围几天,它类似于another question,但这个答案并没有解决我的问题 .
我无法从我的Alexa技能填充JSON响应的sessionAttributes属性:
var sessionAttributes = {};
sessionAttributes = { "somekey": "somevalue" };
session.attributes = sessionAttributes;
我认为从我的AWS Lambda函数发送的响应来自Alexa的请求的响应将包括我的自定义添加,但事实并非如此,我无法弄清楚原因 .
我想我明白响应对象对于this.response访问的闭包是私有的,但这只会让我更加困惑(来源:Github Issue)
所以我的问题是: How can I persist data throughout a session involving multiple user interactions with Alexa?
我认为需要构建我自己的响应对象,我不能使用任何自动化功能?
1 回答
您错过了对setSessionAttributes的调用,这使得sessionAttributes的新值可供其他处理程序使用 .
所以你需要做的是:
注意:上面的示例要求您使用Node SDK 2版本 .