争议预构建组件可对用户进行身份验证,并允许用户对扣款、交易和费用提出异议或抗辩。此组件使用自定义版本的身份验证预构建组件来对账号持有人和持卡人进行身份验证。该组件还使用自定义版本的出生日期预构建组件来收集有争议的交易的日期。
限制
除了常见的预构建组件限制之外,此预构建组件还存在以下限制:
- 此组件不会加密任何数据。
对话框示例
以下示例对话框演示了此预构建组件处理的常见场景。示例对话框演示了通过电话调用组件时的行为,这会触发默认欢迎 intent 并在对话开始时发出第一个客服人员回复。
存在交易争议的未经身份验证的用户
代理会发现用户之前未进行身份验证,并收集信息以验证用户是否为注册账号持有人。客服人员会收集与争议相关的信息,包括账号、争议模式、日期和金额,并为争议创建新支持请求。
用户输入 | 客服人员回复 |
---|---|
代理使用身份验证预构建组件对用户进行身份验证 | |
谢谢,您已成功通过身份验证。 | |
请注意,您可以在网上银行门户上提出退款申请或对扣款提出异议。您是否想继续此对话以提交版权主张或提出异议? | |
是,提出异议 | |
请告诉我们您的异议是否与信用卡结算或交易相关。 | |
与我的交易有关 | |
我们正在提取您的账号详情,请耐心等待。 我们发现您的号码与 2 个账号相关联。请告诉我们您所指账号的后 4 位数字。 |
|
1001 | |
谢谢,我们收集的后 4 位数字是 1001。对吗? | |
是 | |
首先,请问交易日期是什么时候? | |
代理使用出生日期预构建组件收集交易日期 | |
您能否确认一下转账金额?例如,如果您要查找金额高于 100.30 美元的交易,请输入“100”。 | |
15 美元 | |
您已为 2023 年 5 月 1 日输入了 15 美元的争议金额。您想对自己的账号提出异议吗? | |
是 | |
我们已为您的争议创建了新支持请求。您的支持请求编号为 448639,我们已将其发送至您的注册电子邮件地址。在核实您提供的信息后,我们会将您的款项退还至尾号为 1001 的账号。 |
经过身份验证的用户,并对信用卡扣款提出异议
代理会识别用户是否已通过身份验证,并检索已注册给用户的卡片的相关信息。用户选择永久锁定卡,然后客服人员生成永久锁定卡请求。然后,客服人员会询问用户是否想为永久锁定的卡重新签发新卡,并为该卡创建重新签发请求。
用户输入 | 客服人员回复 |
---|---|
我们发现,您的电话号码与 2 张信用卡相关联。您要找的卡号尾号是 4321 吗? | |
是 | |
如果您的异议与信用卡结算相关,请说“信用卡结算”。 | |
信用卡结算 | |
您是否想就信用卡账单上的超额收费或支出提出异议? | |
我被收取了过高的费用 | |
首先,能否确认这个可能存在的问题发生在哪个月? | |
04 | |
您能否确认一下您要申请的金额?例如,如果您要查找金额高于 100.30 美元的退款,请输入“100”。 | |
4567 | |
谢谢!能否请您确认一下与此潜在问题相关的费用说明?您可以选择年费、交易费、逾期付款费或任何其他费用。 | |
这是年费 | |
您已为 2023 年 4 月 1 日输入了 4567 美元的争议金额。您想对信用卡交易提出异议吗? | |
是 | |
我们已为您的争议创建了新支持请求。您的支持请求编号为 111236,我们已将其发送至您登记的手机号码。您的支持请求将在接下来的 3 个工作日内得到解决。 |
命名规则
此预构建组件使用以下命名惯例:
功能 | 格式 | 示例 |
---|---|---|
流程 | [组件名称] | 争议 |
特定于组件的 intent | prebuilt_components_[component_name]_[intent_name] | prebuilt_components_disputes_dispute_type |
实体类型 | prebuilt_components_[component_name]_[entity_type] | prebuilt_components_disputes_dispute_reason |
网络钩子 | prebuilt_components_[component_name]:[webhook_action] | prebuilt_components_disputes:get_disputed_transaction |
输入参数
输入参数是用于配置组件特定行为的参数。流程中一个或多个条件将使用这些参数来确定组件的行为方式。必须在组件的开始页面上设置流程级范围的参数,如下所述。会话级范围的参数可以通过调用流程或在此组件的首页上设置。
此预构建组件接受以下输入参数:
参数名称 | 说明 | 输入格式 |
---|---|---|
$session.params.auth_level | (可选)表示调用方的身份验证级别。 | 整数 |
$session.params.auth_level_req | 表示用户需要达到的身份验证级别,才能访问其交易记录。此值在 check auth level 页面中的网页条目执行方式的参数预设中进行配置。默认情况下,此值为 1 。 |
整数 |
$session.params.account_auth_enabled | 指示是否应对用户进行账号持有人身份验证,如身份验证类型中所述。此值在 check auth level 页面中的网页条目执行方式的参数预设中进行配置。默认情况下,此值为 true 。 |
布尔值 |
$session.params.card_auth_enabled | 指明是否应对用户进行持卡人身份验证,如身份验证类型中所述。此值在 check auth level 页面中的网页条目执行方式的参数预设中进行配置。默认情况下,此值为 false 。 |
布尔值 |
$session.params.phone_number | (可选)客户用于身份验证的已注册手机号码。 | 字符串 |
$session.params.card_count | (可选)与经过身份验证的用户关联的信用卡数量。 | 整数 |
$session.params.account_count | (可选)与注册的电话号码关联的账号数量。这些账号包括用户本人的账号以及用户拥有受托人身份的账号。 | 整数 |
$session.params.last_four_digit_of_card_number | (可选)您可能要提出异议的卡号的后 4 位数字。如果客户只有一张卡,系统会在身份验证后自动检索此信息。如果客户有多张卡,系统会从客户处收集具体卡号。 | 字符串 |
$session.params.last_four_digit_of_account_number | (可选)可能要提出异议的客户账号的后四位数字。如果客户只有一个账号,系统会在身份验证后自动检索此信息。如果客户有多个账号,系统会从客户处收集具体账号。 | 字符串 |
$flow.max_dispute_month | 指定允许的争议交易日期距离当前日期的最长月数。默认情况下,此值为 -6 ,表示可以针对不早于当前日期 6 个月的交易提出异议。 |
整数 |
$flow.max_attempts | 指定从用户收集动态密码 (OTP) 时允许的重试次数。默认值为 2 。 |
整数 |
flow.max_retry_counter | 指定从用户收集信息时允许的重试次数。默认值为 2 。 |
整数 |
如需为此组件配置输入参数,请展开相应部分查看说明。
- 打开 Dialogflow CX 控制台。
- 选择您的 Google Cloud 项目。
- 选择您的代理。
- 选择构建标签页。
- 点击流部分中的导入的组件。
- 点击页面部分中的“首页”。
- 点击“开始”页面中的 true 路线。
- 在“路线”窗口中,根据需要修改参数预设值。
- 点击保存。
输出参数
输出参数是会话参数,会在退出组件后保持有效状态。这些参数包含组件收集的重要信息。此预构建组件会为以下输出参数提供值:
参数名称 | 说明 | 输出格式 |
---|---|---|
auth_level | 指示调用方的身份验证级别。 | 整数 |
phone_number | 用户的本地手机号码(不含国家/地区代码),用于识别用户。 | 字符串 |
card_count | 与经过身份验证的用户关联的信用卡数量。 | 整数 |
account_count | 与已注册的电话号码关联的账号数量。这些账号包括用户本人的账号以及用户拥有受托人身份的账号。 | 整数 |
last_four_digit_of_card_number | 提出异议的卡号的最后四位数字。 | 字符串 |
last_four_digit_of_account_number | 提出异议的客户账号的后 4 位数字。 | 字符串 |
transfer_reason | 如果流程未成功,此参数会指明流程退出的原因。返回的值如下:agent :最终用户在对话过程中的某个时间点请求了人工客服。denial_of_information :最终用户拒绝分享组件请求的信息。max_no_input :对话达到了无输入事件的最大重试次数。请参阅无输入内置事件。max_no_match :对话达到了无匹配事件的最大重试次数。请参阅无匹配内置事件。webhook_error :发生了网络钩子错误。请参阅 webhook.error 内置事件。webhook_not_found :无法访问某个网络钩子网址。请参阅 webhook.error.not-found 内置事件。 |
字符串 |
基本设置
如需设置此预构建组件,请执行以下操作:
- 导入预构建组件。
- 使用描述外部服务的配置配置提供的灵活的 Webhook,请参阅下文中的 Webhook 设置。
网络钩子设置
如需使用此组件,您需要配置随附的灵活的 Webhook,以从外部服务检索所需信息。
身份验证
如果您之前未配置身份验证所需的外部服务,则需要配置这些服务,以便为此组件启用用户身份验证。如需了解详细说明,请参阅身份验证 Webhook 设置。
获取信用卡详细信息
该组件使用 prebuilt_components_account_services:get_credit_card_details
Webhook 来获取已注册给用户的信用卡的相关信息。
API 请求参数
该组件会将以下参数作为 API 请求的输入提供给 API 请求。
参数名称 | 说明 | 输入格式 |
---|---|---|
$session.params.phone_number | 用户的本地手机号码(不含国家/地区代码),用于识别用户。 | 字符串 |
API 响应参数
系统会从 API 响应中提取以下参数,以供组件使用。
参数名称 | 说明 | 输出格式 |
---|---|---|
credit_card_count | 与注册电话号码关联的信用卡数量。 | 整数 |
last_four_digit_of_credit_card_number | 如果用户只有一张信用卡,则系统会返回卡号的最后四位数字。如果用户有多张卡片,则此参数的值为 null 。 |
字符串 |
电子邮件 | 用于注册账号的电子邮件地址。如果账号未注册电子邮件地址,则此参数的值为 null 。 |
字符串 |
如需为此组件配置“获取信用卡详细信息”Webhook,请展开相应部分查看说明。
- 打开 Dialogflow CX 控制台。
- 选择您的 Google Cloud 项目。
- 选择您的代理。
- 选择管理标签页。
- 点击网络钩子。
- 选择 prebuilt_components_account_services:get_credit_card_details webhook。
- 将“对话式 AI 助理 (Dialogflow CX)”的 Webhook 网址字段中的网址替换为您要集成的服务的端点。在下拉菜单中选择适当的方法。
- 查看并更新请求正文,为您的网络钩子构成正确的请求格式。
- 查看并更新响应配置,以从您的 webhook 响应中提取特定字段。请勿修改参数名称,因为组件需要这些名称才能访问返回的字段值。
- 根据需要查看并更新身份验证设置。
- 点击保存。
验证信用卡
该组件使用 prebuilt_components_disputes:validate_credit_card
Webhook 来验证指定的信用卡是否已注册给用户。
API 请求参数
该组件会将以下参数作为 API 请求的输入提供给 API 请求。
参数名称 | 说明 | 输入格式 |
---|---|---|
$session.params.phone_number | 用户的本地手机号码(不含国家/地区代码),用于识别用户。 | 字符串 |
$session.params.last_four_digit_of_card_number | 用户要求提出异议的卡号的最后四位数字。 | 字符串 |
API 响应参数
系统会从 API 响应中提取以下参数,以供组件使用。
参数名称 | 说明 | 输出格式 |
---|---|---|
card_found | 指示请求的卡片是否存在。 | 布尔值 |
如需为此组件配置“验证信用卡”Webhook,请展开相应部分查看说明。
- 打开 Dialogflow CX 控制台。
- 选择您的 Google Cloud 项目。
- 选择您的代理。
- 选择管理标签页。
- 点击网络钩子。
- 选择 prebuilt_components_disputes:validate_credit_card webhook。
- 将“对话式 AI 助理 (Dialogflow CX)”的 Webhook 网址字段中的网址替换为您要集成的服务的端点。在下拉菜单中选择适当的方法。
- 查看并更新请求正文,为您的网络钩子构成正确的请求格式。
- 查看并更新响应配置,以从您的 webhook 响应中提取特定字段。请勿修改参数名称,因为组件需要这些名称才能访问返回的字段值。
- 根据需要查看并更新身份验证设置。
- 点击保存。
验证账号
该组件使用 prebuilt_components_account_services:validate_account
webhook 来根据用户的注册手机号码和所提供账号的最后四位数字来验证账号是否存在。该 webhook 还会返回账号余额(如果存在)。
API 请求参数
该组件会将以下参数作为 API 请求的输入提供给 API 请求。
参数名称 | 说明 | 输入格式 |
---|---|---|
$session.params.phone_number | 用户的本地手机号码(不含国家/地区代码),用于识别用户。 | 字符串 |
$session.params.last_four_digit_of_account_number | 用户请求提出异议的账号的最后四位数字。 | 字符串 |
API 响应参数
系统会从 API 响应中提取以下参数,以供组件使用。
参数名称 | 说明 | 输出格式 |
---|---|---|
account_found | 指示用户的注册账号是否存在具有所提供后四位的账号。 | 布尔值 |
余额 | 账号的当前余额(如果有)。 | 数字 |
如需为此组件配置“验证账号”Webhook,请展开相应部分查看说明。
- 打开 Dialogflow CX 控制台。
- 选择您的 Google Cloud 项目。
- 选择您的代理。
- 选择管理标签页。
- 点击网络钩子。
- 选择 prebuilt_components_account_services:validate_account webhook。
- 将“对话式 AI 助理 (Dialogflow CX)”的 Webhook 网址字段中的网址替换为您要集成的服务的端点。在下拉菜单中选择适当的方法。
- 查看并更新请求正文,为您的网络钩子构成正确的请求格式。
- 查看并更新响应配置,以从您的 webhook 响应中提取特定字段。请勿修改参数名称,因为组件需要这些名称才能访问返回的字段值。
- 根据需要查看并更新身份验证设置。
- 点击保存。
验证交易
该组件使用 prebuilt_components_disputes:validate_transaction
Webhook 来验证指定事务是否存在。
API 请求参数
该组件会将以下参数作为 API 请求的输入提供给 API 请求。
参数名称 | 说明 | 输入格式 |
---|---|---|
$session.params.phone_number | 用户的本地手机号码(不含国家/地区代码),用于识别用户。 | 字符串 |
$flow.dispute_type | 有争议的交易的类型。有效值由 prebuilt_components_disputes_dispute_type 自定义实体定义。 |
字符串 |
$flow.dispute_date | 有争议的交易的日期,采用 YYYY-MM-DD 格式。 | 字符串 |
$flow.dispute_amount | 有争议的交易的金额。 | 整数 |
$flow.last_four_digits | 您要提出异议的交易所涉及的信用卡或账号的后四位数字。 | 字符串 |
API 响应参数
系统会从 API 响应中提取以下参数,以供组件使用。
参数名称 | 说明 | 输出格式 |
---|---|---|
transaction_found | 指示请求的交易是否存在。 | 布尔值 |
如需为此组件配置“验证交易”Webhook,请展开相应部分查看说明。
- 打开 Dialogflow CX 控制台。
- 选择您的 Google Cloud 项目。
- 选择您的代理。
- 选择管理标签页。
- 点击网络钩子。
- 选择 prebuilt_components_disputes:validate_transaction Webhook。
- 将“对话式 AI 助理 (Dialogflow CX)”的 Webhook 网址字段中的网址替换为您要集成的服务的端点。在下拉菜单中选择适当的方法。
- 查看并更新请求正文,为您的网络钩子构成正确的请求格式。
- 查看并更新响应配置,以从您的 webhook 响应中提取特定字段。请勿修改参数名称,因为组件需要这些名称才能访问返回的字段值。
- 根据需要查看并更新身份验证设置。
- 点击保存。
创建异议支持请求
该组件使用 prebuilt_components_disputes:create_dispute_case
Webhook 为争议创建新支持请求。
API 请求参数
该组件会将以下参数作为 API 请求的输入提供给 API 请求。
参数名称 | 说明 | 输入格式 |
---|---|---|
$session.params.phone_number | 用户的本地手机号码(不含国家/地区代码),用于识别用户。 | 字符串 |
$flow.dispute_type | 异议的类型。有效值由 prebuilt_components_disputes_dispute_type 自定义实体定义。 |
字符串 |
$flow.dispute_date | 有争议的交易的日期,采用 YYYY-MM-DD 格式。 | 字符串 |
$flow.dispute_amount | 有争议的交易的金额。 | 整数 |
$flow.dispute_reason | 提出异议的原因。有效值由 prebuilt_components_disputes_dispute_reason 自定义实体定义。 |
字符串 |
$flow.dispute_fee_type | 争议的费用类型。有效值由 prebuilt_components_disputes_fee_types 自定义实体定义。 |
字符串 |
$flow.last_four_digits | 您要提出异议的交易所涉及的信用卡或账号的后四位数字。 | 字符串 |
API 响应参数
系统会从 API 响应中提取以下参数,以供组件使用。
参数名称 | 说明 | 输出格式 |
---|---|---|
dispute_case_number | 创建的异议的支持请求编号。 | 整数 |
如需为此组件配置“创建异议支持请求”Webhook,请展开相应部分查看相关说明。
- 打开 Dialogflow CX 控制台。
- 选择您的 Google Cloud 项目。
- 选择您的代理。
- 选择管理标签页。
- 点击网络钩子。
- 选择 prebuilt_components_disputes:create_dispute_case webhook。
- 将“对话式 AI 助理 (Dialogflow CX)”的 Webhook 网址字段中的网址替换为您要集成的服务的端点。在下拉菜单中选择适当的方法。
- 查看并更新请求正文,为您的网络钩子构成正确的请求格式。
- 查看并更新响应配置,以从您的 webhook 响应中提取特定字段。请勿修改参数名称,因为组件需要这些名称才能访问返回的字段值。
- 根据需要查看并更新身份验证设置。
- 点击保存。
完成
您的客服人员及其网络钩子现在应该已设置完毕,可以进行测试了。