为 AI 智能体配置上下文变量

适用范围:仅限 Dynamics 365 Contact Center—独立版和 Dynamics 365 Customer Service

备注

Copilot Studio 机器人已重命名为 Copilot 智能体(智能体或 AI 智能体)。 人工代理现在更名为客户服务代表(服务代表或代表)。 在我们更新产品 UI、文档和培训内容时,您可能会遇到对新旧术语的引用。

本文列出了 Azure 和 Copilot 代理的上下文变量,以及如何在 Dynamics 365 Contact Center 中配置它们。 要了解如何创建上下文变量,请参阅管理上下文变量

Copilot 智能体的上下文变量

下表包含 Dynamics 365 Contact Center 中可用的上下文变量列表,可用于 配置 Copilot 代理

重要提示

  • 如果您安装扩展解决方案,某些变量更易于访问。
  • Copilot Studio 可以在对话期间异步接收变量。 这样,AI 智能体可以在对话期间使用 Contact Center 提供的自定义数据时,以低延迟问候用户。 在设计智能体时,考虑数据源和检索时间,因为来自 Dataverse 环境的信息可能会遇到延迟。 在变量定义中配置超时设置,以正确管理延迟到达数据。 在从外部源设置全局变量中了解详细信息。
上下文变量类型 上下文变量名称 描述 如何在 Copilot Studio 中映射
对话前调查 使用在 Dynamics 365 Contact Center 中创建的聊天前调查问题名称。 系统将对话前调查的响应存储为上下文变量。 使用以下信息将 Dynamics 365 Contact Center 中的问题名称与 Copilot Studio 中的变量类型映射:
  • 单行:用户的整个响应
  • 多行:用户的整个响应
  • 选项集:用户的整个响应
  • 用户同意:布尔值
聊天的自定义上下文 使用在 Dynamics 365 Contact Center 中创建的变量名称,或使用 setContextProvider API 传递。 您创建的自定义上下文变量可以通过实时聊天 SDK 传递。 使用以下信息将 Dynamics 365 Contact Center 中的自定义上下文变量与 Copilot Studio 中的变量类型映射:
  • 字符串:用户的整个响应
  • 布尔值:布尔值
  • 数字浮点数:数字
Direct Line 的自定义上下文 使用在 Dynamics 365 Contact Center 中创建的变量名称。 当 DirectLine 客户端启动会话时,可以作为 Activity.ChannelData.ConversationContext 中的键值对传递您创建的自定义上下文变量。 使用以下信息将 Dynamics 365 Contact Center 中的自定义上下文变量与 Copilot Studio 中的变量类型映射:
  • 字符串:用户的整个响应
  • 布尔值:布尔值
  • 数字浮点数:数字
通过工作分类规则设置的变量 使用在 Contact Center 管理中心创建的变量名称。 作为工作分类规则的一部分生成的自定义变量需要额外的处理时间来生成上下文。 为 AI 智能体中的工作分类上下文设置超时。 在从外部源设置全局变量中了解详细信息。 使用以下信息将 Dynamics 365 Contact Center 中的自定义上下文变量与 Copilot Studio 中的变量类型映射:
  • 字符串:用户的整个响应
  • 布尔值:布尔值
  • 数字浮点数:数字
