Chat 会话元数据

本文档介绍了聊天会话元数据记录的架构。元数据记录是 Contact Center AI 平台为支持聊天会话创建的 JSON 文档。CCAI Platform 会在聊天 session-end 命令中将元数据记录发送到您的 CRM 集成。启用外部存储空间后,CCAI Platform 还会使用 metadata.json 文件将记录写入外部存储空间配置。每个对话都会生成一条记录,由顶级 id 唯一标识。使用此架构可将记录注入下游系统、验证收到的载荷,或将字段映射到数据仓库列。

架构根

聊天会话元数据记录是表示一个聊天会话的单个 JSON 对象。顶层的三个概念决定了记录的身份和形状。

主键:id(整数)

在租户内唯一标识对话会话。每个对话都有一条记录。所有其他顶级字段、数组和嵌套对象都描述了此 id 标识的聊天的属性。

处理程序鉴别器:agent_info(对象,oneOf)

一个对象,其形状因对话的最后一个处理程序而异。这两个变体是互斥的,一次只能存在一个:

  • 人工客服变体:当聊天的最后处理者是人工客服时显示。 除了共享的 id、name 和 avatar_url 字段之外,还包含 email、first_name、last_name 和 agent_number。

  • 虚拟客服变体:当聊天的最后一个处理者是虚拟客服时显示。包含 va_alias,并省略 email、first_name、last_name 和 agent_number。

如需检测记录包含哪个变体,请检查是否存在特定于变体的字段,通常人工客服变体为 agent_info.email,虚拟客服变体为 agent_info.va_alias。每个变体的完整定义显示在定义:agent和定义:virtual_agent中。

对话形状判别器:chat_type、session_type、session_type_v2(字符串)

同一底层聊天类型的三个并行视图。它们在记录所代表的聊天类型上始终保持一致,只是在命名时使用的词汇有所不同。

  • chat_type:使用旧版枚举词汇,例如 Messaging Inbound (App Chat)、Messaging (SMS) 和 Messaging (WhatsApp)。

  • session_type:始终返回与 chat_type 相同的字符串。它的存在是为了向后兼容以此字段为键的集成;请将其视为 chat_type 的已弃用别名。

  • session_type_v2:使用当前的枚举词汇表,其中可能包含更精细的区分,例如 Messaging Inbound (Mobile Chat)。对于没有 v2 专属值的聊天类型,session_type_v2 会返回与 chat_type 相同的字符串。新集成应解析 session_type_v2。

如需了解每个字段的值,请参阅核心信息。

