信用卡对账单预构建组件会检查客户的身份验证级别,然后将指定时间段的信用卡对账单发送给经过身份验证的客户。如果客户有多张信用卡,该组件会确认客户想要检索哪张信用卡的对账单。此组件使用自定义版本的身份验证预构建组件来验证持卡人身份,并使用自定义版本的出生日期收集组件来收集对账单周期的开始日期和结束日期。
限制
除了常见的预构建组件限制之外,此预构建组件还存在以下限制:
- 此组件不会加密任何数据。
对话示例
以下示例对话展示了此预构建组件处理的常见场景。示例对话展示了通过电话调用组件时的行为,这会在对话开始时触发默认欢迎意图和第一个代理响应。
单张信用卡
最终用户只有一张信用卡。代理会收集对账单的开始日期和结束日期,询问用户是否要加密对账单,然后将信用卡对账单发送给用户。
| 用户输入 | 智能体回答 |
|---|---|
| 代理使用身份验证预构建组件对用户进行身份验证 | |
| 谢谢,您已成功通过身份验证。 | |
| 请稍等,我们正在提取您的卡详细信息。 我们发现您的号码关联的卡号尾号为 1002。 |
|
| 请提供信用卡对账单的开始日期,先是月份,然后是日期,最后是年份。请注意,信用卡对账单仅提供最近 180 天的账单。 | |
| 代理使用出生日期预构建组件收集对账单开始日期 | |
| 太棒了,我们已收集到您的信用卡对账单开始日期。 请提供信用卡对账单结束日期,先输入月份,然后输入日期和年份。请注意,信用卡对账单仅提供最近 180 天的。 |
|
| 代理使用出生日期预构建组件收集对账单结束日期 | |
| 太棒了,我们已收集到您的信用卡账单结算日期。 谢谢。请确认您是否要查找 2023 年 6 月 1 日至 2023 年 6 月 30 日之间的对账单。 |
|
| 是 | |
| 我们正在提取您的对账单详细信息,请稍候。 我们找到了 2023 年 6 月 1 日至 2023 年 6 月 30 日之间的交易。您希望通过电子邮件、短信还是 WhatsApp 接收? |
|
| 发送到我的电子邮件地址 | |
| 您是否希望我们在与您分享文档之前对其进行加密? | |
| 不用了 | |
| 您会在 15 分钟内通过注册电子邮件地址收到对账单。 |
多张信用卡
最终用户有多张信用卡;代理确认用户要申请哪张信用卡的对账单。代理会收集对账单的开始日期和结束日期,询问用户是否要加密对账单,然后将信用卡对账单发送给用户。
| 用户输入 | 智能体回答 |
|---|---|
| 代理使用身份验证预构建组件对用户进行身份验证 | |
| 谢谢,您已成功通过验证。 | |
| 我们正在提取您的卡详细信息,请稍等。 我们发现,您的号码关联了 2 张卡。您可以告诉我们您所指的卡号的后 4 位数字吗? |
|
| 1122 | |
| 我们收到的卡号的后四位是 1122,对吗? | |
| 是 | |
| 请提供信用卡对账单的开始日期,先提供月份,然后是日期,最后是年份。请注意,信用卡对账单仅提供最近 180 天的账单。 | |
| 代理使用出生日期预构建组件收集对账单开始日期 | |
| 太棒了,我们已收集到您的信用卡对账单开始日期。 请提供信用卡对账单结束日期,先输入月份,然后输入日期和年份。请注意,信用卡对账单仅提供最近 180 天的账单。 |
|
| 代理使用出生日期预构建组件收集对账单结束日期 | |
| 太棒了,我们已收集到您的信用卡账单结算日期。 谢谢。请确认您是否要查找 2023 年 7 月 13 日至 2023 年 7 月 14 日之间的对账单。 |
|
| 是 | |
| 我们正在提取您的对账单详细信息,请稍候。 我们找到了 2023 年 7 月 13 日至 2023 年 7 月 14 日之间的交易。您希望通过电子邮件、短信还是 WhatsApp 接收? |
|
| 短信 | |
| 您是否希望我们在与您分享文档之前对其进行加密? | |
| 是 | |
| 密码详细信息将通过您注册的手机号码发送给您。 您将在 15 分钟内通过注册的手机号码收到对账单。 |
命名规则
此预构建组件使用以下命名惯例:
| 功能 | 格式 | 示例 |
|---|---|---|
| Flow | [组件名称] | 信用卡对账单 |
| 实体类型 | prebuilt_components_[component_name]_[entity_type] | prebuilt_components_statement_channel_all |
| 网络钩子 | prebuilt_components_[component_name]:[webhook_action] | prebuilt_components_credit_card_statement:request_statement |
输入参数
输入参数是用于配置组件某些行为的参数。流程中的一个或多个条件将使用这些参数来确定组件应如何运行。必须在组件的起始页上设置流程范围的参数,如下所述。会话范围的参数可以通过调用流程设置,也可以在此组件的起始页面上设置。
此预构建组件接受以下输入参数:
| 参数名称 | 说明 | 输入格式 |
|---|---|---|
| $session.params.auth_level | (可选)指明调用者的身份验证级别。 | 整数 |
| $session.params.auth_level_req | 指明用户在访问信用卡对账单之前需要达到的身份验证级别。此值是在 check auth level 页面的网页入口 fulfillment 的参数预设中配置的。默认情况下,此值为 1。 |
整数 |
| $session.params.account_auth_enabled | 指示是否应按照身份验证级别中的说明对用户进行账号持有者身份验证。此值是在 check auth level 页面的网页入口 fulfillment 的参数预设中配置的。默认情况下,此值为 false。 |
布尔值 |
| $session.params.card_auth_enabled | 指明是否应按照身份验证级别中的说明对用户进行持卡人身份验证。此值是在 check auth level 页面的网页入口 fulfillment 的参数预设中配置的。默认情况下,此值为 true。 |
布尔值 |
| $session.params.phone_number | (可选)客户用于身份验证的注册手机号码。 | 字符串 |
| $session.params.credit_card_count | (可选)与经过身份验证的用户关联的信用卡数量。 | 整数 |
| $session.params.last_four_digit_of_card_number | (可选)需要提供对账单的客户卡号的后四位数字。如果客户只有一张卡,系统会在身份验证后自动检索此信息。如果客户有多张卡,则会向客户收集特定卡号。 | 字符串 |
| $session.params.credit_card_statement_max_days | 指定对账单开始日期允许的最长天数(相对于当前日期)。默认情况下,此值为 -180,表示对账单开始日期的限制为不得早于当前日期前 180 天。此参数是在起始页面的 true 路由中配置的。 |
整数 |
| $flow.max_retry_count | 指定在提示最终用户提供有效的对账单结束日期时允许的重试次数。默认值为 3。 |
整数 |
如需配置此组件的输入参数,请展开即可查看相关说明。
- 打开 Dialogflow CX 控制台。
- 选择您的 Google Cloud 项目。
- 选择您的代理。
- 选择构建标签页。
- 点击流部分中导入的组件。
- 点击页面部分中的“起始页”。
- 点击起始页中的 true 路线。
- 在“路线”窗口中,根据需要修改参数预设值。
- 点击保存。
输出参数
输出参数是会话参数,在退出组件后仍会保持有效。这些参数包含组件收集的重要信息。此预构建组件可为以下输出参数提供值:
| 参数名称 | 说明 | 输出格式 |
|---|---|---|
| auth_level | 指示调用者的身份验证级别。 | 整数 |
| phone_number | 用户的本地手机号码(不含国家/地区代码),用于标识用户。 | 字符串 |
| credit_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 内置事件。 |
字符串 |
基本设置
如需设置此预建组件,请执行以下操作:
- 导入预构建组件。
- 配置所提供的灵活的 Webhook,并提供描述外部服务的配置,请参阅下文中的“Webhook 设置”。
网络钩子设置
如需使用此组件,您需要配置随附的灵活的 Webhook,以便从外部服务检索所需的信息。
身份验证
如果您之前未配置身份验证所需的外部服务,则需要配置这些服务,以便为相应组件启用用户身份验证。如需了解详细说明,请参阅身份验证 Webhook 设置。
获取信用卡详细信息
该组件使用 prebuilt_components_credit_card_statement:credit_card_details webhook 来检索已注册电话号码的信用卡详细信息。
API 请求参数
以下参数由组件提供,作为 API 请求的输入。
| 参数名称 | 说明 | 输入格式 |
|---|---|---|
| $session.params.phone_number | 用户的本地手机号码(不含国家/地区代码),用于标识用户。 | 字符串 |
API 响应参数
以下参数会从 API 响应中提取,供组件使用。
| 参数名称 | 说明 | 输出格式 |
|---|---|---|
| credit_card_count | 与注册电话号码相关联的信用卡数量。 | 整数 |
| credit_card | 客户信用卡号的后四位数字。如果客户有多张卡,则此值为 null。 |
字符串 |
| 电子邮件 | 用户的注册电子邮件地址。如果电话号码未注册任何电子邮件地址,则此值为 null。 |
字符串 |
如需为此组件配置“获取信用卡详细信息”Webhook,请展开即可查看相关说明。
- 打开 Dialogflow CX 控制台。
- 选择您的 Google Cloud 项目。
- 选择您的代理。
- 选择管理标签页。
- 点击网络钩子。
- 选择 prebuilt_components_credit_card_statement:credit_card_details webhook。
- 将 Dialogflow CX 网络钩子网址字段中的网址替换为您要集成的服务的端点。在下拉菜单中选择适当的方法。
- 检查并更新请求正文,以形成适合您网络钩子的正确请求格式。
- 查看并更新响应配置,以从 Webhook 的响应中提取特定字段。请勿修改参数名称,因为组件需要这些名称才能访问返回的字段值。
- 根据需要查看并更新身份验证设置。
- 点击保存。
验证卡
该组件使用 prebuilt_components_credit_card_statement:validate_date webhook 来验证注册电话号码是否已关联指定的信用卡。
API 请求参数
以下参数由组件提供,作为 API 请求的输入。
| 参数名称 | 说明 | 输入格式 |
|---|---|---|
| $session.params.phone_number | 用户的本地手机号码(不含国家/地区代码),用于标识用户。 | 字符串 |
| $session.params.last_four_digit_of_card_number | 用户提供的信用卡号的最后四位数字。 | 字符串 |
API 响应参数
以下参数会从 API 响应中提取,供组件使用。
| 参数名称 | 说明 | 输出格式 |
|---|---|---|
| valid_card | 指示是否已为注册电话号码找到指定卡。 | 布尔值 |
如需为此组件配置“验证卡”网络钩子,请展开即可查看相关说明。
- 打开 Dialogflow CX 控制台。
- 选择您的 Google Cloud 项目。
- 选择您的代理。
- 选择管理标签页。
- 点击网络钩子。
- 选择 prebuilt_components_credit_card_statement:validate_card webhook。
- 将 Dialogflow CX 网络钩子网址字段中的网址替换为您要集成的服务的端点。在下拉菜单中选择适当的方法。
- 检查并更新请求正文,以形成适合您网络钩子的正确请求格式。
- 查看并更新响应配置,以从 Webhook 的响应中提取特定字段。请勿修改参数名称,因为组件需要这些名称才能访问返回的字段值。
- 根据需要查看并更新身份验证设置。
- 点击保存。
获取交易
该组件使用 prebuilt_components_credit_card_statement:card_transaction_details Webhook 来检索银行卡的交易记录,前提是用户提供已注册的手机号码、卡号的最后四位数字和账单周期。
API 请求参数
以下参数由组件提供,作为 API 请求的输入。
| 参数名称 | 说明 | 输入格式 |
|---|---|---|
| $session.params.phone_number | 用户的本地手机号码(不含国家/地区代码),用于标识用户。 | 字符串 |
| $session.params.last_four_digit_of_card_number | 用户选择并确认要接收信用卡账单信息的卡号的后四位数字。 | 字符串 |
| $flow.statement_start_date | 所请求的对账单开始日期,采用“YYYY-MM-DD”格式。 | 字符串 |
| $flow.statement_end_date | (可选)所请求的对账单开始日期,采用“YYYY-MM-DD”格式。如果用户未提供值,或者调用方拒绝提供结束日期,则该值默认为当前日期。 | 字符串 |
API 响应参数
以下参数会从 API 响应中提取,供组件使用。
| 参数名称 | 说明 | 输出格式 |
|---|---|---|
| transactions_count | 指定信用卡在给定对账单周期内的交易次数。 | 整数 |
如需为此组件配置“获取交易”Webhook,请展开即可查看相关说明。
- 打开 Dialogflow CX 控制台。
- 选择您的 Google Cloud 项目。
- 选择您的代理。
- 选择管理标签页。
- 点击网络钩子。
- 选择 prebuilt_components_credit_card_statement:card_transaction_details webhook。
- 将 Dialogflow CX 网络钩子网址字段中的网址替换为您要集成的服务的端点。在下拉菜单中选择适当的方法。
- 检查并更新请求正文,以形成适合您网络钩子的正确请求格式。
- 查看并更新响应配置,以从 Webhook 的响应中提取特定字段。请勿修改参数名称,因为组件需要这些名称才能访问返回的字段值。
- 根据需要查看并更新身份验证设置。
- 点击保存。
申请对账单
该组件使用 prebuilt_components_credit_card_statement:request_statement Webhook 根据用户注册的手机号码、信用卡号的最后四位数字和账单周期,向所选渠道发送信用卡账单。
API 请求参数
以下参数由组件提供,作为 API 请求的输入。
| 参数名称 | 说明 | 输入格式 |
|---|---|---|
| $session.params.phone_number | 用户的本地手机号码(不含国家/地区代码),用于标识用户。 | 字符串 |
| $session.params.last_four_digit_of_card_number | 用户选择并确认要接收信用卡账单信息的卡号的后四位数字。 | 字符串 |
| $flow.statement_start_date | 所请求的对账单开始日期,采用“YYYY-MM-DD”格式。 | 字符串 |
| $flow.statement_end_date | (可选)所请求的对账单开始日期,采用“YYYY-MM-DD”格式。如果用户未提供值,或者调用方拒绝提供结束日期,则该值默认为当前日期。 | 字符串 |
| $flow.channel_medium | 用户选择接收消息的渠道。有效值由 prebuilt_components_statement_channel_phone 和 prebuilt_components_statement_channel_all 自定义实体定义,具体取决于用户是否已注册电子邮件地址。默认情况下,支持 email、mobile 和 WhatsApp。 |
字符串 |
| $flow.encryption_status | 指示用户是否希望在将文档发送到指定渠道之前对其进行加密。如果用户未提供值,或者调用方拒绝提供结束日期,则该值默认为 true。 |
布尔值 |
如需为此组件配置“请求声明”Webhook,请展开即可查看相关说明。
- 打开 Dialogflow CX 控制台。
- 选择您的 Google Cloud 项目。
- 选择您的代理。
- 选择管理标签页。
- 点击网络钩子。
- 选择 prebuilt_components_credit_card_statement:request_statement webhook。
- 将 Dialogflow CX 网络钩子网址字段中的网址替换为您要集成的服务的端点。在下拉菜单中选择适当的方法。
- 检查并更新请求正文,以形成适合您网络钩子的正确请求格式。
- 查看并更新响应配置,以从 Webhook 的响应中提取特定字段。请勿修改参数名称,因为组件需要这些名称才能访问返回的字段值。
- 根据需要查看并更新身份验证设置。
- 点击保存。
完成
您的代理及其 webhook 现在应已设置完毕,可以进行测试了。