异议预构建组件

争议预构建组件可对用户进行身份验证,并允许用户对扣款、交易和费用提出争议或异议。此组件使用自定义版本的身份验证预构建组件来对账号持有人和持卡人进行身份验证。该组件还使用出生日期预构建组件的自定义版本来收集有争议交易的日期。

限制

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

  • 此组件不会加密任何数据。

对话示例

以下示例对话展示了此预构建组件处理的常见场景。这些对话框显示了您使用电话功能调用组件时的行为,这会在对话开始时触发默认欢迎 intent 和第一个代理回答。

未经身份验证的用户提出交易争议

  1. 客服人员发现用户之前未经过身份验证,并收集信息以验证用户是否为注册账号持有人。
  2. 智能体会收集有关争议的信息,包括账号、争议模式、日期和金额,并为争议创建新案例。
用户输入 智能体回答
代理使用身份验证预构建组件对用户进行身份验证。
谢谢,您已成功通过身份验证。
请注意,您可以在网上银行门户中提出索赔或对扣款提出异议。您是否要继续此对话,以提交索赔或争议?
是,提出异议
指明您的异议是否与信用卡账单或交易有关。
与我的交易有关
请稍等,系统正在提取您的账号详细信息。

系统发现有 2 个账号与您的号码相关联。请提供您所指账号的后 4 位数字。
1001
谢谢,收集到的后 4 位数字是 1001。对吗?
是
首先,交易日期是哪一天?
智能体使用出生日期预构建组件收集交易日期。
您能否确认转账金额?例如,如果您想查找金额超过 100.30 美元的交易,请说“100”。
15 美元
您输入的 2023-05-01 的争议金额为 15 美元。您是否要对账号提出异议?
是
已针对您的争议创建新的支持请求。您的支持请求编号为 448639,我们已将该编号发送到您的注册邮箱。在核实所提供的信息后,系统会将款项退还到您尾号为 1001 的账号。

已通过身份验证且有信用卡争议的用户

  1. 代理识别出用户已通过身份验证,并检索与用户注册的卡相关的信息。
  2. 客服人员询问用户是否要永久锁定卡。
  3. 代理生成永久锁定卡的请求。
  4. 客服人员询问用户是否要重新补发卡。
  5. 如果用户同意,客服人员会为该卡创建重发请求。
用户输入 智能体回答
我们发现有 2 张信用卡与您的号码关联。您要找的是尾号为 4321 的卡号吗?
是
如果您的争议与信用卡账单有关,请说“信用卡账单”。
信用卡结算
您是否想就信用卡账单上的超额费用或支出提出异议?
我被多收了费用
首先,您能否确认潜在问题发生在哪个月份?
04
您能确认一下您要申请的金额吗?例如,如果您想查找金额超过 100.30 美元的理赔,请说“100”。
4567
谢谢!您能否确认与此潜在问题相关的费用说明?您可以选择年费、交易费用、滞纳金或任何其他费用。
这是一笔年费
您已输入 2023-04-01 的争议金额 4567 美元。您是否要对信用卡交易提出异议?
是
我们已针对您的争议创建了新的支持请求。您的支持请求编号为 111236,已发送到您注册的手机号码。您的问题将在接下来的 3 个工作日内得到解决。

命名规则

下表列出了此预构建组件的命名惯例:

功能 格式 示例
Flow [Component Name] 争议
组件特定 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 (可选)可能提出争议的卡号的后四位。如果客户只有一张卡,系统会在身份验证后自动检索此信息。如果客户有多张卡,则需要向客户收集具体的卡号。 字符串
$session.params.last_four_digit_of_account_number (可选)可能提出争议的客户账号的后四位数字。如果客户只有一个账号,系统会在身份验证后自动检索此信息。如果客户有多个账号,则需要向客户收集具体的账号。 字符串
$flow.max_dispute_month 指定有争议交易日期在当前日期之前允许的最大月数。默认情况下,此值为 -6,表示可以针对当前日期之前不超过 6 个月的交易提出争议。 整数
$flow.max_attempts 指定从用户处收集动态密码 (OTP) 时允许的重试次数。默认值为 2。 整数
$flow.max_retry_counter 指定从用户收集信息时允许的重试次数。默认值为 2。 整数

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

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