核心信息

  • id(整数):每个对话会话的唯一标识符。此主键用于区分不同的聊天。

  • lang(字符串):聊天期间使用的 ISO 639 语言代码(例如,"en" 表示英语,"es" 表示西班牙语)。

  • chat_type(字符串):对话类型,使用旧版类型词汇。 值包括 "Messaging Inbound (App Chat)"、"Messaging Inbound (Web Chat)"、"Messaging (SMS)"、"Messaging (WhatsApp)" 和 "Messaging (Apple Messaging for Business)"。

  • session_type(字符串):chat_type 的副本(值相同),保留用于向后兼容。请参阅版本控制和弃用:旧版重复项。

  • session_type_v2(字符串):对话类型,使用当前类型词汇。它通过更精细的区分来优化 chat_type 值。值包括 "Messaging Inbound (Mobile Chat)"、"Messaging Inbound (Web Chat)"、"Messaging (WhatsApp)"、"Messaging (Apple Messaging for Business)"、"Messaging (SMS)"、"Messaging Inbound (SMS)"、"Messaging Outbound (SMS)"、"Messaging Outbound (SMS via API)"、"Messaging Inbound (SMS Direct)"、"Messaging Outbound (SMS Direct)" 和 "Messaging Outbound (SMS Direct via API)"。

  • status(字符串):对话的当前状态。可能的值:"queued"、"selecting"、"assigned"、"va_assigned"、"dismissed"、"va_dismissed"、"check_in_timeout"、"finished"、"no_response"、"canceled" 和 "failed"。(CCAI 平台会将未收到消费者回复的已完成聊天报告为 "no_response"。)

  • sub_status(字符串或 null):更具体的聊天状态详情(如有)。可能的值:"selecting"、"queued"、"ongoing"、"dismissed"、"finished"、"timeout"、"deflected"、"abandoned"、"expired"、"failed"、"disconnected_by_agent"、"disconnected_by_end_user"、"no_messages"、"no_messages_disconnected_by_agent"、"no_messages_disconnected_by_end_user" 和 "end_user_opt_out"。

  • created_at(字符串,日期时间):CCAI Platform 创建聊天会话时的时间戳。

  • assigned_at(字符串、日期时间或 null):CCAI Platform 将聊天分配给客服的时间戳;如果未分配,则为 null。

  • ends_at(字符串、日期时间或 null):聊天会话结束时的时间戳。

  • updated_at(字符串、日期时间):CCAI Platform 上次更新聊天数据时的时间戳。

  • first_msg_sent_at(字符串、日期时间或 null):参与者在对话中发送第一条消息时的时间戳。

  • last_msg_sent_at(字符串、日期时间或 null):参与者在对话中发送最后一条消息时的时间戳。

  • wait_duration(整数):消费者等待的总时间(以秒为单位)。

  • chat_duration(整数):对话的总时长(以秒为单位)。

  • verified(布尔值):指示验证智能操作是否验证了互动。

  • rating(整数或 null):消费者提供的客户满意度 (CSAT) 评分;如果消费者未提供评分,则为 null。

  • has_feedback(布尔值):表示消费者是否在对话后提供了反馈。

  • out_ticket_id(字符串或 null):CCAI Platform 在外部 CRM 系统中创建的工单的标识符。

  • out_ticket_url(字符串、URI 或 null):CRM 工单的网址。

  • is_out_ticket_account(布尔值或 null):指示 CRM 工单代表的是客户 (true) 还是聊天互动 (false)。

  • fail_reason(字符串):对话期间发生任何失败的原因,如果对话未失败,则为 "nothing"。可能的值:"nothing"、"unknown"、"expired"、"after_hours"、"escalation_failed"、"check_in_timed_out"、"check_in_timed_out_expired"、"expired_menu_selection"、"end_user_opt_out"、"over_cap_email"、"group_deleted_no_substitute"、"presession_deflection_unknown"、"presession_deflection_timeout"、"presession_deflection_message_delivery_failed"、"sms_error" 和 "force_ended"。

  • provider_type(字符串):所用聊天服务提供商的类型。可能的值:"unknown"、"messaging"、"twilio_conversations"、"nexmo_conversations" 和 "ujet_conversations"。

  • provider_channel_id(字符串或 null):提供商专属的聊天渠道标识符。

  • message_count(整数):在对话中交换的消息总数。

  • average_response_time(整数):客服人员在聊天期间回复所需的平均时间(以秒为单位)。

  • longest_response_time(整数):客服人员在聊天期间回复的最长用时(以秒为单位)。

  • transcript(布尔值):指示会话是否存在聊天转写。

代理和虚拟客服信息

  • agent_info(对象):上次处理聊天的人工客服或虚拟客服的相关信息。此字段使用 oneOf 关键字指定它可以是两种类型之一。

    • agent(对象):人工客服的相关信息:

      • id(整数):智能体的唯一 ID。

      • agent_number(字符串或 null):分配给代理的标识符。

      • email(字符串、电子邮件):代理的邮箱。

      • name(字符串):智能体的全名。

      • last_name(字符串):代理的姓氏。

      • first_name(字符串):客服人员的名字。

      • avatar_url(字符串、URI 或 null):代理头像图片的网址。

    • virtual_agent(对象):虚拟客服的相关信息:

      • id(整数):虚拟代理的唯一 ID。

      • name(字符串):虚拟客服的名称。

      • avatar_url(字符串、URI 或 null):虚拟客服的头像图片的网址。

      • va_alias(字符串或 null):虚拟代理的显示别名(如果已配置)。始终存在于载荷中;如果未设置别名,则为 null。

  • selected_menu(对象或 null):有关消费者在对话期间选择的菜单的信息。

    • id(整数):菜单的唯一 ID。

    • name(字符串):菜单的名称。

    • parent_id(整数或 null):父级菜单的 ID(如有)。

    • position(整数或 null):菜单相对于同一级别其他菜单的位置。

    • deleted(布尔值):指示管理员是否删除了菜单。

    • menu_type(字符串):菜单类型(例如 "sms_menu"、"web_menu")。

    • hidden(布尔值):菜单是否可见或可供使用。

    • menu_path(对象或 null):描述客户浏览的菜单的分层路径。

    • items_count(整数):路径中的菜单数量。

    • name(字符串或 null):以斜杠分隔的菜单名称字符串(例如 "Support/Billing"),如果菜单路径不可用,则为 null。

    • materialized_path(字符串):以斜杠分隔的菜单 ID 字符串。

  • queue_priority_level(整数):分配给所选聊天队列的队列优先级。仅当您的账号启用了队列优先级时才会显示。