对话 msdyn_ConversationId 使用包含持续对话的对话 ID 并且可以在 Microsoft Dataverse 中的记录上获取和执行操作的上下文变量。 字符串:用户的整个响应。
纯消息变量 msdyn_CustomerType 1 使用此上下文变量包含链接到对话的客户联系人记录的客户类型。 选择全渠道扩展解决方案变量。
msdyn_CustomerName 1 使用此上下文变量包含链接到对话的客户联系人记录的客户名称。 选择全渠道扩展解决方案变量。
msdyn_CustomerId 1 使用此上下文变量包含链接到对话的客户联系人记录的客户 ID。 选择全渠道扩展解决方案变量。
msdyn_CaseId 1 使用此上下文变量包含链接到对话的案例记录的 ID。 作为自动客户标识的一部分从 Dataverse 环境检索数据。 因此,AI 智能体在接收数据时可能会遇到延迟。 选择全渠道扩展解决方案变量。
msdyn_案例标题 1 使用此上下文变量包含链接到对话的案例记录的标题。 选择全渠道扩展解决方案变量。
msdyn_ChannelInstanceId 渠道实例记录的 Dataverse 唯一标识符,例如配置的聊天小组件Facebook 页面的唯一标识符。 字符串:用户的整个响应。
msdyn_WorkstreamId 与渠道实例关联的工作流程的 Dataverse 唯一标识符。 字符串:用户的整个响应。
msdyn_Locale 渠道实例上配置的区域设置代码,例如聊天小组件Facebook 页面。 这可用于多语言 Copilot Studio 智能体等场景。 字符串:用户的整个响应。
msdyn_SocialProfileId 与对话关联的社交配置文件的 Dataverse 记录唯一标识符。 字符串:用户的整个响应。
msdyn_LineCustomerName 来自 LINE API 的客户名称。 字符串:用户的整个响应。
msdyn_TeamsCustomerName Microsoft Teams 中的客户名称。 字符串:用户的整个响应。
msdyn_TeamsCustomerEmail 来自 Microsoft Teams 的电子邮件地址 (UPN)。 字符串:用户的整个响应。
msdyn_CapabilityList Apple Messages for Businesses 功能将值列为带分隔符的字符串。 字符串:用户的整个响应。
msdyn_AppleMessagesForBusinessGroupId Apple Messages for Businesses 组 ID。 字符串:用户的整个响应。
msdyn_AppleMessagesForBusinessIntentId Apple Messages for Businesses 意图 ID。 字符串:用户的整个响应。
msdyn_AppleMessagesForBusinessLocale Apple Messages for Businesses API 提供的区域设置。 字符串:用户的整个响应。
msdyn_AppleBusinessId 来自您的 Apple Messages for Business 帐户的业务 ID。 字符串:用户的整个响应。
msdyn_FacebookCustomerName Facebook 中的客户名称。 字符串:用户的整个响应。
msdyn_FacebookLocale 来自 Facebook 的客户的最终用户区域设置。 字符串:用户的整个响应。
msdyn_FacebookTimezone Facebook 中的客户时区。 字符串:用户的整个响应。
msdyn_FacebookUserPageScopedId 来自 Facebook 的客户特定于页面的用户 ID。 字符串:用户的整个响应。
msdyn_FacebookPageId Facebook 页面中的 PageID。 字符串:用户的整个响应。
msdyn_CustomerPhoneNumber 客户在 WhatsApp 和短信渠道中发短信的电话号码。 字符串:用户的整个响应。
msdyn_OrganizationPhoneNumber 从客户接收消息的电话号码(组织号码)。 请注意,这不会通过 Azure 通信服务在 WhatsApp 上传递。 字符串:用户的整个响应。
msdyn_WhatsAppCustomerFirstMessage 如果在 WhatsApp 通用链接中使用预填充的消息,则会在此变量中传递该信息。 字符串:用户的整个响应。
纯语音变量2 Activity.From.Name 将此上下文变量用于电话活动中的客户电话号码。 将此变量分配给对话开始主题中的全局变量。 在为 Copilot Studio 智能体配置上下文变量中了解详细信息。 从 Microsoft Copilot Studio 中选择系统变量。
Activity.Recipient.Name 将此上下文变量用于电话活动中的组织电话号码。 将此变量分配给对话开始主题中的全局变量。 在为 Copilot Studio 智能体配置上下文变量中了解详细信息。 从 Microsoft Copilot Studio 中选择系统变量。
扩展方法名称 va_SurveyConsent 使用此对话确定客户是否已同意在对话期间参与调查。 使用此方法将对话详细信息升级到 Dynamics 365 Contact Center。
va_CustomerLocale 使用此对话框将当前正在与智能体通话的用户转给另一个可以使用不同语言的智能体。 通过选择输入变量并使用正确的区域设置代码来设置代码。

1 要将其他上下文变量用于语音,可以从 Copilot Studio 获取这些变量。 有关详细信息,请参阅使用变量

为 Copilot 智能体配置上下文变量

