丢失和被盗的卡预构建组件可以对用户进行身份验证,检索用户注册的卡,并允许用户锁定卡。确认已锁定的卡后,该组件可让用户注册升级或重新签发新卡。此组件使用自定义版本的 Authentication 预构建组件对持卡人进行身份验证。
限制
除了常见的预构建组件限制之外,此预构建组件还具有以下限制:
- 该组件不加密任何数据。
示例对话框
以下示例对话框展示了此预构建组件处理的常见场景。这些示例对话框演示了通过电话调用组件时的行为,这会在对话开始时触发“默认欢迎意图”和第一个代理响应。
有一张卡未经过身份验证的用户
代理会识别用户之前未进行身份验证,并收集信息以验证用户是否是已注册的持卡人。用户通过身份验证后,代理会检索用户注册的单张卡的相关信息。用户确认要锁定该卡后,代理会锁定该卡。最后,代理确认用户的首选卡和配送地址,并向用户重新签发一张新卡。
用户输入 | 代理响应 |
---|---|
代理使用 Authentication 预构建组件对用户进行身份验证 | |
谢谢,您已成功进行身份验证。 | |
我们正在获取您的银行卡详细信息,请稍候。 我们发现您的 MasterCard 卡的尾号为 4444。您想要永久锁定您的卡吗? |
|
是 | |
请告诉我们您锁定银行卡的原因。您可以选择损坏、被盗、丢失或其他选项。 | |
我的卡丢了 | |
感谢您提供的信息。我们将帮助您永久锁定您的卡。您可以确认一下卡的尾号就是 4444 吗? | |
是 | |
好的,在继续操作之前,我们会向您注册的手机号码发送验证码。请告诉我们以验证请求的代码。 | |
123457 | |
好的,尾号为 4444 的卡将被永久锁定。一旦锁定,您将无法使用该银行卡在线或在 POS 机上进行任何交易。确定要执行此操作吗? | |
是 | |
您的银行卡已成功锁定。您的请求编号为 9761431,并且已成功与您的注册手机号码共享。是否要重新签发新卡? | |
是 | |
您有资格获得白金卡。年费为 97 美元,可获得价值 494 美元的年度奖金和特殊福利。如需了解详情,请点击发送到您的注册手机号码的链接。 要注册此卡吗? |
|
是 | |
我们会将该卡寄送到您的注册地址。请确认你的配送地址的邮政编码是 12345 吗? | |
是 | |
好的,请稍等几秒钟,我们正在提交新卡的重发请求。 新卡的重发请求已成功完成。您的请求编号为 4643943,并已成功分享到您注册的手机号码。 该卡将在 3 个工作日内寄送到您的注册地址。如需使用该卡,请按照该卡随附的说明操作。 |
使用多张卡通过身份验证的用户
代理会识别用户之前已经过身份验证,并检索与用户注册的卡有关的信息。用户选择之前已锁定的卡,因此代理允许用户申请新卡。
用户输入 | 代理响应 |
---|---|
我们正在获取您的卡的详细信息,请稍候。 我们发现多张卡注册了您的电话号码。我们有一张尾号为 1456 的 Visa 卡、一张尾号为 1457 的 MasterCard、一张尾号为 1345 的 Visa 卡,还有一张尾号为 3456 的 Visa 卡 请告诉我们你要锁定的卡的后 4 位数字。 |
|
1457 | |
我们得到的卡号后四位数字是 1457,对吗? | |
是 | |
所请求的银行卡已处于永久锁定状态。是否要重新签发新卡? | |
是 | |
我们会将该卡寄送到您的注册地址。请确认你的配送地址的邮政编码是 12345 吗? | |
是 | |
好的,请稍等几秒钟,我们正在提交新卡的重发请求。 新卡的重发请求已成功完成。您的请求编号为 5423270,并且已成功分享到您注册的手机号码。 该卡将在 3 个工作日内寄送到您的注册地址。如需使用该卡,请按照与该卡分享的说明操作。 要屏蔽任何其他卡吗? |
|
不,只有我自己 | |
好的,感谢您致电。 |
命名惯例
此预构建组件使用以下命名惯例:
特征 | 形式 | 示例 |
---|---|---|
流 | [组件名称] | 卡丢失与被盗 |
实体类型 | prebuilt_components_[component_name]_[entity_type] | prebuilt_components_lost_and_stolen_lock_reason |
Webhook | prebuilt_components_[component_name]:[webhook_action] | prebuilt_components_lost_and_stolen_card:lock_card_ticket_number |
输入参数
输入参数是用于配置组件某些行为的参数。流中的一个或多个条件将使用这些参数来确定组件的行为方式。流范围的参数必须在组件的初始页上设置,如下所述。会话级范围的参数可以通过调用流设置,也可以在此组件的初始页上设置。
此预构建组件接受以下输入参数:
参数名称 | 说明 | 输入格式 |
---|---|---|
$session.params.auth_level | (可选)指示调用方的身份验证级别。 | 整数 |
$session.params.auth_level_req | 指明用户访问其交易记录所需的身份验证级别。此值在 check auth level 页面中页面条目执行方式的参数预设中配置。默认情况下,此值为 1 。 |
整数 |
$session.params.account_auth_enabled | 指明用户是否应该作为帐号持有人进行身份验证(如身份验证类型中所述)。此值在 check auth level 页面中页面条目执行方式的参数预设中配置。默认情况下,此值为 false 。 |
boolean |
$session.params.card_auth_enabled | 用于指明用户是否应该以持卡人身份接受身份验证(如身份验证类型中所述)。此值在 check auth level 页面中页面条目执行方式的参数预设中配置。默认情况下,此值为 true 。 |
boolean |
$session.params.phone_number | (可选)用于验证身份的客户已注册手机号码。 | 字符串 |
$session.params.card_count | (可选)与经过身份验证的用户关联的信用卡的数量。 | 整数 |
$flow.card_status_active | 指定验证卡 webhook 返回的参数值,以指示所选卡当前处于活跃状态。默认情况下,值为 "active" 。 |
字符串 |
$flow.card_status_lock_temp | 指定验证卡片 webhook 返回的参数值,以指明所选卡已暂时锁定。默认情况下,值为 "inactive" 。 |
字符串 |
$flow.card_status_lock_permanent | 指定验证卡 webhook 返回的参数值,以指示所选卡已永久锁定。默认情况下,值为 "blocked" 。 |
字符串 |
$flow.max_retry_card_number | 指定收集信用卡的最后四位数时允许的重试次数。默认值为 3 。 |
整数 |
$flow.max_otp_retry_count | 指定向用户收集动态密码 (OTP) 时允许的重试次数。默认值为 3 。 |
整数 |
如需为此组件配置输入参数,请展开查看相关说明。
- 打开 Dialogflow CX 控制台。
- 选择您的 Google Cloud 项目。
- 选择您的代理。
- 选择 Build 标签页。
- 在流部分中点击导入的组件。
- 点击网页部分中的初始页。
- 点击初始页中的 true 路由。
- 在“路由”窗口中,根据需要修改参数预设值。
- 点击保存。
输出参数
输出参数是在退出组件后将保持活跃状态的会话参数。这些参数包含该组件收集的重要信息。此预构建组件提供了以下输出参数的值:
参数名称 | 说明 | 输出格式 |
---|---|---|
auth_level | 指示调用方的身份验证级别。 | 整数 |
phone_number | 用于识别用户的用户的本地手机号码(不含国家/地区代码)。 | 字符串 |
card_count | 与注册电话号码相关联的卡片的数量。 | 整数 |
last_four_digit_of_card_number | 如果用户拥有一张卡,则返回卡号的最后四位数。如果用户有多张银行卡,则此参数的值为用户选择为其锁定或重新签发新银行卡的银行卡的最后四位数。 | 字符串 |
transfer_reason | 此参数指示数据流退出的原因(如果失败的话)。返回值为以下值之一:agent :在对话期间的某个时间点,最终用户请求了人工客服。denial_of_information :最终用户拒绝分享该组件请求的信息。max_no_input :对话已达到无输入事件的重试次数上限。请参阅无输入内置事件。max_no_match :对话已达到无匹配事件的重试次数上限。请参阅无匹配的内置事件。webhook_error :发生了网络钩子错误。请参阅 webhook.error 内置事件。webhook_not_found :无法访问网络钩子网址。请参阅 webhook.error.not-found 内置事件。 |
字符串 |
基本设置
如需设置此预构建组件,请执行以下操作:
- 导入预构建组件。
- 使用描述 Dialogflow 外部服务的配置来配置所提供的灵活 webhook,请参阅下面的 webhook 设置。
网络钩子设置
为了使用此组件,您需要配置所包含的灵活网络钩子,以从外部服务中检索所需信息。
Authentication
如果您之前未配置过身份验证所需的外部服务,则需要对其进行配置,以便为此组件启用用户身份验证功能。如需查看详细说明,请参阅 Authentication 网络钩子设置。
获取卡的详细信息
该组件使用 prebuilt_components_account_services:get_card_details
网络钩子来获取用户注册的卡的相关信息。
API 请求参数
以下参数由组件提供,作为 API 请求的输入。
参数名称 | 说明 | 输入格式 |
---|---|---|
$session.params.phone_number | 用于识别用户的用户的本地手机号码(不含国家/地区代码)。 | 字符串 |
API 响应参数
以下参数是从 API 响应中提取的,供组件使用。
参数名称 | 说明 | 输出格式 |
---|---|---|
last_four_digit_of_all_cards | 包含用户注册的每张卡的最后四位数的列表,例如 ["0000", "1111", "2222"] 。此列表中的每个元素都与 card_vendor_all 中具有相同索引的元素表示同一张卡片。 |
列表(字符串) |
card_vendor_all | 包含用户注册的每张卡的信用卡供应商的列表,例如 ["Visa", "Mastercard", "Discover"] 。此列表中的每个元素都与 last_four_digit_of_all_cards 中具有相同索引的元素表示同一张卡片。 |
列表(字符串) |
card_count | 与经过身份验证的用户关联的卡数。 | 整数 |
如需为此组件配置“获取卡片详情”网络钩子,请展开查看相关说明。
- 打开 Dialogflow CX 控制台。
- 选择您的 Google Cloud 项目。
- 选择您的代理。
- 选择管理标签页。
- 点击 Webhook。
- 选择预建组件_account_services:get_card_details webhook。
- 将 Dialogflow 网络钩子网址字段中的网址替换为您要集成的服务的端点。从下拉菜单中选择合适的方法。
- 查看并更新请求正文,以构成网络钩子的正确请求格式。
- 查看并更新响应配置,以从 webhook 的响应中提取特定字段。请勿修改参数名称,因为组件必须使用这些参数名称才能访问返回的字段值。
- 查看并视需要更新 Authentication 设置。
- 点击保存。
验证卡
该组件使用 prebuilt_components_lost_and_stolen_card:validate_card
网络钩子来获取注册到用户帐号的特定卡的相关信息。
API 请求参数
以下参数由组件提供,作为 API 请求的输入。
参数名称 | 说明 | 输入格式 |
---|---|---|
$session.params.phone_number | 用于识别用户的用户的本地手机号码(不含国家/地区代码)。 | 字符串 |
$session.params.last_four_digit_of_card_number | 用户请求锁定的卡号的最后四位数。 | 字符串 |
API 响应参数
以下参数是从 API 响应中提取的,供组件使用。
参数名称 | 说明 | 输出格式 |
---|---|---|
zip_code | 在用户账号中注册的邮政编码。 | 字符串 |
card_vendor | 所选卡的信用卡供应商。 | 字符串 |
card_status | 指示银行卡的当前状态。默认情况下,有效值为“有效”“暂时屏蔽”或“永久屏蔽”。这些状态由参数 $flow.card_status_active 、$flow.card_status_lock_temp 和 $flow.card_status_lock_permanent 指定。请参阅输入参数。 |
字符串 |
card_upgrade | 指明所选卡是否可升级。 | boolean |
card_upgrade_type | 指定可用的卡升级类型,例如 "gold" 或 "platinum" 。如果 card_upgrade 为 false ,则不需要此参数。 |
字符串 |
card_upgrade_annual_fee | 指定升级卡所需的年费金额(以美元为单位),例如 150 。如果 card_upgrade 为 false ,则不需要此参数。 |
数字 |
card_upgrade_benefit | 指定升级卡后可获得的福利金额(美元),例如 450 。如果 card_upgrade 为 false ,则不需要此参数。 |
数字 |
reissue_status | 指明是否已为此卡重新签发新卡。 | boolean |
dispatch_status | 指明重新签发的银行卡是否已寄送到注册的地址。如果 reissue_status 为 false ,dispatch_status 必须为 false 。 |
boolean |
card_estimated_duration | 新卡的预计送达时间,例如 "2 days" 或 "24 hours" 。如果 reissue_status 为 false ,则无需使用此参数。 |
字符串 |
如需为此组件配置“验证”卡片网络钩子,请展开查看相关说明。
- 打开 Dialogflow CX 控制台。
- 选择您的 Google Cloud 项目。
- 选择您的代理。
- 选择管理标签页。
- 点击 Webhook。
- 选择预建组件_lost_and_stolen_card:validate_card 网络钩子。
- 将 Dialogflow 网络钩子网址字段中的网址替换为您要集成的服务的端点。从下拉菜单中选择合适的方法。
- 查看并更新请求正文,以构成网络钩子的正确请求格式。
- 查看并更新响应配置,以从 webhook 的响应中提取特定字段。请勿修改参数名称,因为组件必须使用这些参数名称才能访问返回的字段值。
- 查看并视需要更新 Authentication 设置。
- 点击保存。
锁定银行卡
该组件使用 prebuilt_components_lost_and_stolen_card:lock_card_ticket_number
网络钩子来创建锁定所选卡的请求。
API 请求参数
以下参数由组件提供,作为 API 请求的输入。
参数名称 | 说明 | 输入格式 |
---|---|---|
$session.params.phone_number | 用于识别用户的用户的本地手机号码(不含国家/地区代码)。 | 字符串 |
$session.params.last_four_digit_of_card_number | 用户请求锁定的卡号的最后四位数。 | 字符串 |
$flow.lock_type | 表示要应用到用户卡的锁定类型。默认情况下,对于丢失和被盗的银行卡,此组件支持永久锁定。有效的锁定类型由参数 $flow.card_status_active 、$flow.card_status_lock_temp 和 $flow.card_status_lock_permanent 指定。请参阅输入参数。 |
字符串 |
$flow.lock_reason | 指明用户请求锁定银行卡的原因。有效值由 prebuilt_components_lost_and_stolen_lock_reason 自定义实体定义。默认情况下,支持 "damaged" 、"stolen" 、"lost" 和 "others" 。 |
字符串 |
API 响应参数
以下参数是从 API 响应中提取的,供组件使用。
参数名称 | 说明 | 输出格式 |
---|---|---|
ticket_number | 创建的锁定卡请求的工单编号。 | 整数 |
如需为此组件配置锁定卡片网络钩子,请展开查看相关说明。
- 打开 Dialogflow CX 控制台。
- 选择您的 Google Cloud 项目。
- 选择您的代理。
- 选择管理标签页。
- 点击 Webhook。
- 选择预建组件_lost_and_stolen_card:lock_card_ticket_number 网络钩子。
- 将 Dialogflow 网络钩子网址字段中的网址替换为您要集成的服务的端点。从下拉菜单中选择合适的方法。
- 查看并更新请求正文,以构成网络钩子的正确请求格式。
- 查看并更新响应配置,以从 webhook 的响应中提取特定字段。请勿修改参数名称,因为组件必须使用这些参数名称才能访问返回的字段值。
- 查看并视需要更新 Authentication 设置。
- 点击保存。
重发卡
该组件使用 prebuilt_components_lost_and_stolen_card:reissue_card_number
网络钩子创建请求,重新签发新卡或升级卡。
API 请求参数
以下参数由组件提供,作为 API 请求的输入。
参数名称 | 说明 | 输入格式 |
---|---|---|
$session.params.phone_number | 用于识别用户的用户的本地手机号码(不含国家/地区代码)。 | 字符串 |
$session.params.last_four_digit_of_card_number | 用户请求锁定的卡号的最后四位数。 | 字符串 |
zip_code | 在用户账号中注册的邮政编码。 | 字符串 |
card_upgrade | 指明用户是否选择了升级银行卡。 | boolean |
card_upgrade_type | 指定用户选择的卡升级类型,例如 "gold" 或 "platinum" 。如果 card_upgrade 为 false ,则不需要此参数。 |
字符串 |
API 响应参数
以下参数是从 API 响应中提取的,供组件使用。
参数名称 | 说明 | 输出格式 |
---|---|---|
acknowledgement_number | 创建的重发卡请求的工单号。 | 整数 |
如需为此组件配置重发卡网络钩子,请展开查看相关说明。
- 打开 Dialogflow CX 控制台。
- 选择您的 Google Cloud 项目。
- 选择您的代理。
- 选择管理标签页。
- 点击 Webhook。
- 选择预建组件_lost_and_stolen_card:reissue_card_number 网络钩子。
- 将 Dialogflow 网络钩子网址字段中的网址替换为您要集成的服务的端点。从下拉菜单中选择合适的方法。
- 查看并更新请求正文,以构成网络钩子的正确请求格式。
- 查看并更新响应配置,以从 webhook 的响应中提取特定字段。请勿修改参数名称,因为组件必须使用这些参数名称才能访问返回的字段值。
- 查看并视需要更新 Authentication 设置。
- 点击保存。
完成
现在,您的代理及其 webhook 应该已设置完毕,可以开始测试了。