最终用户详细信息

  • end_user(对象或 null):消费者的相关信息:

    • id(整数或 null):消费者的内部 ID。

    • identifier(字符串或 null):消费者的外部标识符。

    • out_contact_id(字符串或 null):CRM 中消费者的 ID。

客户标志和 SDK 提供的数据

  • customer_flag(对象):标记外部系统在会话期间提供或更新的重要消费者属性的标志。仅当外部系统在会话期间提供或更新了与身份验证相关的客户标志时,才会显示。

    • verified_customer(布尔值):指示外部系统是否已将消费者标记为已验证。

    • bad_actor(布尔值):指示外部系统是否将消费者标记为不良行为者。

    • repeat_customer(布尔值):表示外部系统是否将消费者标记为回头客。

  • custom_data_secured(对象或 null):SDK 或 Apps API 提供的自定义、安全签名的数据。

  • custom_data_not_secured(对象或 null):SDK 或应用 API 提供的自定义、非安全签名数据。

  • sip_headers(对象):为对话捕获的入站 SIP 标头。键和值反映了从上游提供商收到的 SIP 标头。仅当您在账号中启用 SIP 标头捕获并将其配置为显示在会话元数据中时,此字段才会显示

媒体附件

  • photos(数组):与对话关联的照片或屏幕截图。

    • id(整数):照片的唯一标识符。

    • photo_type(字符串):照片类型。可能的值包括 "photo" 和 "screenshot"。

    • url(字符串、URI):所存储照片的网址。

    • smart_action_type(字符串或 null):与照片关联的智能操作(如果有)。

    • transfer_id(整数或 null):与照片关联的转移事件标识符(如果参与者在转移完成后上传了照片)。

  • videos(数组):与对话关联的视频。

    • id(整数):视频的唯一标识符。

    • url(字符串,URI):所存储视频的网址。

    • smart_action_type(字符串或 null):与视频关联的智能操作(如果有)。

    • transfer_id(整数或 null):与视频关联的转移事件标识符(如果参与者在转移完成后上传了视频)。

Chat 转接

  • transfers(数组):聊天期间每个转接事件对应一个条目。记录智能体、虚拟智能体和菜单之间的转移。

    • id(整数):转移作业的唯一标识符。

    • status(字符串):转移作业的当前状态。可能的值包括 "transferring"、"transferred"、"failed" 和 "deflected"。

    • fail_reason(字符串):转移失败的原因,如果未失败,则为 "nothing"。可能的值:"nothing"、"timeout"、"canceled"、"ag_connection_timeout"、"va_failure"、"agent_detection_missed"、"unknown" 和 "unreachable_phone_number"。

    • created_at(字符串,日期时间):转移开始时的时间戳。

    • assigned_at(字符串、日期时间或 null):CCAI Platform 分配转移的时间戳。

    • connected_at(字符串、日期时间或 null):转接连接时的时间戳。

    • updated_at(字符串、日期时间或 null):CCAI Platform 上次更新转移记录时的时间戳。

    • call_duration(整数或 null):转接的聊天片段的时长(以秒为单位)。

    • wait_duration(整数或 null):消费者在转移期间等待的时间(以秒为单位)。

    • deflection(字符串):与转移关联的偏转类型。如需了解允许的值,请参阅定义:deflection。

    • answer_type_path(字符串或 null):描述客服人员或菜单如何回答原始聊天和目标聊天的路径。

    • from_menu_path / to_menu_path(对象或 null):转移前后的菜单路径;与定义中的 menu_path 形状相同。

    • from_agent / to_agent(对象或 null):转接双方的人工客服;与定义中的 agent 对象具有相同的形状。

    • from_virtual_agent / to_virtual_agent(对象或 null):转接双方的虚拟客服;与定义中的 virtual_agent 对象具有相同的形状。

    • from_queue_priority_level / to_queue_priority_level(整数或 null):转移前后的队列优先级。

