什么是消息扩展?
生成消息扩展时,会为跨 Microsoft 365 扩展的 Microsoft Teams 生成应用。 扩展应用可将其作为插件显示在 Microsoft Outlook 和 智能 Microsoft 365 Copilot 副驾驶® 中。
扩展Microsoft Teams 应用称为Microsoft 365 应用。 Microsoft 365 应用使用通用应用清单、应用打包格式以及用于为 Microsoft Teams 生成应用的开发人员和管理工具。
消息扩展是一项应用功能,它们使用机器人在用户和外部系统之间进行通信。
消息扩展功能
消息扩展的功能、它在用户界面中的显示方式以及它可以支持的交互在应用清单中定义。
命令和消息处理程序是消息扩展可以具有的功能。 消息扩展可以使用搜索和操作命令以及消息处理程序的组合。
有两种类型的命令:
- 搜索命令允许用户搜索外部系统,并将该搜索结果以卡的形式插入邮件中。
- 操作命令允许用户对 Teams 中的消息进行操作,并显示可用于收集或显示信息的模式弹出窗口。
当具有特定域的 URL 粘贴到撰写消息框中时,消息处理程序使消息扩展能够展开链接。
搜索命令
搜索命令用于搜索外部系统,并将结果作为格式丰富的卡片返回。 生成智能 Microsoft 365 Copilot 副驾驶®消息扩展插件时,需要一个包含消息扩展搜索命令的应用。
消息扩展的工作原理是什么?
消息扩展使用注册到 Bot Framework 的机器人在客户端和外部系统之间进行通信。
Bot Framework 是 Microsoft 提供的一个平台,可提供生成、测试、部署和管理机器人所需的工具和服务。
消息扩展由机器人资源、Microsoft Entra应用注册以及使用 Bot Framework SDK 处理用户交互的代码组成。
下图显示了消息扩展的高级结构:
机器人服务向 Bot Framework 注册机器人,并在用户与消息扩展交互时接收来自客户端的请求。 它将请求发送到包含机器人代码的 Web 服务。 Web 服务使用 Microsoft Entra 中的机器人应用注册凭据向机器人服务进行身份验证。 它从外部系统收集数据,并将数据返回给机器人服务,该服务将传递回客户端。
假设用户使用消息扩展启动搜索。 以下序列图显示了交互:
- 用户在客户端中打开消息扩展并输入搜索查询。
- 客户端通过通道终结点向机器人服务发送请求,其中包含有关用户查询的信息。
- 机器人服务向 Web 服务上公开的消息传送终结点发送请求,以处理用户查询。
- 消息传送终结点接收请求并调用机器人适配器。 机器人适配器使用机器人Microsoft Entra应用注册凭据来保护 Web 服务和机器人服务之间的通信。
- 机器人适配器对机器人活动处理程序类调用
OnTeamsMessageExtensionQuery
方法,该类包含用于处理传入请求的逻辑。 - 机器人活动处理程序从外部系统获取数据。 它创建一个
MessageExtensionResult
,其中包含外部数据作为格式丰富的卡片,并创建一个MessageExtensionResponse
,其中包含MessageExtensionResult
。 - 机器人适配器从机器人活动处理程序接收响应并创建 HTTP 响应。
- 消息传送终结点将响应返回到机器人服务。
- 机器人服务通过通道终结点将响应返回到消息扩展。
- 消息扩展在客户端中呈现响应,并向用户显示搜索结果。
无论你的消息扩展是支持搜索或操作命令,还是链接展开,都会出现相同的流。 机器人服务将请求转发到处理和响应该请求的 Web 服务。