账号余额预构建组件

账号余额预构建组件会检查客户的身份验证级别,并向经过身份验证的客户提供账号余额信息。如果客户有多个账号,该组件会确认客户想要检索哪个特定账号的余额。此组件使用身份验证预构建组件对用户进行身份验证。

限制

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

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

对话示例

这些示例对话说明了此预构建组件处理的常见场景。它们展示了您使用电话服务调用组件时的行为,这会在对话开始时触发默认欢迎 intent 和第一个代理响应。

一个账号

用户只有一个账号,系统会提供该账号的余额。

用户输入 智能体回答
代理使用身份验证预构建组件对用户进行身份验证。
谢谢,您已成功通过身份验证。
正在获取账号详情,请稍候。

与尾号为 4567 的账号关联的余额为 50.00 美元。

多个账号

如果用户有多个账号,客服人员会询问并确认账号的后四位数字,并提供该账号的账号余额。

用户输入 智能体回答
代理使用身份验证预构建组件对用户进行身份验证。
谢谢,您已成功通过身份验证。
我们正在获取您的账号详细信息,请稍候。

我们发现有 2 个账号与您的号码相关联。

您能否提供您所指账号的后 4 位数字?
2002
我们获取的账号后四位数字是 2002,对吗?
是
您尾号为 2002 的账号余额为 5000 美元。

多个账号(附带上下文)

如果用户有多个账号,系统会保留上一个 intent 中引用的账号,并向用户提供账号余额。

用户输入 智能体回答
我们正在获取您的账号详细信息,请稍等。

我们发现有 3 个账号与您的号码相关联。

您要找的是尾号为 4567 的账号吗?
是
尾号为 4567 的账号余额为 50 元。

命名规则

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

功能 格式 示例
Flow 组件名称 账号余额
组件特定 intent prebuilt_components_[component_name]_[intent_name] prebuilt_components_account_number_collection_four_digit_account_number
网络钩子 prebuilt_components_[component_name]:[webhook_action] prebuilt_components_account_balance:get_account_balance

输入参数

输入参数用于配置组件的特定行为。流程中的一个或多个条件使用这些参数来确定组件的行为。用户必须在组件的起始页面上配置流级作用域参数,如下表所述。用户还可以通过调用流程或在此组件的起始页面上设置会话级范围的参数。

此预构建组件接受以下输入参数:

参数名称 说明 输入格式
$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.account_count (可选)与经过身份验证的用户关联的账号数量。 整数
$session.params.last_four_digit_of_account_number (可选)需要提供余额的客户账号的后四位数字。如果客户只有一个账号,系统会在身份验证后自动检索此信息。如果客户有多个账号,则需要向客户收集具体的账号。 字符串
$flow.max_retry_acc_number 指定在收集用户账号的后四位数字时允许的重试次数。默认值为 3。 整数

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

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

输出参数

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

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

参数名称 说明 输出格式
auth_level 指示调用方的身份验证级别。 整数
phone_number 来电者的本地手机号码(不含国家/地区代码),用于识别用户。 字符串
account_count 与已注册电话号码关联的账号数量。这些账户包括用户自己的账户以及用户拥有授权委托书的账户。 整数
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 设置,请参阅身份验证 webhook 设置。

验证账号

该组件使用 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. 点击保存。

完成

预构建组件及其网络钩子现已设置完毕,可以进行测试。