Chat 处理时长

  • handle_durations(数组):一个对象数组,每个对象代表由代理处理的聊天片段。

    • id(整数):处理时长的唯一标识符。

    • agent_id(整数或 null):代理的标识符。

    • acw_duration(整数):聊天后工作时长(以秒为单位)。

    • chat_duration(整数):此时间段内的 Chat 时长(以秒为单位)。

    • menu_path_id(整数或 null):菜单路径的 ID。

    • menu_path(字符串):菜单路径的名称。

    • lang(字符串):所用语言。

    • transfer(布尔值):是否发生了转移。

    • transfer_id(整数或 null):转移作业的 ID。

    • started_at(字符串、日期时间或 null):开始时间戳。

    • ended_at(字符串、日期时间或 null):结束时间戳。

    • response_count(整数):代理回答的数量。

    • response_time_total(整数):客服人员总响应时间(以秒为单位)。

    • response_time_max(整数):最长代理响应时间(以秒为单位)。

    • response_time_avg(数字或 null):平均代理响应时间(以秒为单位)。此值可能包含小数精度。

    • assigned_connection_duration(整数):在此细分期间,客户在分配的客服人员连接时等待的时长。

队列时长

  • queue_durations(数组):一个对象数组,每个对象代表消费者在队列中等待的聊天片段。

    • id(整数):唯一标识符。

    • agent_id(整数或 null):代理标识符。

    • ended_at(字符串、日期时间):结束时间戳。

    • lang(字符串):语言。

    • menu_path_id(整数或 null):菜单路径标识符。

    • menu_path(字符串):菜单路径。

    • queue_duration(整数或 null):队列时长(以秒为单位)。

    • started_at(字符串,日期时间):开始时间戳。

    • transfer_cold(布尔值或 null):聊天是否经过冷转接。

    • transfer(布尔值):是否发生了转移。

    • transfer_id(整数或 null):转移作业标识符。

    • service_level_abandon_time_threshold(整数):服务等级放弃阈值(以秒为单位)。

    • service_level_event(字符串):服务级事件状态。可能的值包括 "excluded"、"in_sla" 和 "not_in_sla"。

    • service_level_target_percent(整数):服务等级目标百分比。

    • service_level_target_time(整数):服务等级目标时间(以秒为单位)。

虚拟客服转人工客服

  • escalations(数组):每个条目都表示从虚拟客服升级到人工客服。

    • id(整数):上报问题的唯一标识符。

    • status(字符串):上报问题的当前状态。可能的值:"escalating"、"escalated"、"canceled"、"deflecting" 和 "deflected"。

    • reason(字符串):上报对话的原因。可能的值:"unknown"、"by_end_user_ask"、"by_end_user_message"、"by_virtual_agent"、"payload_failure"、"could_not_resume"、"by_human_agent"、"invalid_queue" 和 "dismissed"。

    • created_at(字符串,日期时间):上报开始时的时间戳。

    • escalated_at(字符串、日期时间或 null):上报完成时的时间戳。

    • from_virtual_agent(对象或 null):上报对话的虚拟客服。与定义中的 virtual_agent 对象具有相同的形状。

    • to_agent(对象或 null):聊天转接至的人工客服。与定义中的 agent 对象具有相同的形状。

    • from_menu_path / to_menu_path(对象或 null):上报前后的菜单路径。

