电话号码收集预构建组件

预构建组件会捕获并验证国家/地区代码和电话号码。

限制

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

  • 不接受超过 16 位数的电话号码。

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

其他功能

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

对话框示例

以下示例对话框演示了此预构建组件处理的常见场景。示例对话框演示了通过电话调用组件时的行为,这会触发默认欢迎 intent 并在对话开始时发出第一个客服人员回复。

两次读出有效的电话号码

最终用户先提供国家/地区代码,然后提供电话号码;客服人员成功验证并接受。

用户输入 客服人员回复
您所在的国家/地区的名称或代码是什么?
+1
知道了,您的国家/地区代码是加 1。请说出您的电话号码。
6502530000
Got it.您提到的号码是 1 6502530000,对吗?
是的,没错
太棒了,我已收集到电话号码。

单次转弯时有效的电话号码

最终用户同时提供国家/地区代码和电话号码,客服人员成功验证并接受。

用户输入 客服人员回复
您所在的国家/地区的名称或代码是什么?
+1 6502530000
Got it.您提到的号码是 1 6502530000,对吗?
是的,没错
太棒了,我已收集到电话号码。

无效电话号码

最终用户在一次对话中提供国家/地区代码和电话号码;客服人员进行检查,发现所提供的电话号码长度有效(不超过 16 位),但不是有效的电话号码。然后,客服人员会再次提示最终用户提供电话号码。

用户输入 客服人员回复
您所在的国家/地区的名称或代码是什么?
+1 6502530001
抱歉,系统无法识别此电话号码。我收集的国家/地区代码是 +1。请提供有效的电话号码。
6502530000
Got it.您提到的号码是 1 6502530000,对吗?
是的,没错
太棒了,我已收集到电话号码。

国家/地区代码和电话号码无效

最终用户在一次对话中提供国家/地区代码和电话号码;客服人员进行检查,发现所提供的国家/地区代码和电话号码无效。然后,客服人员会再次提示最终用户提供国家/地区代码和电话号码。

用户输入 客服人员回复
您所在的国家/地区的名称或代码是什么?
+0080000000000
抱歉,您提供的国家/地区代码或电话号码似乎无效。我们重来一次吧。请说出您所在的国家/地区的名称或代码。
1
知道了,您的国家/地区代码是加 1。您的电话号码是多少?
6502530000
Got it.您提到的号码是 1 6502530000,对吗?
是的,没错
太棒了,我已收集到电话号码。

无法识别所输入的内容

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

用户输入 客服人员回复
您所在的国家/地区的名称或代码是什么?
没关系
抱歉,我没听明白。您能否再说一遍或输入国家/地区代码?
nice
呃,我还是没听明白。请确保您说出国家/地区代码。如果我听不清您的声音,您也可以使用数字键盘输入国家/地区代码。
good
抱歉,我没听懂您的回答。

电话号码验证

手机号码预构建组件使用 IS_PHONE_NUMBER 系统函数来验证手机号码是否与有效的模式匹配。

命名规则

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

功能 格式 示例
流程 [组件名称] 收集电话号码
特定于组件的 intent prebuilt_components_[component_name]_[intent_name] prebuilt_components_telephone_number_collection_incorrect_country_code
参数 [param_name] telephone_number
实体类型 prebuilt_components_[component_name]_[intent_name] prebuilt_components_telephone_no_country_code

输出参数

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

参数名称 说明 输出格式
telephone_number_collection_telephone_number 此参数会返回组件捕获的电话号码 字符串
telephone_number_collection_country_code 此参数会返回组件捕获的国家/地区代码 字符串

基本设置

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

  1. 导入预构建组件

完成

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