若要让 Copilot 代理从 Dynamics 365 Contact Center 读取上下文变量,请执行以下步骤:

  1. 主题页上,选择从空白>添加主题。 使用未调用或已存在的主题,否则上下文变量将不起作用。

  2. 为主题输入名称,例如设置上下文变量,然后保存。

  3. 向主题添加新节点,然后选择变量管理 > 设置变量值

  4. 在新节点中,在设置变量下,选择创建新变量

  5. 通过选择新的变量名称打开变量属性窗格。 在窗格中,将变量名称设置为与全渠道上下文变量名称完全匹配(区分大小写)。

  6. 引用部分,选择垂直省略号,然后选择从此节点获取值(如果为空)。 Copilot Studio 智能体会在运行时从此节点获取变量值。

  7. 使用情况部分,选择全局(任何主题可以访问)外部源可以设置值,让 Copilot Studio 智能体接受来自全渠道的数据,此变量可在任何主题中使用。

  8. 如果您在变量中使用工作分类规则中的数据,请确保在变量定义中设置超时长度。 在从外部源设置全局变量中了解详细信息。

  9. 关闭变量属性窗格。

  10. 在您的节点中,在目标值中输入一个与智能体期望的数据类型相匹配的值。

    Copilot Studio 中主题中的上下文变量的屏幕截图。

  11. 保存并发布更改。

备注

只能从对话开始主题访问 Activity.From.Name 变量。 建议在对话开始主题中创建全局变量,将变量的值设置为 Activity.From.Name,然后在其他主题中使用全局变量。 这样,您可以访问 Copilot Studio 智能体的任何主题中的客户电话号码。

在对话期间,联系中心上下文变量中的数据在 Copilot Studio 变量中设置,可用于智能体的逻辑。

智能体还可以在对话期间设置全渠道上下文变量。 要在 Copilot Studio 逻辑中设置全渠道变量,请确保您的智能体使用正确的变量名,并在变量管理节点的“目标值”属性中设置值。 Copilot Studio 会在转给客户服务代表时将变量移给全渠道。 当智能体将对话升级到服务代表时,这通常用于将对话链接到案例。 有关如何从这些数据链接全渠道中的记录的更多信息:将客户和案例链接到对话

在 Copilot Studio 中创建的全局变量可以在升级对话时传递给 Dynamics 365 Contact Center。 有关完整列表,请参阅转交时可用的上下文变量

分析 JSON 对象以提取记录 ID

请确保您具有以下详细信息:

  • Dynamics 365 Contact Center 上下文变量,例如 msdyn_contact_msdyn_ocliveworkitem_Customer。
  • 架构详细信息。

示例架构详细信息的副本如下所示:

        Schema: 
        {
            "type": "array",
            "items": {
                "type": "object",
                "properties": {
                    "RecordId": {
                        "type": "string"
                    },
                    "PrimaryDisplayValue": {
                        "type": "string"
                    }
                },
                "required": [
                    "RecordId",
                    "PrimaryDisplayValue"
                ]
            }
        }

PrimaryDisplayValue 在 Dataverse 实体中包含属性中的值。 实体属性的映射如下所示:

  • 案例:案例标题
  • 联系人:全名
  • 客户:名称

下面是一个示例上下文记录。

{
    "msdyn_contact_msdyn_ocliveworkitem_Customer": [
        {
            "RecordId": "<GUID>",
            "PrimaryDisplayValue": "<FullName>"
        }
    ],
    "msdyn_liveworkitemid": "<GUID>"
}

Azure 智能体的上下文变量

下表包含 Dynamics 365 Contact Center 中可用于 配置 Azure 代理的上下文变量列表。

上下文变量类型 上下文变量名称 描述 如何在 Azure 中映射
对话前调查 使用在 Dynamics 365 Contact Center 中创建的聊天前调查问题名称。 系统将对话前调查的响应存储为上下文变量。 使用以下信息将 Dynamics 365 Contact Center 中的问题名称与 Azure 中的变量类型映射:
  • 单行:字符串
  • 多行:字符串
  • 选项集:字符串
  • 用户同意:布尔值
自定义上下文 使用在 Dynamics 365 Contact Center 中创建的变量名称,或使用 setContextProvider API 传递。 您创建的自定义上下文变量可以通过实时聊天 SDK 传递。 将用户的响应映射为 JSON ,以在 Dynamics 365 Contact Center 中使用自定义上下文变量。
Direct Line 的自定义上下文 使用在 Dynamics 365 Contact Center 中创建的变量名称 当 DirectLine 客户端启动会话时,可以作为 Activity.ChannelData.ConversationContext 中的键值对传递您创建的自定义上下文变量。 使用以下信息将 Dynamics 365 Contact Center 中的自定义上下文变量与 Copilot Studio 中的变量类型映射:
  • 字符串:用户的整个响应
  • 布尔值:布尔值
  • 数字浮点数:数字