输出参数

输出参数是在退出组件后仍保持活跃状态的会话参数。这些参数包含组件收集的重要信息。

此预构建组件会为以下输出参数提供值:

参数名称 说明 输出格式
auth_level 指示调用方的身份验证级别。 整数
phone_number 用户的本地手机号码(不含国家/地区代码),用于识别用户。 字符串
card_count 与经过身份验证的用户关联的信用卡数量。 整数
account_count 与已注册电话号码关联的账号数量。这些账户包括用户自己的账户以及用户拥有授权委托书的账户。 整数
last_four_digit_of_card_number 提出争议的卡号的后四位数字。 字符串
last_four_digit_of_account_number 提出争议的客户账号的后四位数字。 字符串
transfer_reason 此参数表示流程未成功时退出的原因。返回的值为以下之一:

agent:用户在对话期间的某个时间点请求了人工客服。

denial_of_information:用户拒绝分享组件请求的信息。

max_no_input:对话达到了无输入事件的最大重试次数。请参阅无输入内置事件。

max_no_match:对话达到了不匹配事件的重试次数上限。请参阅不匹配内置事件。

webhook_error:发生了 webhook 错误。请参阅 webhook.error 内置事件。

webhook_not_found:无法访问网络钩子网址。请参阅 webhook.error.not-found 内置事件。
字符串

基本设置

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

  1. 导入预构建组件。
  2. 配置描述外部服务的灵活 webhook,请参阅 Webhook 设置。

Webhook 设置

如需使用此组件,请配置包含的灵活网络钩子,以便从外部服务检索必要的信息。

身份验证

如果您之前未配置身份验证所需的外部服务,请配置这些服务,以便为此组件启用用户身份验证。如需了解详情,请参阅身份验证 webhook 设置。

获取信用卡详细信息

该组件使用 prebuilt_components_account_services:get_credit_card_details webhook 检索有关向用户注册的信用卡的信息。

API 请求参数

该组件提供以下参数作为 API 请求的输入:

参数名称 说明 输入格式
$session.params.phone_number 用户的本地手机号码(不含国家/地区代码),用于识别用户。 字符串

API 响应参数

该组件会从 API 响应中检索以下参数:

参数名称 说明 输出格式
credit_card_count 与注册电话号码关联的信用卡数量。 整数
last_four_digit_of_credit_card_number 如果用户只有一张信用卡,则会返回卡号的后四位。如果用户有多张卡,则此参数的值为 null。 字符串
电子邮件 与账号关联的邮箱。如果账号未注册电子邮件地址,则此参数的值为 null。 字符串

如需为此组件配置“获取信用卡详细信息”Webhook,请展开以查看说明。

  1. 打开 Dialogflow CX 控制台。
  2. 选择您的 Google Cloud 项目。
  3. 选择您的代理。
  4. 选择管理标签页。
  5. 点击 Webhooks。
  6. 选择 prebuilt_components_account_services:get_credit_card_details webhook。
  7. 将 Dialogflow CX 网络钩子网址字段中的网址替换为您要集成的服务的端点。在下拉菜单中选择适当的方法。
  8. 查看并更新请求正文,为您的网络钩子设置正确的请求格式。
  9. 查看并更新响应配置,以从 webhook 的响应中提取特定字段。请勿修改参数名称,因为组件需要这些名称来访问返回的字段值。
  10. 根据需要查看并更新身份验证设置。
  11. 点击保存。

验证信用卡

该组件使用 prebuilt_components_disputes:validate_credit_card webhook 来验证指定的信用卡是否已注册到用户。

API 请求参数

该组件提供以下参数作为 API 请求的输入:

参数名称 说明 输入格式
$session.params.phone_number 用户的本地手机号码(不含国家/地区代码),用于识别用户。 字符串
$session.params.last_four_digit_of_card_number 用户请求提出争议的卡号的后四位数字。 字符串

API 响应参数

该组件会从 API 响应中检索以下参数:

参数名称 说明 输出格式
card_found 指明所请求的卡是否存在。 布尔值

