数字集合预构建组件

这个 预构建组件 从最终用户处收集数字序列。您可以通过输入参数配置接受的最小长度和最大长度。

该组件会在每次对话中捕获用户的数字块 turn 并将它们串联起来,形成最终序列。最小值和最大值 可以通过输入参数配置每个分块接受的长度。

序列捕获将持续到最终用户 表示它们已完成,且输入的输入与 prebuilt_components_confirmation_done intent

限制

除了常见的预构建组件限制之外,此预构建组件还存在以下限制:

  • 不支持非数字字符。如需了解对字母和数字的支持,请参阅字母数字集合

启用 DTMF,以允许用户使用电话拨号键盘输入数字值。

其他功能

此预构建组件还提供以下其他功能:

示例对话框

以下示例对话框展示了由此函数处理的常见场景 预构建组件。示例对话框演示了组件 通过电话调用,这将触发“默认欢迎 intent”和第一个 在对话开始时让客服人员回应你。

单个分块

最终用户在首次尝试时提供数字序列;客服人员成功接受。

用户输入 代理响应
请说出数字序列的前 1 到 30 位数字。完成后,说“我完成了”即可完成收集。您也可以随时说“播放”来查看当前收集的序列。
2374 30940 029 30
我收到 23743094002930,对吗?
好的。请说出或输入数字序列的下一部分。
完成
谢谢,我收集的数字序列是 23743094002930。对吗?
太棒了,我已收集完数字序列。

多个数据块

最终用户以多个数据块的形式提供数字序列;代理会成功接受该请求

用户输入 代理响应
请说出数字序列的前 1 到 30 位数字。完成后,说“我完成了”即可完成收集。您也可以随时说“播放”来查看当前收集的序列。
2374 30940 029 30
我得到了 23743094002930,对吗?
别担心,能否请您再次提供数字序列的前 1 到 30 位数字?
2374
我得到的是 2374,对吗?
好的。请说出或输入数字序列的下一部分。
3094
我收到的是 3094,对吗?
好的。请说出或输入数字序列的下一部分。
002930
我输入了 002930,对吗?
无需担心,23743094 之后是什么?
2930
我得到了 2930,对吗?
是的,就是这样
谢谢,我收集的数字序列是 237430942930。对吗?
太好了,我收集完数字序列了。

重试成功

最终用户在首次尝试时提供数字序列;客服人员重新确认,但最终用户说“否”。代理要求最终用户再次提供序列。 最终用户提供并确认序列,代理成功接受该序列。

用户输入 代理响应
首先,请说出数字序列的前 1 到 30 位数字。完成后,说“我完成了”即可完成收集。您也可以随时说“播放”来查看当前收集的序列。
92832938 3489
我得到了 928329383459,对吗?
别担心,您可以再次提供该数字序列的前 1 到 30 位数字吗?
928329383435
我收到的是 928329383435,对吗?
是的,我还有其他事要做
谢谢,我收集到的数字序列是 928329383435。对吗?
太好了,我收集完数字序列了。

重试失败

最终用户三次提供数字序列,并在重新确认步骤中说“否”;组件在第三次确认失败后退出流程。

用户输入 代理响应
请说出数字序列的前 1 到 30 位数字。完成后,说“我完成了”即可完成收集。您也可以随时说“播放”来查看当前收集的序列。
928329383435
我得到了 928329383835,对吗?
别担心,能否请您再次提供数字序列的前 1 到 30 位数字?
23 289 0239 903
我收到的是 232890239953,对吗?
别担心,能否请您再次提供数字序列的前 1 到 30 位数字?
23847 02938
我收到 2384702938,对吗?
抱歉,我太多次尝试了,都没能收到你的回复。

无法识别所输入的内容

在最终用户提供无法识别的输入三次后,组件退出流程。

用户输入 代理响应
首先,请说出数字序列的前 1 到 30 位数字。完成后,说“大功告成”以完成集合。您也可以说“播放”检查当前收集的序列。
没关系
抱歉,我没听明白。首先,请说出数字序列的前 1 到 30 位数字。完成后,说“我完成了”即可完成收集。您也可以随时说“播放”来查看当前收集的序列。
nice
呃,我还是没听明白。请确保您读出数字序列的前 1 到 30 位数字。完成后,说“大功告成”以完成集合。您也可以说“播放”检查当前收集的序列。如果我们听不清您的声音,您也可以使用数字键盘输入数字序列。
非常好
抱歉,我没听懂您的回答。

命名规则

此预构建组件使用以下命名惯例:

特征 格式 示例
流程 [组件名称] 数字集合
组件专用 intent prebuilt_components_[component_name]_[intent_name] prebuilt_components_numeric_collection_collect_numeric_sequence
参数 [param_name] user_provided_cur_seq

输入参数

输入参数是用于配置组件特定行为的参数。流程中的一个或多个条件将使用这些参数来确定组件的行为方式。流级范围的参数必须 按照以下方式在组件的初始页上设置。会话级范围的 可以通过调用数据流或在启动时 页面。

您可以配置每次拍摄接受的最小和最大长度, 将最终收集的序列修改为 参数预设,位于 流程的初始页

此预构建组件接受以下输入参数:

参数名称 说明 输入格式
$flow.numeric_min_length 最终数字序列的长度下限 整数
$flow.numeric_max_length 最终数字序列的长度上限 整数
$flow.lower_limit 每轮用户提供的分块长度下限 整数
$flow.upper_limit 每轮用户可以提供的最大分块长度 整数

如需为此组件配置输入参数,请展开相应部分查看说明。

  1. 打开 Dialogflow CX 控制台
  2. 选择您的 Google Cloud 项目。
  3. 选择您的代理。
  4. 选择构建标签页。
  5. 点击部分中的导入的组件。
  6. 点击页面部分中的“首页”。
  7. 点击“开始”页面中的 true 路线。
  8. 在“路线”窗口中,根据需要修改参数预设的值。
  9. 点击保存

输出参数

输出参数是会话参数,会在退出组件后保持有效状态。这些参数包含由 组件。此预构建组件会为以下输出参数提供值:

参数名称 说明 输出格式
numeric_collection_numeric_sequence 此参数会返回会话期间捕获的数字序列 字符串

基本设置

如需设置此预构建组件,请执行以下操作:

  1. 导入预构建的组件

完成

您的代理现在应该已设置完毕并准备好进行测试。