信用卡注册预构建组件

信用卡注册预构建组件允许新客户和现有客户申请新的信用卡。

该组件首先收集最终用户的电话号码,以确定他们是新客户还是现有客户。对于新用户,该组件将收集所需的详细信息,包括用户的每月收入以及用户申请的开支类别或卡福利。收集到所有必需信息后,该组件会安排回调并向用户提供请求编号。

对于现有客户,该组件将检索已注册的用户信息,并根据最终用户的偏好设置和检索到的信息(包括其信用评分)向最终用户提供可用的银行卡选项。客户选择支付卡选项后,该组件将通过已注册的渠道(包括 WhatsApp 或短信)发送一个链接以完成注册程序。

此组件使用电话号码收集邮政编码收集预构建组件来收集和验证用户详细信息。

限制

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

  • 该组件不加密任何数据。

示例对话框

以下示例对话框展示了此预构建组件处理的常见场景。这些示例对话框演示了通过电话调用组件时的行为,这会在对话开始时触发“默认欢迎意图”和第一个代理响应。

新用户

组件会检查用户是否使用已注册的手机号码拨打电话,并识别他们是新用户。该组件会收集用户想要注册的卡的类别,并收集用于识别用户身份的信息,包括邮政编码和电话号码。然后,该组件会安排回调并向用户提供请求编号。

用户输入 代理响应
请确认您是否为我们银行的现有客户?
我不是
很高兴您想向我们申请信用卡。我们有各种信用卡适合您。

为了向您提供最合适的信用卡,能否请您以美元注明您的每月收入?
5,000 美元
您对哪些费用或福利感兴趣?我们有各种选项,例如旅游、加油和购物。
我喜欢购物
您选择的回复属于购物类别。如果您想继续,请说“是”。
代理使用 Zip code collection 预构建组件收集用户的邮政编码
您刚才提到的邮政编码是 10011,对吗?
是的,没错
太好了,我们已完成邮政编码的收集。
代理使用电话号码收集预构建组件收集用户的电话号码
知道了。你提到的号码是 1 6502530000,对吗?
太好了,电话号码已收集完毕。

我们的客服代表会按照您的标准给您回电,要求您提供相关卡。您的请求编号为 993835。

现有客户

组件使用电话号码来识别注册客户。然后,该组件会请求用户想要注册的卡的类别和类型等信息。确认此信息后,该组件会要求客户选择一个渠道以完成注册流程,并将链接发送到客户的已注册渠道。

用户输入 代理响应
很高兴您继续选择我们的产品和服务。我们有各种信用卡适合您。

您对哪些费用或福利感兴趣?我们有各种选项,例如旅游、加油和购物。
我想买一张卡,以便在下次度假时使用
您选择的回复属于旅行类别。如果您想继续,请说“是”。
有 3 种卡片可以满足您的请求类型:白金级旅行卡、黄金级旅行卡、经典旅行卡。您是想了解所有银行卡还是某张特定银行卡的信息?例如,如果您特意查找的是经典卡,请说经典卡。
可以告诉我白金卡的事吗?
没问题,白金级旅行卡的年费为 95 美元。福利包括:每年获得 10,000 的奖励里程,通过所有其他购买交易赚取 2 倍的无限里程,里程易于赚取且易于使用。您可以访问我们的网站,详细了解福利或奖励。

请确认您是否要注册白金级旅行卡。
是的,我们开始吧
我们会提供一个链接,其中包含注册程序步骤。你想让我们通过短信或 WhatsApp 与你的手机号码分享这些银行卡的详细信息吗?
请发短信
好的,我们正在将链接发送到您注册的手机号码。此操作可能需要几秒钟的时间。您可以说“是”或“否”来确认您是否收到了该链接吗?
我知道了
太好了,现在您可以打开链接并查看卡注册详细信息了。数据完成后,系统将开始签发新卡,并将其发送到您当前的地址。

拒绝提供信息

用户拒绝提供注册信用卡所需的信息。该组件会退出并显示失败消息。

用户输入 代理响应
请确认您是否为我们银行的现有客户?
不,我不是
很高兴您想向我们申请信用卡。我们有各种信用卡适合您。

为了向您提供最合适的信用卡,能否请您以美元注明您的每月收入?
我不想告诉你这一信息
感谢您的来电。很抱歉,但如果没有您要求提供的信息,我们目前无法继续进行审核。

命名惯例

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

特征 形式 示例
[组件名称] 信用卡注册
组件专用 intent prebuilt_components_[component_name]_[intent_name] prebuilt_components_cc_enroll_collect_cardtype
实体类型 prebuilt_components_[component_name]_[entity_type] prebuilt_components_cc_enroll_expense_category
Webhook prebuilt_components_[component_name]:[webhook_action] prebuilt_components_credit_card_enrollment:get_available_card

输入参数

输入参数是用于配置组件某些行为的参数。流中的一个或多个条件将使用这些参数来确定组件的行为方式。流范围的参数必须在组件的初始页上设置,如下所述。会话级范围的参数可以通过调用流设置,也可以在此组件的初始页上设置。

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

