使用 Bot Framework 生成消息扩展
使用 Bot Framework 构建的消息扩展 (基于机器人) 使用 Web 服务作为机器人。 可以使用消息扩展使用户能够从 Teams 客户端的不同位置(例如撰写消息区域、命令框)与 Web 服务交互,或者直接从消息发送回结构化数据(如卡片)。
基于机器人的消息扩展利用 Bot Framework 的消息传送架构和安全通信协议。 机器人在 Teams 应用的应用清单中定义,你还可以为消息扩展定义不同类型的命令,例如操作命令或搜索命令。
消息扩展命令有两种类型:操作命令和搜索命令。 消息扩展命令类型定义可供 Web 服务使用的 UI 元素和交互流。 可以使用搜索命令或操作命令通过 Teams 中的机器人与 Web 服务交互。
邮件扩展搜索命令允许用户搜索外部系统,并将该搜索结果以卡的形式插入邮件中。 本文档指导你如何选择搜索命令调用位置,以及如何将搜索命令添加到应用清单。
注意
结果卡大小限制为 28 KB。 如果卡的大小超过 28 KB,则不会发送该卡。
请参阅以下视频,了解如何定义消息扩展搜索命令:
消息扩展中的搜索命令是使用 composeExtensions.commands
应用清单中的 属性和 query
类型配置的, (以前称为 Teams 应用清单) 。 命令和参数说明增强了消息扩展的可用性和有效性。 良好的命令说明提供对应用功能的清晰而简洁的摘要。
以下代码是定义搜索命令的属性示例 composeExtensions
:
{
"composeExtensions": [
{
"botId": "eccdf132-0900-4d36-936b-dec5e6357f11",
"commands": [
{
"id": "Dev",
"type": "query",
"title": "Jedi",
"description": "May the force be with you",
"initialRun": true,
"fetchTask": false,
"context": [
"commandBox",
"compose",
"message"
],
"parameters": [
{
"name": "Luke",
"title": "Skywalker",
"description": "Jedi master",
"inputType": "text"
}
]
}
],
"canUpdateConfiguration": true
}
],
参数
必须将以下参数添加到 composeExtensions.commands
对象数组:
属性名称 | 用途 | 是否必需? | 清单版本 |
---|---|---|---|
id |
分配给搜索命令的唯一 ID。 用户请求包含此 ID。 | 是 | 1.0 |
title |
命令名称。 此值显示在用户界面 (UI) 中。 | 是 | 1.0 |
description |
指示此命令执行的操作的帮助文本。 此值显示在 UI 中。 | 是 | 1.0 |
semanticDescription |
大型语言模型 (LLM) 使用的命令的语义说明。 | 否 | 1.17 |
type |
命令的类型。 默认值为“query ”。 |
否 | 1.4 |
initialRun |
如果此属性设置为 true,则表示应在用户在 UI 中选择此命令后立即执行此命令。 | 否 | 1.0 |
context |
可选的值数组,用于定义搜索操作可用的上下文。 可取值包括 message 、compose 或 commandBox 。 默认值为 compose 。commandBox 。 |
否 | 1.5 |
必须添加以下搜索参数详细信息,用于定义在 Teams 客户端中对用户可见的文本:
属性名称 | 用途 | 是否必需? | 最低清单版本 |
---|---|---|---|
parameters |
定义命令的参数的静态列表。 | 否 | 1.0 |
parameter.name |
描述参数的名称。 在 parameter.name 用户请求中将 发送到服务。 |
是 | 1.0 |
parameter.description |
描述参数的用途或必须提供的值的示例。 此值显示在 UI 中。 | 是 | 1.0 |
parameter.semanticDescription |
大型语言模型 (LLM) 使用的 参数的语义说明。 | 否 | 1.17 |
parameter.title |
简短的用户友好型参数标题或标签。 | 是 | 1.0 |
parameter.inputType |
设置为所需的输入类型。 可能的值包括 text 、、textarea 、number date 、time 、toggle 。 默认值设置为 text 。 |
否 | 1.4 |
parameters.value |
参数的初始值。 不支持值 | 否 | 1.5 |
有关详细信息,请参阅 应用清单架构。
邮件扩展作为 Copilot for Teams 会议的插件
适用于 Teams 会议的 Copilot 支持消息扩展插件。 将基于机器人的消息扩展插件扩展到会议可以增强 Copilot for Teams 会议。 Copilot for Teams 会议可以在会议期间利用各种应用功能,例如任务模块、应用共享等,以提高用户参与度和工作效率。 例如,可以在 Copilot for Teams 会议中使用插件来汇总讨论、生成笔记和列出任务。 它还通过启用与外部数据和自定义功能的实时交互来扩展传统插件的优势。
Copilot for Teams 会议是交互式且高效的,它可以帮助总结讨论、建议操作项以及实时提供无提示帮助。 用户可以向 Copilot for Teams 会议提出自然语言问题,并从插件获取与会议上下文相关的响应。 插件可供用户在 智能 Microsoft 365 Copilot 副驾驶® 和 Copilot for Teams 会议中启用。
优点 | 说明 |
---|---|
用户授权 | 扩展 Copilot for Teams 会议使用户能够执行各种操作来增强其会议体验。 |
UI 命令 | 用户可以轻松访问打开任务模块或将应用共享到阶段等功能。 |
搜索命令 | 可以从应用数据库高效检索数据,从而简化搜索过程。 |
应用场景 | 说明 |
---|---|
反应命令 | 用户可以直接命令 Copilot for Teams 会议执行特定操作或提供信息。 |
- 自然语言提示:用户可以指示适用于 Teams 会议的 Copilot 执行搜索命令。 | |
- 提示建议:应用可为 Copilot for Teams 会议执行提供静态或扩充提示。 | |
主动协助 | Copilot for Teams 会议主动侦听会议信号,并通过以下方式为用户提供帮助: |
- 建议来自应用的提示:基于讨论主题的上下文相关建议。 | |
- 在没有明确提示的情况下提供帮助:适用于 Teams 的 Copilot 会议可以根据讨论自动建议操作。 |