我的技能意图之一是为用户显示或读取大量记录;我想对这种意图做出回应
示例:
用户:系统中有多少条公告
Alexa::有6个。前4个是(公告1,公告2,公告3,公告4)
您想听更多吗?
用户:是
Alexa:接下来的2个公告是(公告5,公告6)
答案 0 :(得分:0)
使用@ComponentScan(basePackages = {"com.goode.*"})
意图捕获用户的“是” 输入。
当用户要求发布公告时,请使用AMAZON.YesIntent
以及您的回复来跟踪已读的发布索引。这样,当用户说“是” 时,您可以使用此会话属性来阅读下一组公告。您也可以设置sessionAttributes
属性,以便在发出下一组公告之前可以在STATE
处理程序中验证状态。
例如:
AMAZON.YesIntent
当用户说出“是” 时,请在您的...
"sessionAttributes": {
"announcements_index": [0,1,2,3],
"STATE": "READ_ANNOUNCEMENTS"
}
...
处理程序中检查状态是否为AMAZON.YesIntent
并根据READ_ANNOUNCEMENTS
给出下一组您的公告列表中的公告。然后在announcements_index
中更新sessionAttributes
。
用户可能会说“否” ,以表示“您想听更多吗?” 。因此,也要添加announcements_index
并进行相应处理。
用例完成后,请不要忘记清除AMAZON.NoIntent
和announcements_index
。
有关STATE
和响应参数here的更多信息