问题描述
在我的 Dialogflow CX 流程中,我有一个 Route 可以响应某些检测到的 Intent。
在这里,我可以输入许多变体来回答 - 在“执行”部分“代理说”中。
当我通过 API 使用它时,我只得到 1 个答案(在 response.query_result.response_messages
中),我认为从所有情况下随机选择。
但我想获取我所有的案例并在我的代码中自行选择。可以吗,有这样的方法吗?
例如,我想防止在一个对话框中多次向用户发送相同的答案。
解决方法
据我所知,当您使用 detectIntent 方法中的 detectIntentResponse 方法时,您将有 1 个用户查询来获取您从 Dialogflow CX 控制台设置的特定路由页面中的所有响应。
请注意,在 Dialogflow CX Fulfillment 中,每个 Text 对话选项(或 代理说 部分)只会随机返回 1 个响应。 您可以在此处参考Fulfillment Static responses。
如果您想从“履行”部分返回多个文本回复,您需要添加多个文本对话选项:
然后您可以从fulfillment responseMessage 文本对象中以数组的形式获取文本响应。