这个 预构建组件 从最终用户处收集数字序列。您可以通过输入参数配置接受的最小长度和最大长度。
该组件会在每次对话中捕获用户的数字块 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 | 每轮用户可以提供的最大分块长度 | 整数 |
如需为此组件配置输入参数,请展开相应部分查看说明。
- 打开 Dialogflow CX 控制台。
- 选择您的 Google Cloud 项目。
- 选择您的代理。
- 选择构建标签页。
- 点击流部分中的导入的组件。
- 点击页面部分中的“首页”。
- 点击“开始”页面中的 true 路线。
- 在“路线”窗口中,根据需要修改参数预设的值。
- 点击保存。
输出参数
输出参数是会话参数,会在退出组件后保持有效状态。这些参数包含由 组件。此预构建组件会为以下输出参数提供值:
参数名称 | 说明 | 输出格式 |
---|---|---|
numeric_collection_numeric_sequence | 此参数会返回会话期间捕获的数字序列 | 字符串 |
基本设置
如需设置此预构建组件,请执行以下操作:
完成
您的代理现在应该已设置完毕并准备好进行测试。