参数名称 说明 输入格式
$session.params.auth_level (可选)指明最终用户当前的身份验证级别 整数
$session.params.phone_number (可选)最终用户的手机号码。如果未提供此参数,组件将收集最终用户的手机号码。 字符串
$flow.max_retry_count 指定提供给最终用户的重试次数。默认值为 3 整数
$flow.currency_name 指定收集每月收入明细时应使用的币种。默认值为 "USD" 字符串

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

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

输出参数

输出参数是在退出组件后将保持活跃状态的会话参数。这些参数包含该组件收集的重要信息。此预构建组件提供了以下输出参数的值:

参数名称 说明 输出格式
phone_number 用于识别用户的用户的本地手机号码(不含国家/地区代码)。 字符串
transfer_reason 此参数指示数据流退出的原因(如果失败的话)。返回值为以下值之一:

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

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

max_no_input:对话已达到无输入事件的重试次数上限。请参阅无输入内置事件

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

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

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

基本设置

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

  1. 导入预构建组件
  2. 使用描述 Dialogflow 外部服务的配置来配置所提供的灵活 webhook,请参阅下面的 webhook 设置。

网络钩子设置

为了使用此组件,您需要配置所包含的灵活网络钩子,以从外部服务中检索所需信息。

获取账号详情

如果存在帐号,组件会使用 prebuilt_components_credit_card_enrollment:get_account_details 网络钩子检索用户的帐号详细信息。

API 请求参数

以下参数由组件提供,作为 API 请求的输入。

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

API 响应参数

以下参数是从 API 响应中提取的,供组件使用。

参数名称 说明 输出格式
account_count 与注册的手机号码相关联的帐号数量。 整数
credit_score 用户的注册信用评分。 整数

如需为此组件配置“获取帐号详情”网络钩子,请展开查看相关说明。

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

获取卡片数量

该组件使用 prebuilt_components_credit_card_enrollment:get_card_count 网络钩子来检索与注册用户的帐号相关联的信用卡数量。

API 请求参数

以下参数由组件提供,作为 API 请求的输入。

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

API 响应参数

以下参数是从 API 响应中提取的,供组件使用。

参数名称 说明 输出格式
card_count 注册用户账号中的信用卡总数。 整数

如需为此组件配置“获取卡片数”网络钩子,请展开查看相关说明。

  1. 打开 Dialogflow CX 控制台
  2. 选择您的 Google Cloud 项目。
  3. 选择您的代理。
  4. 选择管理标签页。
  5. 点击 Webhook
  6. 选择预建组件_credit_card_enrollment:get_card_count 网络钩子。
  7. 将 Dialogflow 网络钩子网址字段中的网址替换为您要集成的服务的端点。从下拉菜单中选择合适的方法
  8. 查看并更新请求正文,以构成网络钩子的正确请求格式。
  9. 查看并更新响应配置,以从 webhook 的响应中提取特定字段。请勿修改参数名称,因为组件必须使用这些参数名称才能访问返回的字段值。
  10. 查看并视需要更新 Authentication 设置。
  11. 点击保存

获取可用银行卡

该组件使用 prebuilt_components_credit_card_enrollment:get_available_card 网络钩子,根据用户的信用评分检索特定类别的用户可以使用的卡列表。

API 请求参数

以下参数由组件提供,作为 API 请求的输入。

参数名称 说明 输入格式
$flow.expense_category 用户选择注册的费用类别。有效值由 prebuilt_components_cc_enroll_expense_category 自定义实体定义。默认情况下,支持 fuelshoppingtravel 字符串
$flow.credit_score 用户的信用评分,由组件使用获取帐号详情网络钩子检索。 整数

API 响应参数

以下参数是从 API 响应中提取的,供组件使用。

参数名称 说明 输出格式
available_card_names 用户可用的卡片列表,例如 ["gold shopping card","classic shopping card"] 列表(字符串)
cards_count 用户可用的卡片数量。 整数

如需为此组件配置“获取可用的卡片”网络钩子,请展开查看相关说明。

  1. 打开 Dialogflow CX 控制台
  2. 选择您的 Google Cloud 项目。
  3. 选择您的代理。
  4. 选择管理标签页。
  5. 点击 Webhook
  6. 选择预建组件_credit_card_enrollment:get_available_card 网络钩子。
  7. 将 Dialogflow 网络钩子网址字段中的网址替换为您要集成的服务的端点。从下拉菜单中选择合适的方法
  8. 查看并更新请求正文,以构成网络钩子的正确请求格式。
  9. 查看并更新响应配置,以从 webhook 的响应中提取特定字段。请勿修改参数名称,因为组件必须使用这些参数名称才能访问返回的字段值。
  10. 查看并视需要更新 Authentication 设置。
  11. 点击保存

获取所选卡的详细信息

组件使用 prebuilt_components_credit_card_enrollment:get_selected_card 网络钩子检索所选卡的年费和福利。

API 请求参数

以下参数由组件提供,作为 API 请求的输入。

