出生日期收集预构建组件

预构建组件会收集月份、日期和年份,以捕获和验证出生日期。

限制

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

  • 此组件不支持通过身份证件验证最终用户的出生日期。

启用 DTMF,以允许用户使用电话拨号键盘输入数字值。

其他功能

此预构建组件还提供以下其他功能:

对话框示例

以下示例对话框演示了此预构建组件处理的常见场景。示例对话框演示了通过电话调用组件时的行为,这会触发默认欢迎 intent 并在对话开始时发出第一个客服人员回复。

完整的出生日期

最终用户在一次对话中提供完整的出生日期;客服人员成功接受。

用户输入 客服人员回复
请提供您的出生日期。请依次说出您的出生月份、出生日期和出生年份。
1995 年 9 月 9 日
好的,您的出生日期是 1995 年 9 月 9 日。对吗?
太棒了,我已收集您的出生日期。

部分出生日期

最终用户提供出生日期,先说月份,然后说日期和年份;客服人员成功接受。

用户输入 客服人员回复
请提供您的出生日期。请依次说出您的出生月份、出生日期和出生年份。
3 月
您是哪一天出生的?
12
您是哪年出生的?
1999
好的,您的出生日期是 1999 年 3 月 12 日。对吗?
太棒了,我已收集您的出生日期。

未来日期验证

此场景假设当前日期为 2023 年 3 月 22 日。最终用户提供未来的出生日期;客服人员对其进行验证,并再次提示最终用户提供正确的出生日期。

用户输入 客服人员回复
请提供您的出生日期。请依次说出您的出生月份、出生日期和出生年份。
2023 年 9 月 9 日
您是哪年出生的?
2023
好的,您的出生日期是 2023 年 9 月 9 日。对吗?
抱歉,您提供的日期是未来的日期。我们重新开始吧。
您出生于哪个月?
3 月
您是哪一天出生的?
12
您是哪年出生的?
1999
好的,您的出生日期是 1999 年 3 月 12 日。对吗?
太棒了,我已收集您的出生日期。

日期无效

最终用户提供无效的出生日期(例如 1999 年 2 月 30 日或 1999 年 4 月 31 日);客服人员对其进行验证,并再次提示最终用户提供正确的出生日期。

用户输入 客服人员回复
请提供您的出生日期。请依次说出您的出生月份、出生日期和出生年份。
1999 年 2 月 30 日
好的,您的出生日期是 1999 年 2 月 30 日。对吗?
您提供的日期无效。我们重新开始吧。
您出生于哪个月?
3 月
您是哪一天出生的?
12
您是哪年出生的?
1999
好的,您的出生日期是 1999 年 3 月 12 日。对吗?
太棒了,我已收集您的出生日期。

无法识别所输入的内容

最终用户提供无法识别的输入三次后,组件会退出流程。

用户输入 客服人员回复
请提供您的出生日期。请依次说出您的出生月份、出生日期和出生年份。
没关系
抱歉,我没听明白。您能否再说一遍或输入您的出生日期?
nice
抱歉,我没有收到您的出生日期。我们先从月份开始。请说您是哪个月出生的?
good
抱歉,我没听明白。您能否再说一遍或输入月份数字?
nice
呃,我还是没听明白。请务必说出月份。如果我听不清您说的话,您也可以使用数字键盘输入月份数。
nice
抱歉,我没听懂您的回答。

出生日期验证

此预构建组件使用 IS_DATEIS_FUTURE_DATE 系统函数来检查收集的日期是否有效且是否在过去。此外:

  • 系统会将“本月”“次月”或“上个月”等输入转换为相应的月份。例如,如果最终用户是在 3 月份与客服人员互动,那么“本月”“次月”和“上个月”分别会转换为“3 月”“4 月”和“2 月”。
  • 验证年份是否为四位数。如果年份输入值仅包含两位数,该组件会将其转换为四位数年份。例如,“98”会转换为“1998”。
  • 系统会将“本周四”“上周四”和“下周四”等输入内容捕获为相应的月份和日期,并提示用户提供年份。例如,如果最终用户是在 2023 年 3 月 22 日(星期三)与客服人员互动,那么“本周四”“上周四”和“下周四”分别会转换为“3 月 23 日”“3 月 16 日”和“3 月 30 日”。

命名规则

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

功能 格式 示例
流程 [组件名称] 收集出生日期
特定于组件的 intent prebuilt_components_[component_name]_[intent_name] prebuilt_components_dob_collection_collect_month
参数 [param_name] 生日
实体类型 prebuilt_components_[component_name]_[entity_type] prebuilt_components_dob_collection_dob_day

输出参数

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

参数名称 说明 输出格式
dob_collection_dob 此参数会返回一个包含生日元素(日、月和年)的对象
{
"year": integer,
"month": integer,
"day": integer
}

基本设置

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

  1. 导入预构建组件

完成

您的代理现在应该已设置完毕,可以进行测试了。