虚拟客服成功化解的升级问题

  • virtual_agent_deflected_escalations(数组):从虚拟代理升级到其他目标的详细信息。

    • id(整数):唯一标识符。

    • deflection(字符串):已转移上报问题的转移类型。 可能的值:"no_deflection"、"over_cap"、"over_cap_email"、"over_cap_virtual_agent"、"over_cap_human_agent"、"over_cap_sip"、"over_cap_extension"、"after_hours"、"after_hours_email" 和 "after_hours_virtual_agent"。

    • escalation_id(整数):上报事件标识符。

    • escalation_reason(字符串):上报原因。与 escalations[].reason 相同(请参阅第 10 节虚拟客服到人工客服的升级)。

    • escalated_at(字符串,日期时间):上报时间戳。

    • menu_path_id(整数):菜单路径 ID。

    • menu_path(字符串):菜单路径。

    • lang(字符串):语言。

    • virtual_agent(对象):虚拟代理详细信息。请参阅定义:virtual_agent。

虚拟客服处理时长

  • virtual_agent_handle_durations(数组):聊天由虚拟客服处理的时间段。

    • id(整数):唯一标识符。

    • virtual_agent(对象):虚拟代理详细信息。请参阅定义:virtual_agent。

    • chat_duration(整数):片段的时长(以秒为单位)。

    • escalation_reason(字符串):上报原因。

    • finish_reason(字符串):互动结束的原因。

    • response_count(整数):虚拟客服响应次数。

    • response_time_total(整数):虚拟客服总响应时间(以秒为单位)。

    • response_time_max(整数):虚拟客服的最长响应时间(以秒为单位)。

    • response_time_avg(数字或 null):虚拟客服人员的平均响应时间(以秒为单位)。此值可能包含小数精度。

    • fallback_response_count(整数):后备响应计数。

    • initiated_by(字符串):虚拟客服会话的发起方式。 可能的值:"end_user"、"human_agent" 和 "post_session"。

    • menu_path_id(整数):菜单路径 ID。

    • menu_path(字符串):菜单路径。

    • lang(字符串):语言。

    • transfer(布尔值):聊天是否已转接。

    • transfer_id(整数或 null):转移事件标识符。

    • started_at(字符串,日期时间):开始时间戳。

    • ended_at(字符串、日期时间):结束时间戳。

消费者处理时长

  • consumer_handle_durations(数组):消费者在聊天中的时长。

    • id(整数):唯一标识符。

    • chat_duration(整数):消费者片段时长(以秒为单位)。

    • started_at(字符串、日期时间或 null):开始时间戳。

    • ended_at(字符串、日期时间或 null):结束时间戳。

    • message_count(整数):消费者消息数量。

    • response_count(整数):消费者回复数量。

    • response_time_total(整数):总消费者响应时间(以秒为单位)。

    • response_time_max(整数):最长消费者响应时间(以秒为单位)。

    • response_time_avg(整数):平均消费者响应时间(以秒为单位)。

消费者活动时长

  • consumer_event_durations(数组):消费者聊天事件(例如 CSAT、付款)的详细信息。

    • id(整数):唯一标识符。

    • duration(整数):事件时长(以秒为单位)。

    • type(字符串):事件类型。可能的值:"csat"。

    • event(字符串):事件结果。可能的值:"finished" 和 "abandoned"。

    • menu_path_id(整数):菜单路径 ID。

    • menu_path(字符串):菜单路径。

    • lang(字符串):语言。

    • started_at(字符串,日期时间):开始时间戳。

    • ended_at(字符串、日期时间):结束时间戳。