对话 msdyn_ConversationId 使用包含持续对话的对话 ID 并且可以在 Microsoft Dataverse 中的记录上获取和执行操作的上下文变量。 字符串:字符串
联系人 msdyn_contact_msdyn_ocliveworkitem_Customer 使用包含链接到对话的客户(联系人)记录的记录 ID 的此上下文变量。 分析 JSON 以提取记录 ID
客户 msdyn_account_msdyn_ocliveworkitem_Customer 使用包含链接到对话的帐户记录的记录 ID 的此上下文变量。 分析 JSON 以提取记录 ID
案例 msdyn_incident_msdyn_ocliveworkitem 使用包含链接到对话的案例的记录 ID 的此上下文变量。 分析 JSON 以提取记录 ID
渠道实例 msdyn_ChannelInstanceId 渠道实例记录的 Dataverse 唯一标识符 – 例如配置的聊天小组件Facebook 页面的唯一标识符 字符串:用户的整个响应。
工作流 msdyn_WorkstreamId 与渠道实例关联的工作流程的 Dataverse 唯一标识符。 字符串:用户的整个响应。
渠道区域设置 msdyn_Locale 您的渠道实例上配置的区域设置代码。 例如,您的聊天小组件Facebook 页面。 这可用于多语言 Copilot Studio 智能体等场景。 字符串:用户的整个响应。
社区个人资料 msdyn_SocialProfileId 与对话关联的社交配置文件的 Dataverse 记录唯一标识符。 字符串:用户的整个响应。
Line 客户名称 msdyn_LineCustomerName 来自 LINE API 的客户名称。 字符串:用户的整个响应。
Teams 客户名称 msdyn_TeamsCustomerName Microsoft Teams 中的客户名称。 字符串:用户的整个响应。
Teams 客户电子邮件 msdyn_TeamsCustomerEmail 来自 Microsoft Teams 的电子邮件地址 (UPN)。 字符串:用户的整个响应。
Apple 功能列表 msdyn_CapabilityList Apple Messages for Businesses 功能将值列为带分隔符的字符串。 字符串:用户的整个响应。
Apple 组 ID msdyn_AppleMessagesForBusinessGroupId Apple Messages for Businesses 组 ID。 字符串:用户的整个响应。
Apple 意图 ID msdyn_AppleMessagesForBusinessIntentId Apple Messages for Businesses 意图 ID。 字符串:用户的整个响应。
Apple 区域设置 msdyn_AppleMessagesForBusinessLocale Apple Messages for Businesses API 提供的区域设置。 字符串:用户的整个响应。
苹果商务ID msdyn_AppleBusinessId 来自您的 Apple Messages for Business 帐户的业务 ID。 字符串:用户的整个响应。
Facebook 客户名称 msdyn_FacebookCustomerName Facebook 中的客户名称。 字符串:用户的整个响应。
Facebook 客户区域设置 msdyn_FacebookLocale 来自 Facebook 的客户的最终用户区域设置。 字符串:用户的整个响应。
Facebook 客户时区 msdyn_FacebookTimezone Facebook 中的客户时区。 字符串:用户的整个响应。
Facebook 客户页面范围 ID msdyn_FacebookUserPageScopedId 来自 Facebook 的客户特定于页面的用户 ID。 字符串:用户的整个响应。
Facebook 页面 ID msdyn_FacebookPageId Facebook 页面中的 PageID。 字符串:用户的整个响应。
客户电话号码 msdyn_CustomerPhoneNumber 客户在 WhatsApp 和短信渠道中发短信的电话号码。 字符串:用户的整个响应。
组织电话号码 msdyn_OrganizationPhoneNumber 从客户接收消息的电话号码(组织号码)。 请注意,这不会通过 Azure 通信服务在 WhatsApp 上传递 字符串:用户的整个响应。
WhatsApp 通用链接消息 msdyn_WhatsAppCustomerFirstMessage 如果在 WhatsApp 通用链接中使用预填充的消息,则会在此变量中传递该信息。 字符串:用户的整个响应。

备注

使用定义的上下文变量名称,并且在 Azure 或 Copilot Studio 智能体中创作流时不更改这些名称。 此外,请确保使用完全匹配将值传递给上下文变量,因为它区分大小写。 如果存在不匹配,则不会自动标识记录。 详细信息:自动识别记录

集成 Copilot Studio 智能体
集成 Azure 智能体
配置智能体以升级和结束对话
实时聊天 SDK 参考