字母数字集合预构建组件

字母数字集合预构建组件会从最终用户那里收集字母数字序列。可通过输入参数配置可接受的最小和最大长度。

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

序列捕获将继续,直到最终用户通过与 prebuilt_components_confirmation_done intent 匹配的输入表明他们已完成序列。

拼音字母

此组件支持使用音标,例如 NATO 音标。

用户输入 捕获的序列
alpha bravo charlie 123 abc123
A B Cat 1 2 3 ABC123
A as in apple, B as in banana, C for chili, one fifteen ABC115

其他功能

此预构建组件提供以下附加功能:

对话示例

以下示例对话展示了此预构建组件处理的常见场景。示例对话演示了通过电话呼叫组件时的行为,这会在对话开始时触发默认欢迎 intent 和第一个代理响应。

单个区块

最终用户一次性提供一串字母数字序列,并说“我说完了”;代理成功接受了该序列。

用户输入 智能体回答
请先说出字母数字序列的前 1 到 8 个字符。完成后,请说“我已完成”,以结束收集。您也可以随时说“playback”(回放),查看当前收集的序列。
fvfd3433
好的。我听到的是 fvfd3433,对吗?
是
好的。请告诉我序列中的下 1 到 8 个字符。
我没问题了
感谢您的确认。我得到的最终字母数字序列是 fvfd3433,对吗?
是
太棒了,我已收集到字母数字序列。

多个数据块

最终用户分 2 段提供字母数字序列;客服人员成功接受。

用户输入 智能体回答
请先说出字母数字序列的前 1 到 8 个字符。完成后,请说“我已完成”,以结束收集。您也可以随时说“playback”(回放),查看当前收集的序列。
fvfd3433
好的。我听到的是 fvfd3433,对吗?
是
好的。请告诉我序列中的下 1 到 8 个字符。
gh67
好的。我听到的是 gh67,对吗?
是
好的。请告诉我序列中的下 1 到 8 个字符。
我没问题了
感谢您的确认。我得到的最终字母数字序列是 fvfd3433gh67,对吗?
是
太棒了,我已收集到字母数字序列。

重试成功

最终用户提供字母数字序列;代理重新提示最终用户进行确认。最终用户对确认说“不”,并再次提供字母数字序列;代理成功接受该序列。

用户输入 智能体回答
请先说出字母数字序列的前 1 到 8 个字符。完成后,请说“我已完成”,以结束收集。您也可以随时说“playback”(回放),查看当前收集的序列。
fvfd3433
好的。我查到的是 fd3433,对吗?
否
抱歉,能否请您再次提供前 1 到 8 个字符?
fvfd3433
好的。我听到的是 fvfd3433,对吗?
是
好的。请告诉我序列中的下 1 到 8 个字符。
我没问题了
感谢您的确认。我得到的最终字母数字序列是 fvfd3433,对吗?
是
太棒了,我已收集到字母数字序列。

重试失败

最终用户在三次尝试内无法提供由 1 到 8 个字符组成的字母数字序列,组件退出流程。

用户输入 智能体回答
请先说出字母数字序列的前 1 到 8 个字符。完成后,请说“我已完成”,以结束收集。您也可以随时说“playback”(回放),查看当前收集的序列。
123N
好的。我听到的是 123M,对吗?
否
抱歉,能否请您再次提供前 1 到 8 个字符?
123N
好的。我听到的是 123M,对吗?
否
抱歉,您能再次提供前 1 到 8 个字符吗?

请用以每个字母开头的单词拼写出序列中的每个字母。例如,如果序列是 AB123,请说“Apple Baby 123”。
123 Nest
好的。我听到的是 123N,对吗?
否
抱歉,我尝试了太多次,但未能收集到字母数字序列。

拼音字母

最终用户提供字母数字序列;代理重新提示最终用户进行确认。最终用户连续两次对确认说“否”,启用语音转换,最终用户再次提供字母数字序列;代理成功接受。

用户输入 智能体回答
请先说出字母数字序列的前 1 到 8 个字符。完成后,请说“我已完成”,以结束收集。您也可以随时说“playback”(回放),查看当前收集的序列。
123N
好的。我听到的是 123M,对吗?
否
抱歉,能否请您再次提供前 1 到 8 个字符?
123N
好的。我听到的是 123M,对吗?
否
抱歉,您能再次提供前 1 到 8 个字符吗?

请用以每个字母开头的单词拼写出序列中的每个字母。例如,如果序列是 AB123,请说“Apple Baby 123”。
123 N(Nancy 的首字母)
好的。我听到的是 123N,对吗?
是
好的。请告诉我序列中的下 1 到 8 个字符。
567BC
好的。我查到的是公元前 567 年,对吗?
仅此而已
感谢您的确认。我最终得到的字母数字序列是 123N56BC。对吗?
好
太棒了,我已收集到字母数字序列。

序列长度无效

最终用户提供的字母数字序列长度不在预定义的字母数字序列长度下限和上限范围内。代理提示最终用户重新开始,最终用户拒绝,组件退出流程。

用户输入 智能体回答
请先说出字母数字序列的前 1 到 8 个字符。完成后,请说“我已完成”,以结束收集。您也可以随时说“playback”(回放),查看当前收集的序列。
1.23 亿
好的。我听到的是 123M,对吗?
完成
抱歉,您提供的字母数字序列长度不在要求的 5 到 30 个字符范围内。要重新开始吗?
否
抱歉,我尝试了太多次,但未能收集到字母数字序列。

命名规则

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

功能 格式 示例
Flow [Component Name] 字母数字集合
组件特定 intent prebuilt_components_[component_name]_[intent_name] prebuilt_components_alphanumeric_collection_support_continue
参数 [param_name] alphanumeric_max_length

输入参数

输入参数是用于配置组件某些行为的参数。这些参数将由流程中的一个或多个条件使用,以确定组件的行为方式。必须在组件的起始页上设置流级范围参数,如下所述。会话级范围的参数可由调用流设置,也可在此组件的起始页面上设置。

您可以通过修改流的起始页面中的参数预设,配置每次捕获和最终收集的序列可接受的最小和最大长度。

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

参数名称 说明 输入格式
$flow.alphanumeric_min_length 最终字母数字序列的最小长度。默认值为 1。 整数
$flow.alphanumeric_max_length 最终字母数字序列的长度上限。默认值为 30。 整数
$flow.lower_limit 用户每轮可以提供的分块的最小长度。默认值为 1。 整数
$flow.upper_limit 用户每轮可提供的分块长度上限。默认值为 8。 整数

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

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

输出参数

输出参数是在退出组件后仍保持有效状态的会话参数。这些参数包含组件收集的重要信息。此预构建组件会为以下输出参数提供值:

参数名称 说明 输出格式
alphanumeric_collection_alphanumeric_sequence 此参数会返回组件捕获的字母数字序列 字符串

基本设置

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

  1. 导入预构建组件。

完成

您的代理现在应该已设置完毕,可以进行测试了。