如需为此组件配置“验证信用卡”Webhook,请展开查看说明。

  1. 打开 Dialogflow CX 控制台。
  2. 选择您的 Google Cloud 项目。
  3. 选择您的代理。
  4. 选择管理标签页。
  5. 点击 Webhooks。
  6. 选择 prebuilt_components_disputes:validate_credit_card webhook。
  7. 将 Dialogflow CX 网络钩子网址字段中的网址替换为您要集成的服务的端点。在下拉菜单中选择适当的方法。
  8. 查看并更新请求正文,为您的网络钩子设置正确的请求格式。
  9. 查看并更新响应配置,以从 webhook 的响应中提取特定字段。请勿修改参数名称,因为组件需要这些名称来访问返回的字段值。
  10. 根据需要查看并更新身份验证设置。
  11. 点击保存。

验证账号

该组件使用 prebuilt_components_account_services:validate_account webhook,根据用户注册的手机号码和所提供账号的后四位数字来验证账号是否存在。如果账号存在,Webhook 还会返回账号余额。

API 请求参数

该组件提供以下参数作为 API 请求的输入:

参数名称 说明 输入格式
$session.params.phone_number 用户的本地手机号码(不含国家/地区代码),用于识别用户。 字符串
$session.params.last_four_digit_of_account_number 用户请求提出争议的账号的后四位数字。 字符串

API 响应参数

该组件会从 API 响应中检索以下参数:

参数名称 说明 输出格式
account_found 指明是否存在与用户注册账号提供的后四位数字匹配的账号。 布尔值
余额 账号的当前余额(如果存在)。 数值

如需为此组件配置“验证账号”网络钩子,请展开查看相关说明。

  1. 打开 Dialogflow CX 控制台。
  2. 选择您的 Google Cloud 项目。
  3. 选择您的代理。
  4. 选择管理标签页。
  5. 点击 Webhooks。
  6. 选择 prebuilt_components_account_services:validate_account webhook。
  7. 将 Dialogflow CX 网络钩子网址字段中的网址替换为您要集成的服务的端点。在下拉菜单中选择适当的方法。
  8. 查看并更新请求正文,为您的网络钩子设置正确的请求格式。
  9. 查看并更新响应配置,以从 webhook 的响应中提取特定字段。请勿修改参数名称,因为组件需要这些名称来访问返回的字段值。
  10. 根据需要查看并更新身份验证设置。
  11. 点击保存。

验证交易

该组件使用 prebuilt_components_disputes:validate_transaction webhook 检查指定的交易是否存在。

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,请展开查看相关说明。

  1. 打开 Dialogflow CX 控制台。
  2. 选择您的 Google Cloud 项目。
  3. 选择您的代理。
  4. 选择管理标签页。
  5. 点击 Webhooks。
  6. 选择 prebuilt_components_disputes:validate_transaction webhook。
  7. 将 Dialogflow CX 网络钩子网址字段中的网址替换为您要集成的服务的端点。在下拉菜单中选择适当的方法。
  8. 查看并更新请求正文,为您的网络钩子设置正确的请求格式。
  9. 查看并更新响应配置,以从 webhook 的响应中提取特定字段。请勿修改参数名称,因为组件需要这些名称来访问返回的字段值。
  10. 根据需要查看并更新身份验证设置。
  11. 点击保存。

创建争议案例

prebuilt_components_disputes:create_dispute_case webhook 会创建一个新的争议案例。

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,请展开查看相关说明。

  1. 打开 Dialogflow CX 控制台。
  2. 选择您的 Google Cloud 项目。
  3. 选择您的代理。
  4. 选择管理标签页。
  5. 点击 Webhooks。
  6. 选择 prebuilt_components_disputes:create_dispute_case webhook。
  7. 将 Dialogflow CX 网络钩子网址字段中的网址替换为您要集成的服务的端点。在下拉菜单中选择适当的方法。
  8. 查看并更新请求正文,为您的网络钩子设置正确的请求格式。
  9. 查看并更新响应配置,以从 webhook 的响应中提取特定字段。请勿修改参数名称,因为组件需要这些名称来访问返回的字段值。
  10. 根据需要查看并更新身份验证设置。
  11. 点击保存。

完成

争议预构建组件及其 webhook 现已设置完毕,可以进行测试。