信用卡号收集预构建组件

预构建组件可捕获 8 到 19 位数的卡号。系统会使用 Luhn 算法验证捕获的信用卡号。

限制

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

  • 该组件不包含支付网关集成。
  • 不支持少于 8 位或多于 19 位的信用卡号。

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

其他功能

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

对话示例

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

单个块

最终用户在第一轮对话中提供完整的卡号;客服人员成功验证并接受该信息。

用户输入 智能体回答
请说出或输入信用卡号的前一部分。您可以随时说“回放”来听取当前收集的号码。
4242 4242 4242 4242
我得到的号码是 4242424242424242,对吗?
请说出或输入信用卡号的下一部分,或者在输入完毕后说“完毕”。
就这些
为了与您进行最终确认,我收到的信用卡号是 4242424242424242,请问是否正确?
感谢您,您的信用卡卡号已成功通过验证。

多个数据块

最终用户分三段提供信用卡号;客服人员验证并接受。

用户输入 智能体回答
请说出或输入信用卡号的前一部分。您可以随时说“回放”来听取当前收集的号码。
4242
我算出来的是 4242,对吗?
请说出或输入信用卡号的下一部分,或者在输入完毕后说“完毕”。
424242
我得到的号码是 424242,对吗?
请说出或输入信用卡号的下一部分,或者在输入完毕后说“完毕”。
424242
我得到的号码是 424242,对吗?
请说出或输入信用卡号的下一部分,或者在输入完毕后说“完毕”。
完成
为了与您进行最终确认,我收到的信用卡号是 4242424242424242,请问是否正确?
感谢您,您的信用卡卡号已成功通过验证。

重试成功

最终用户在第一轮对话中提供了完整的信用卡号;客服人员重新确认了该卡号,但最终用户回答“否”。代理要求最终用户再次提供输入。最终用户提供并确认号码,代理成功验证并接受该号码。

用户输入 智能体回答
请说出或输入信用卡号的前一部分。您可以随时说“回放”来听取当前收集的号码。
5105105105105100
我收到的验证码是 5105105105105101,对吗?
没问题,请重复信用卡卡号,或尝试一次说出四位数字
5105105105105100
我收到的验证码是 5105105105105100,对吗?
请说出或输入信用卡号的下一部分,或者在输入完毕后说“完毕”。
就这些
为了与您进行最终确认,我收到的信用卡号是 5105105105105100,对吗?
感谢您,您的信用卡卡号已成功通过验证。

无法识别所输入的内容

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

用户输入 智能体回答
请说出或输入信用卡号的前一部分。您可以随时说“回放”来听取当前收集的号码。
没关系
抱歉,我没听明白。请再说一遍或重新输入信用卡号。
没关系
嗯,我还是没听明白。请确保您说的是信用卡号。您也可以使用键盘输入信用卡号。
没关系
抱歉,我难以理解你的回答。

信用卡号验证

有效的信用卡号必须介于 8 到 19 位数字之间。此组件还使用 IS_CREDIT_CARD_NUMBER 系统函数通过 Luhn 算法验证信用卡号。

命名规则

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

功能 格式 示例
Flow [组件名称] 信用卡号收集
特定于组件的 intent prebuilt_components_[component_name]_[intent_name] prebuilt_components_credit_card_number_collection_credit_card_sequence
参数 [param_name] user_provided_new_seq

输出参数

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

参数名称 说明 输出格式
credit_card_status 此参数使用 Luhn 算法指示所收集的卡号的有效性:
“有效”表示所收集的卡号已成功验证,且长度介于 8 到 19 位之间
“无效”表示所收集的卡号无效,或长度不在 8 到 19 位之间
字符串
credit_card_number_collection_credit_card_number 此参数返回组件捕获的卡号 字符串

基本设置

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

  1. 导入预构建组件

完成

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