参与者

  • participants(数组):有关对话中每个参与者(例如最终用户、客服人员、虚拟客服)的信息。

    • id(整数):参与者的唯一标识符。

    • type(字符串):参与者类型。可能的值:"end_user"、"agent"、"manager"、"virtual_agent"、"external_agent" 和 "task_virtual_agent"。

    • entry_type(字符串):参与者进入对话的方式。可能的值:"queue_or_transfer"、"barge" 和 "post_session"。

    • user_id(整数或 null):如果参与者是客服人员,则为用户 ID。

    • end_user_id(整数或 null):如果参与者是消费者,则为消费者标识符。

    • virtual_agent_id(整数或 null):如果参与者是虚拟客服,则为虚拟客服 ID。

    • virtual_agent_params(对象):虚拟客服使用的自定义元数据。仅当您配置了虚拟客服自定义元数据包含时才会显示。

    • status(字符串):参与者的状态。可能的值:"waiting"、"connecting"、"invited"、"connected"、"wrapping_up"、"finished"、"failed"、"resuming" 和 "post_session_in_progress"。

    • fail_reason(字符串):失败原因(如有)。可能的值:"nothing"、"canceled"、"ag_connection_timeout" 和 "unknown"。

    • connected_at(字符串、日期时间或 null):参与者连接时的时间戳。

    • phone_number(字符串):参与者的电话号码。仅存在于消费者参与者中。

    • chat_id(整数):对话的标识符。

    • chat_duration(整数或 null):参与者的 Chat 时长(以秒为单位)。

    • finished_at(字符串、日期时间或 null):参与者结束参与的时间戳。

    • agent_assist(对象):为参与者启用的 Agent Assist 设置。始终存在;未配置 Agent Assist 时,这是一个空默认对象。

    • virtual_agent(对象或 null):充当此参与者的虚拟客服人员的详细信息;与顶级 agent_info 和 virtual_agent_params 不同。

    • sip_headers(对象或 null):与此参与者关联的 SIP 标头。始终存在于载荷中;当 CCAI Platform 未捕获任何内容时,值为 null。

    • location(字符串或 null):智能体配置的位置。仅在代理参与者上显示。

    • location_id(整数或 null):营业地点的标识符。仅存在于代理参与者。

    • email(字符串,邮箱):代理的邮箱。仅存在于代理参与者中。

    • first_name(字符串或 null):客服人员的名字。仅存在于代理参与者中。

    • last_name(字符串或 null):代理的姓氏。仅存在于代理参与者中。

    • middle_name(字符串或 null):代理的中间名。仅存在于代理参与者中。

    • teams(数组):{ id, name } 对象数组,用于描述代理所属的团队。仅在智能体参与者上显示。

签到日志

  • check_in_logs(数组):在聊天会话期间记录的签到事件。 每个项都会对一个签到流程的签到事件进行分组。

    • check_in_id(整数):签到流程的标识符。

    • check_in_modal_displayed(字符串、日期时间):CCAI 平台向客户显示签到模态的时间戳。仅当 CCAI Platform 显示签到模态窗口时才会显示。

    • check_in_modal_confirmed(字符串、日期时间):消费者确认其仍处于“在场”状态时的时间戳。仅当消费者确认签到模态框时才会显示。

    • check_in_modal_timed_out(字符串,日期时间):签到提示超时的时间戳。仅当签到模态窗口超时时才会显示。

    • timeout_modal_rejoin_success(字符串、日期时间):重新加入操作成功时的时间戳。仅当消费者在超时后成功重新加入时存在。

    • timeout_modal_rejoin_failed_after_hour(字符串,日期时间):由于非营业时间行为导致重新加入操作失败的时间戳。仅当因队列在非工作时间而导致重新加入失败时才会显示。

    • timeout_modal_exit_chat(字符串,日期时间):消费者选择退出聊天时的时间戳。仅当消费者从超时模态窗口退出聊天时才会显示。

    • timeout_modal_time_out_sdk_closed(字符串,日期时间):因 SDK 关闭而导致超时模态流程结束的时间戳。仅当 SDK 在超时后关闭时才会显示。

优惠活动

  • offer_type(字符串或 null):CCAI Platform 向客服人员提供聊天的方式。

  • offer_events(数组):CCAI Platform 向客服人员提供聊天的事件。

    • casting_time(字符串、日期时间):CCAI 平台提供聊天的时间。

    • group(字符串):CCAI 平台向其提供聊天的群组。

