通过开户预构建组件,新用户和现有用户可以开设新账户或查看现有申请的状态。此组件使用出生日期收集、姓名收集和电话号码收集预构建组件来收集用户信息,以注册新账号。
账号类型
默认情况下,此组件支持以下账号类型:
- 储蓄账户
- 支票账户,也称为活期账户
- Demat 账户
- 薪资账户
您可以通过修改 prebuilt_components_open_account_account_type 自定义实体来添加或移除支持的账号类型。
限制
除了常见的预构建组件限制之外,此预构建组件还具有以下限制:
- 此组件不会加密任何数据。
对话示例
以下示例对话展示了此预构建组件处理的常见场景。示例对话演示了通过电话呼叫组件时的行为,这会在对话开始时触发默认欢迎 intent 和第一个代理响应。
新建用户
代理会收集用户的手机号码,并识别出该用户尚未注册账号。然后,代理会收集详细信息,包括用户的全名和出生日期,并生成一份申请,发送到用户提供的电话号码。
| 用户输入 | 智能体回答 |
|---|---|
| 请向我们提供电话号码,以便我们进行验证。 | |
| 代理使用电话号码收集预构建组件收集用户的电话号码 | |
| 太好了,我们已收集完电话号码。 很高兴您想在我们这里开设账号。 |
|
| 智能体使用姓名收集预构建组件收集用户的全名 | |
| 谢谢!张三 | |
| 代理使用出生日期收集预构建组件收集用户的电话号码 | |
| 太棒了,我们已收集到您的出生日期。 您想开设哪种类型的账户?您可以说“储蓄”“支票”“工资”或“demat”。 |
|
| 当前账号 | |
| 确认一下,您想开立一个新的支票账户,对吗? | |
| 是 | |
| 感谢您提供信息。我们正在生成您的申请,请稍候。 您的应用 ID 为 81037。请点击发送到您注册手机号码的链接,完成申请。 |
现有用户
代理识别出用户之前已通过身份验证,并确认用户想要开设哪种类型的账户。代理会为用户创建申请,并向用户的注册手机号码发送说明。
| 用户输入 | 智能体回答 |
|---|---|
| 我们很高兴您想在我们这里开设新账号。 您想开设哪种类型的账号?您可以说“储蓄”“支票”“工资”或“demat”。 |
|
| 储蓄账户 | |
| 跟您确认一下,您是想开一个新的储蓄账户,对吗? | |
| 是的,没错 | |
| 感谢您提供信息。我们正在生成您的申请,请稍候。 您的应用 ID 为 21430。请点击发送到您注册手机号码的链接,完成申请。 |
现有应用
智能体识别出用户之前曾打开过一个应用,并向用户显示当前状态。用户拒绝为新账号打开其他应用。
| 用户输入 | 智能体回答 |
|---|---|
| 请向我们提供电话号码,以便我们进行验证。 | |
| 代理使用电话号码收集预构建组件收集用户的电话号码 | |
| 太好了,我们已收集完电话号码。 您提交的储蓄账户开户申请(ID 为 12234)正在处理中。您是否要开设其他账号? |
|
| 否 | |
| 好的,感谢您的来电。 |
命名规则
此预构建组件使用以下命名惯例:
| 功能 | 格式 | 示例 |
|---|---|---|
| Flow | [Component Name] | 开立账户 |
| 组件特定 intent | prebuilt_components_[component_name]_[intent_name] | prebuilt_components_open_account_account_type |
| 实体类型 | prebuilt_components_[component_name]_[entity_type] | prebuilt_components_open_account_account_type |
| 网络钩子 | prebuilt_components_[component_name]:[webhook_action] | prebuilt_components_open_account:generate_application |
输入参数
输入参数是用于配置组件某些行为的参数。这些参数将由流程中的一个或多个条件使用,以确定组件的行为方式。必须在组件的起始页上设置流级范围参数,如下所述。会话级范围的参数可由调用流设置,也可在此组件的起始页面上设置。
此预构建组件接受以下输入参数:
| 参数名称 | 说明 | 输入格式 |
|---|---|---|
| $session.params.auth_level | (可选)指明调用方的身份验证级别。 | 整数 |
| $session.params.phone_number | (可选)用于身份验证的客户注册手机号码。 | 字符串 |
| $session.params.min_age_limit | 指定用户开设新账号时必须达到的最低年龄。默认值为 18。 |
整数 |
| $session.params.max_age_limit | 指定开设新账号的用户年龄上限。默认值为 100。 |
整数 |
| $flow.max_dob_retry_count | 指定在收集有效出生日期时允许的重试次数。默认值为 2。 |
整数 |
| $flow.max_retry_account_type | 指定在收集用户想要开设的账户类型时允许的重试次数。默认值为 2。 |
整数 |
| $flow.max_retry_another_account | 指定当用户想要更改所选账号类型时允许的重试次数。默认值为 2。 |
整数 |
如需为此组件配置输入参数,请展开以查看相关说明。
- 打开 Dialogflow CX 控制台。
- 选择您的 Google Cloud 项目。
- 选择您的代理。
- 选择构建标签页。
- 在流部分中点击导入的组件。
- 点击页面部分中的“Start Page”。
- 点击“Start Page”中的 true 路由。
- 在“路线”窗口中,根据需要修改参数预设值。
- 点击保存。
输出参数
输出参数是在退出组件后仍保持有效状态的会话参数。这些参数包含组件收集的重要信息。此预构建组件会为以下输出参数提供值:
| 参数名称 | 说明 | 输出格式 |
|---|---|---|
| phone_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 内置事件。 |
字符串 |
基本设置
如需设置此预构建组件,请执行以下操作:
- 导入预构建组件。
- 使用描述外部服务的配置来配置提供的灵活 webhook,请参阅下面的 Webhook 设置。
Webhook 设置
如需使用此组件,您需要配置随附的灵活网络钩子,以便从外部服务中检索所需信息。
电话验证
该组件使用 prebuilt_components_open_account:telephone_verification webhook 获取与用户电话号码关联的已注册账号和之前申请的相关信息。
API 请求参数
以下参数由组件提供,作为 API 请求的输入。
| 参数名称 | 说明 | 输入格式 |
|---|---|---|
| $session.params.phone_number | 用户的本地手机号码(不含国家/地区代码),用于识别用户。 | 字符串 |
API 响应参数
系统会从 API 响应中提取以下参数,供组件使用。
| 参数名称 | 说明 | 输出格式 |
|---|---|---|
| account_count | 与已注册电话号码关联的账号数量。这些账户包括用户自己的账户以及用户拥有授权委托书的账户。如果没有与给定电话号码关联的账号,则此值为 null。 |
整数 |
| user_first_name | 注册用户的名字。如果电话号码未与注册账号关联,则此值为 null。 |
字符串 |
| user_last_name | 注册用户的姓氏。如果电话号码未与注册账号关联,则此值为 null。 |
字符串 |
| user_dob | 注册用户的出生日期,格式为“YYYY-MM-DD”。如果电话号码未与注册账号关联,则此值为 null。 |
字符串 |
| application_count | 与注册电话号码关联的应用数量。如果没有与给定电话号码关联的应用,则此值为 null。 |
整数 |
| application_id | 包含与给定电话号码关联的每个应用的 ID 的列表,例如 ["00000", "11111", "22222"]。此列表中的每个元素都表示与 account_type 和 application_status 中具有相同索引的元素相同的应用。如果没有与给定电话号码关联的应用,则此值为 null。 |
列表(字符串) |
| account_type | 包含与给定电话号码(例如 ["savings", "checking", "demat"])关联的每个应用的账号类型的列表。此列表中的每个元素都表示与 application_id 和 application_status 中具有相同索引的元素相同的应用。如果没有与给定电话号码关联的应用,则此值为 null。 |
列表(字符串) |
| application_status | 包含与给定电话号码(例如 ["in progress", "on hold", "completed"])关联的每个申请的状态的列表。此列表中的每个元素都表示与 application_id 和 account_type 中具有相同索引的元素相同的应用。如果没有与给定电话号码关联的应用,则此值为 null。 |
列表(字符串) |
如需为此组件配置电话验证 webhook,请展开查看说明。
- 打开 Dialogflow CX 控制台。
- 选择您的 Google Cloud 项目。
- 选择您的代理。
- 选择管理标签页。
- 点击 Webhooks。
- 选择 prebuilt_components_open_account:telephone_verification webhook。
- 将 Dialogflow CX 网络钩子网址字段中的网址替换为您要集成的服务的端点。在下拉菜单中选择适当的方法。
- 查看并更新请求正文,为您的 webhook 形成正确的请求格式。
- 查看并更新响应配置,以从 webhook 的响应中提取特定字段。请勿修改参数名称,因为组件需要这些名称来访问返回的字段值。
- 根据需要查看并更新身份验证设置。
- 点击保存。
生成应用
组件使用 prebuilt_components_open_account:generate_application webhook 为新账号生成应用。
API 请求参数
以下参数由组件提供,作为 API 请求的输入。
| 参数名称 | 说明 | 输入格式 |
|---|---|---|
| $session.params.phone_number | 用户的本地手机号码(不含国家/地区代码),用于识别用户。 | 字符串 |
| user_first_name | 用户的名字。 | 字符串 |
| user_last_name | 用户的姓氏。 | 字符串 |
| user_dob | 用户的出生日期,格式为“YYYY-MM-DD”。 | 字符串 |
API 响应参数
系统会从 API 响应中提取以下参数,供组件使用。
| 参数名称 | 说明 | 输出格式 |
|---|---|---|
| application_id | 为新账号申请生成的应用 ID。 | 字符串 |
如需为此组件配置生成应用 webhook,请展开以查看说明。
- 打开 Dialogflow CX 控制台。
- 选择您的 Google Cloud 项目。
- 选择您的代理。
- 选择管理标签页。
- 点击 Webhooks。
- 选择 prebuilt_components_open_account:generate_application webhook。
- 将 Dialogflow CX 网络钩子网址字段中的网址替换为您要集成的服务的端点。在下拉菜单中选择适当的方法。
- 查看并更新请求正文,为您的 webhook 形成正确的请求格式。
- 查看并更新响应配置,以从 webhook 的响应中提取特定字段。请勿修改参数名称,因为组件需要这些名称来访问返回的字段值。
- 根据需要查看并更新身份验证设置。
- 点击保存。
完成
您的代理及其 webhook 现在应该已设置完毕,可以进行测试了。