node.js - 如果选择后没有立即进行轮播,则不会触发选择意图

标签 node.js actions-on-google google-assistant-sdk dialogflow-es api-ai

当我们显示轮播时,我在聆听用户选择时遇到问题。我们将askWithCarousel与dialogFlow结合使用,并使用actions_intent_option事件监听轮播项目的点击。当向用户显示轮播时,如果麦克风从用户那里获得随机输入(与轮播项目的任何同义词都不匹配),则助手开始使用麦克风监听用户输入,然后用户点击任何轮播项目或任何同义词都表示,actions_intent_option 事件不会被触发。如果此交互之后立即显示轮播,则效果很好。否则,它将采用轮播标题作为用户输入并解析为不同的意图。

因此无法获取轮播项目的 id。有没有办法禁用麦克风或发出 actions_intent_option 即使用户稍后单击轮播项目。请帮助完成此流程。

最佳答案

正如您所发现的,选择事件仅在轮播或列表发送给用户后立即发出。

我建议设置后备意图来检查列表项的标题或再次使用轮播或列表提示用户。

关于node.js - 如果选择后没有立即进行轮播,则不会触发选择意图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47567108/

相关文章:

android - 使用 Google Assistant 添加语音控制

python - 安装 Google Assistant 时,我报错 "...googlesamples.assistant' 是一个包,无法直接执行...”

node.js - 用于在字段中创建未知数量项目的文档的 Mongoose 最佳实践

javascript - 为我的 Angular 页面创建复杂的页眉和页脚

javascript - 迭代 req.body 到对象

actions-on-google - 抱歉,此操作在模拟中不可用

google-assistant-sdk - 有人知道 google assistant sdk 可用于商业用途吗?

php - 安装 laravel bootstrap 时出现 npm 警告

node.js - 如何在 Dialogflow v1 中跨多个意图(超过 2 个)传递值

node.js - 基于位置的结果