其他详情

  • dismiss_duration(整数):对话处于已关闭状态的时长(以秒为单位)。仅当聊天处于已关闭状态时存在。

  • answer_type(字符串或 null):聊天回复方式。可能的值:"manual"、"auto"、"outbound" 和 "deflection"。

  • inbound_number(字符串):与对话关联的呼入手机号码。 仅当有入站手机号码与聊天相关联时才会显示。

  • outbound_number(字符串):与对话关联的外拨手机号码。 仅当有外拨手机号码与对话关联时才会显示。

  • after_hours(布尔值):聊天是否发生在非工作时间。

  • dispositions(数组):客服人员记录的收尾代码和备注。 仅当您在账号中启用收尾代码或备注时才会显示。每个条目都可能包含根据您的收尾配置有条件呈现的字段:

    • user_id(整数):代理标识符。

    • transfer_id(整数或 null):转移事件标识符(如果在转移后记录)。

    • participant_id(整数):参与者标识符。

    • note(字符串):自由文本形式的客服人员备注。

    • original_note(字符串):笔记的原始(修改前)版本。

    • code(字符串):处置代号。

    • ujet_code_id(整数或空字符串):CCAI Platform 分配的处理代码标识符;代码的稳定键(代码显示名称可以更改)。不可用时为空字符串。

    • list(字符串):代码所属列表的名称。

    • list_path(字符串):代码列表的路径,以斜杠分隔。

    • ujet_list_id(整数或空字符串):CCAI Platform 分配的处理代码所属列表的标识符;列表的稳定键。如果不可用,则为空字符串。

    • custom_list_id(字符串或整数):客户定义的列表标识符(如果已映射)。

    • custom_code_id(字符串或整数):客户定义的代码标识符(如果已映射)。

  • auto_session_summaries(数组):保存到 CRM 记录中的 AI 生成的会话摘要。仅当您在账号中启用对话摘要功能,并且 AI 成功生成摘要时,才会显示。每个条目都包含:

    • user_id(整数):与摘要关联的代理参与者的标识符。

    • participant_id(整数):参与者标识符。

    • session_summary(字符串):摘要文本。

    • session_summary_sections(数组或对象):摘要分为结构化部分(如果有)。

  • transfer_limit(对象或 null):对话的转移限制数据。

    • enabled(布尔值):是否为对话启用了转移限制跟踪。

    • limit_count(整数):允许的转移次数。

    • limit_reached(布尔值):聊天是否达到了配置的转移限制。

  • email(字符串、电子邮件地址或 null):消费者的电子邮件地址。

  • feedback(字符串或 null):消费者反馈。

  • smart_action_text(字符串或 null):所采取的任何智能操作的文本。

定义

以下子架构会出现在聊天会话元数据文档中的多个位置。每个子架构仅出现一次。引用这些属性的属性组会指向此部分,而不是以内嵌方式重新定义其形状。

描述对话经历的分层菜单路径。如需查看其字段的完整列表,请参阅菜单导航。

引用自:顶级 menu_path 字段;每个 transfers[].from_menu_path 和 transfers[].to_menu_path;每个 escalations[].from_menu_path 和 escalations[].to_menu_path。

agent(对象)

描述人工客服。这是顶级 agent_info 鉴别器的两个变体之一(请参阅架构根)。如需查看其字段的完整列表,请参阅客服人员和虚拟客服人员信息。

引用自:当聊天的最后一个处理者是人工客服时,引用自 agent_info 字段;每个 transfers[].from_agent 和 transfers[].to_agent;每个 escalations[].to_agent。

virtual_agent(对象)

描述虚拟客服。这是顶级 agent_info 鉴别器的两个变体之一(请参阅架构根)。如需查看其字段的完整列表,请参阅客服人员和虚拟客服人员信息。

引用自:当聊天的最后一个处理程序是虚拟客服人员时的 agent_info 字段;每个 transfers[].from_virtual_agent 和 transfers[].to_virtual_agent;每个 escalations[].from_virtual_agent;每个 virtual_agent_handle_durations[].virtual_agent;每个 virtual_agent_deflected_escalations[].virtual_agent;每个 participants[].virtual_agent。

deflection(字符串、枚举)

与转移作业关联的偏转状态。值遵循 <trigger>_<destination> 模式,其中前缀标识触发偏转的条件,后缀标识目标或处理方式(例如 _phone、_voicemail、_message、_queue、_sip、_extension、_callback、_wait)。