参数名称 说明 输入格式
$flow.card_type 用户选择注册的卡类型。有效值由 prebuilt_components_cc_enroll_card_type 自定义实体定义。默认情况下,支持 classicgoldplatinum 字符串
$flow.expense_category 用户选择注册的费用类别。有效值由 prebuilt_components_cc_enroll_expense_category 自定义实体定义。默认情况下,支持 fuelshoppingtravel 字符串
$flow.credit_score 用户的信用评分,由组件使用获取帐号详情网络钩子检索。 整数

API 响应参数

以下参数是从 API 响应中提取的,供组件使用。

参数名称 说明 输出格式
selected_card_benefits 有关所选卡片的福利的信息。 字符串
selected_card_annual_fee 所选卡的年费。 整数
selected_card_name 所选卡的名称。 字符串

如需为此组件配置“获取所选卡片详情”网络钩子,请展开查看相关说明。

  1. 打开 Dialogflow CX 控制台
  2. 选择您的 Google Cloud 项目。
  3. 选择您的代理。
  4. 选择管理标签页。
  5. 点击 Webhook
  6. 选择预建组件_credit_card_enrollment:get_selected_card 网络钩子。
  7. 将 Dialogflow 网络钩子网址字段中的网址替换为您要集成的服务的端点。从下拉菜单中选择合适的方法
  8. 查看并更新请求正文,以构成网络钩子的正确请求格式。
  9. 查看并更新响应配置,以从 webhook 的响应中提取特定字段。请勿修改参数名称,因为组件必须使用这些参数名称才能访问返回的字段值。
  10. 查看并视需要更新 Authentication 设置。
  11. 点击保存

提交注册请求

该组件会使用 prebuilt_components_credit_card_enrollment:submit_enroll 网络钩子,根据新用户提供的偏好设置和用户详细信息创建卡注册请求。

API 请求参数

以下参数由组件提供,作为 API 请求的输入。

参数名称 说明 输入格式
$session.params.phone_number 用于识别用户的用户的本地手机号码(不含国家/地区代码)。 字符串
$flow.zipcode 用户提供的邮政编码。 字符串
$flow.monthly_salary 用户提供的月薪。 整数
$flow.currency_name 在组件的输入参数中配置的月薪的币种。请参阅输入参数 字符串

API 响应参数

以下参数是从 API 响应中提取的,供组件使用。

参数名称 说明 输出格式
request_number 卡注册请求成功注册的请求编号。 整数

如需为此组件配置“提交注册请求”网络钩子,请展开查看相关说明。

  1. 打开 Dialogflow CX 控制台
  2. 选择您的 Google Cloud 项目。
  3. 选择您的代理。
  4. 选择管理标签页。
  5. 点击 Webhook
  6. 选择预建组件_credit_card_enrollment:submit_enroll 网络钩子。
  7. 将 Dialogflow 网络钩子网址字段中的网址替换为您要集成的服务的端点。从下拉菜单中选择合适的方法
  8. 查看并更新请求正文,以构成网络钩子的正确请求格式。
  9. 查看并更新响应配置,以从 webhook 的响应中提取特定字段。请勿修改参数名称,因为组件必须使用这些参数名称才能访问返回的字段值。
  10. 查看并视需要更新 Authentication 设置。
  11. 点击保存

发送消息

该组件使用 prebuilt_components_credit_card_enrollment:send_message 网络钩子发送一条消息,其中包含为现有客户完成信用卡注册的链接。

API 请求参数

以下参数由组件提供,作为 API 请求的输入。

参数名称 说明 输入格式
$session.params.phone_number 用于识别用户的用户的本地手机号码(不含国家/地区代码)。 字符串
$flow.channel 用户选择用来接收消息的频道。有效值由 prebuilt_components_cc_enroll_channel 自定义实体定义。默认情况下,支持 SMSWhatsApp 字符串
$flow.selected_card_name 用户选择的卡片的列表,例如 ["gold shopping card","classic shopping card"] 列表(字符串)

API 响应参数

以下参数是从 API 响应中提取的,供组件使用。

参数名称 说明 输出格式
message_sent 指明消息是否成功发送至用户指定的渠道。 boolean

如需为此组件配置“发送消息”网络钩子,请展开查看相关说明。

  1. 打开 Dialogflow CX 控制台
  2. 选择您的 Google Cloud 项目。
  3. 选择您的代理。
  4. 选择管理标签页。
  5. 点击 Webhook
  6. 选择预建组件_credit_card_enrollment:send_message 网络钩子。
  7. 将 Dialogflow 网络钩子网址字段中的网址替换为您要集成的服务的端点。从下拉菜单中选择合适的方法
  8. 查看并更新请求正文,以构成网络钩子的正确请求格式。
  9. 查看并更新响应配置,以从 webhook 的响应中提取特定字段。请勿修改参数名称,因为组件必须使用这些参数名称才能访问返回的字段值。
  10. 查看并视需要更新 Authentication 设置。
  11. 点击保存

完成

现在,您的代理及其 webhook 应该已设置完毕,可以开始测试了。