1

我有一个定义为列表的参数。当我在“代理说”框中引用该参数时,例如快速入门指南,我会在代理响应文本中获得带括号的列表。

履行响应文本:那是$session.params.supported_toppings披萨。

特工模拟器回应:那是 [意大利辣香肠] 披萨。

我一直在阅读 CX 和 ES 的文档,但除了创建 webhook 之外,我似乎找不到任何解压列表的方法(出于某种原因,我试图避免这样做)。有任何想法吗?

4

2 回答 2

2

我今天检查了引用参数时静态响应的行为,似乎我们现在可以显示某个参数的值列表,而响应中没有方括号。

格式如下:$session.params.parameter-name我用来在响应中显示列表。测试结果如下。 CX 代理 isList

此外,对于 Dialogflow ES 版,它是受支持的。它使用$parameter-name格式返回某个参数的值列表。这是 ES 代理的示例: ES 代理 isList

于 2020-10-23T10:28:50.737 回答
1

检查会话参数参考后,格式应如下所示:$session.params.parameter-id[i]有关更多信息,请参见此处:https ://cloud.google.com/dialogflow/cx/docs/concept/parameter#session-ref

这是我完成的示例测试:

  1. isList范围 在此处输入图像描述
  2. isList参数 条件在此处输入图像描述
  3. 在 Dialogflow CX 模拟器中进行测试 在此处输入图像描述

根据上面的屏幕截图,引用isList参数的格式有效。

如果您有预期数量的isList参数值,则可以使用静态响应来实现:https ://cloud.google.com/dialogflow/cx/docs/concept/fulfillment#static 。您可以根据要返回的参数添加多个响应,如提供的示例中所示。

于 2020-09-22T22:19:21.770 回答