允许的值(按触发器系列分组):

  • 未分流:no_deflection、deflecting

  • 超容量,即队列超出其容量阈值时:over_cap_phone、over_cap_voicemail、over_cap_callback、over_cap_wait、over_cap_message、over_cap_ewt_only、over_cap_queue、over_cap_sip、over_cap_extension、over_cap_phone_with_extension

  • 非营业时间,即聊天在菜单配置的营业时间之外到达:after_hours_voicemail、after_hours_phone、after_hours_message_only、after_hours_message、after_hours_queue、after_hours_sip、after_hours_extension、after_hours_phone_with_extension

  • 临时重定向,当在菜单上配置了临时重定向时:temp_redirection_phone、temp_redirection_message、temp_redirection_voicemail、temp_redirection_queue、temp_redirection_sip、temp_redirection_extension、temp_redirection_phone_with_extension

  • IVR 预会话:ivr_presession_deflection

  • 虚拟客服重定向(当虚拟客服重定向聊天时):va_redirection_phone、va_redirection_sip

引用自:每个 transfers[].deflection。(虚拟客服偏转上报中的虚拟客服偏转上报使用单独的、较小的偏转词汇表,该词汇表以内嵌方式记录在其中。)

transfer(对象)

描述聊天期间发生的转接。转移操作可以在菜单、客服人员和虚拟客服之间转移聊天。如需查看其字段的完整列表,请参阅 Chat 转移作业。

引用自:顶级 transfers 数组。(本文档中名为 transfer_id 的其他字段是对转移作业 id 的整数引用,而不是内嵌 transfer 对象。)

participant(对象)

描述对话中的一位参与者。参与者形状因参与者类型而异;客服人员参与者可以包括客服人员个人资料、位置、团队和 Agent Assist 字段,而消费者和虚拟客服参与者则包括特定于类型的标识符。如需查看记录字段的完整列表,请参阅参与者。

引用自:顶级 participants 数组;auto_session_summaries[].participant_id;处置记录。

时长行(对象)

描述聊天中测量的间隔,例如客服人员处理时间、队列时间、消费者处理时间、消费者事件时间或虚拟客服人员处理时间。每个时长数组都有自己的行形状,因为名称相似的字段在不同表中可能具有不同的精度或可为 null 性。

参考来源: handle_durations、queue_durations、virtual_agent_handle_durations、consumer_handle_durations 和 consumer_event_durations。

版本控制和弃用

聊天会话元数据文档旨在实现向后兼容的架构演进。系统可能会随时添加新字段和数组,集成应忽略任何无法识别的键,以确保功能持续正常运行。以下字段属于旧版或已被软取代;为实现向后兼容性,这些字段仍保留在载荷中,但新集成应遵循每个字段的指南。

旧版重复项

  • session_type(字符串):chat_type 的旧版别名。始终返回与 chat_type 相同的值,并使用相同的旧版枚举词汇。保留此字段是为了向后兼容以 session_type 为键的集成。新的集成应直接解析 chat_type,或解析 session_type_v2 以进行更精细的区分(请参阅下文的词汇演变)。

词汇演变

chat_type 和 session_type_v2 使用两种不同的词汇描述相同的底层聊天类型。CCAI Platform 会在每条记录中同时输出这两个字段,它们并非彼此的重复项:

  • chat_type 使用旧版枚举词汇表。“Messaging Inbound (App Chat)”和“Messaging (SMS)”等值描述了原始聊天类型类别。

  • session_type_v2 使用当前的枚举词汇。它可能会针对具有 v2 特定值的聊天类型引入更精细的区分。对于没有 v2 专属值的聊天类型,session_type_v2 会返回与 chat_type 相同的字符串。

新集成应解析 session_type_v2。每个字段的值均列在核心信息中。

附加字段

随着时间的推移,聊天会话元数据载荷可能会获得新的顶级字段、嵌套字段、数组项字段或枚举值。集成应忽略无法识别的键,并尽可能保留原始记录。避免在出现新属性时失败的严格解析。