有关组合 Office 加载项和 Teams 应用的一般指南
如果现有 Teams 应用和 Office 加载项具有密切相关或重叠的功能和工作负载,建议将它们合并到单个应用中。 这使用户和管理员能够将加载项和 Teams 应用作为一个单元获取和批准。 有关将外接程序和 Teams 应用组合在一起的应用示例,请参阅 折扣套餐示例。
注意
Outlook 加载项是可与 Teams 应用结合使用的唯一一种 Office 加载项。 我们正在努力支持 Excel、PowerPoint 和Word加载项的此功能。
由于以下原因,无法通过算法过程来合并外接程序和 Teams 应用:
- 算法必须对现有 Teams 应用的文件夹和文件结构做出假设。 但是,这些结构因用于创建应用项目的工具以及该工具的版本而异。 创建项目后,应用的开发人员可能已更改结构。
- 前面的项目符号也适用于外接程序项目。
- 算法必须对各种配置文件中的设置做出假设。 但是,这些设置也会因项目的创建方式和自创建以来对配置所做的更改而异。
- 算法必须假设 Web 应用程序的客户端源代码使用了哪种语言 TypeScript 或 JavaScript。
注意
除了这些项目符号外,还请注意,有两个 Web 应用程序框架的基本系列,其中可能已创建加载项或 Teams 应用。
IIS/.NET:
- 可以使用 Office 开发人员工具在 Visual Studio 中创建外接程序项目,在这种情况下,Web 应用程序部分基于 ASP.NET 和 Internet 信息服务器 (IIS) 。
- 可以使用适用于 Visual Studio 的 Teams 工具包在 Visual Studio 中创建 Teams 应用项目,在这种情况下,Web 应用程序部分是 Blazor/C# 应用程序。
Node.js server/JavaScript 或 TypeScript:
- 可以使用 Teams Toolkit for Visual Studio Code 创建外接程序项目。 在任一情况下,Web 应用程序都基于 Node.js,并使用 TypeScript 或 JavaScript 编写。
- 可以使用 Teams Toolkit for Visual Studio Code 在 Visual Studio Code 中创建 Teams 应用项目,在这种情况下,Web 应用程序基于 Node.js,并使用 TypeScript 或 JavaScript 编写。
Visual Studio 当前不支持外接程序项目中的统一清单,因此本文假定外接程序和 Teams 应用项目都基于 Node.js, 而不是 使用 Visual Studio 创建的。
但是,我们可以提出一些有关将外接程序与 Teams 应用组合在一起的常规建议。
了解组合的 Teams 应用和 Office 加载项的清单和结构
在开始合并两个现有扩展之前,请了解如何通过在 Teams 工具包中创建新的 Teams 应用和新加载项来合并这两种类型的扩展,然后按照将 Outlook 外接程序添加到 Teams 应用中 的说明将其合并。 请密切关注以下事项:
- 如何创建单个统一清单。
- 加载项和 Teams 应用的旁加载和调试方式的差异。
遵循适当的原则来组合 Teams 应用和加载项
准备好合并现有外接程序和 Teams 应用时,请遵循以下原则:
- 如果外接程序使用 XML 清单,请将其转换为使用 Microsoft 365 的统一清单,如 转换外接程序以使用 Microsoft 365 的统一清单 中所述,然后再将其与 Teams 应用合并。
- 使用 Teams 应用项目作为合并应用程序的基础项目。
- 将适用于加载项和 Teams 应用的配置文件保留在项目的根目录中。
- 将仅适用于 Teams 应用的源文件和配置文件移动到项目根目录下的子文件夹中。 同样,将仅由外接程序使用的源文件和配置文件从现有外接程序复制到组合项目根目录下的其他子文件夹中。
- 对加载项和 Teams 应用的生成文件使用相同的基域;例如,contoso.com。
- 将两个清单合并到单个清单中。 使用在步骤 1 中完成的过程作为指南。
- 新清单中的 id 属性应与原始 Teams 应用清单中的“id”属性的值相同。
- 提高 版本 属性的值;例如,将“1.0.0”提升为“1.1.0”。
- 将 extensions.alternates 属性添加到清单,并将其配置为在支持将外接程序与 Teams 应用组合在一起的 Office 版本中隐藏原始 Office 加载项。 有关详细信息,请参阅 管理外接程序的新旧版本。
发布组合的 Teams 应用和 Office 加载项
若要发布组合的应用,请将其视为 Teams 应用的更新。 有关详细信息,请参阅 将更新发布到应用。
发布更新后,更新对最终用户的可用方式会有所不同。 下面是一般原则。
注意
为了清楚“可用”的含义,请注意 Outlook 和 Microsoft 365 应用程序与 Teams 一样具有 应用栏 。 原则上,可以从这三个应用栏上任一应用栏上的“ 应用 ”或“ 更多应用 ”按钮安装“Teams 应用”。 已安装的“Teams 应用”可以从 (启动,也可以单独固定到) 这三个应用程序中的任何一个应用栏。 另一方面,独立 Outlook 加载项是通过 Outlook 功能区中的“ 所有应用” 按钮安装的。 而且,无论外接程序是独立还是合并到 Teams 应用中,加载项都会从 Outlook 功能区启动或自动启动,以响应打开的 Outlook 邮件或会议项目中的事件。 本部分的其余部分假设了这些事实。
如果Microsoft 365 管理员同意更新,则:
- 更新版本的 Teams 应用可 立即从 Outlook 中的应用或 更多应用 以及 Microsoft 365 应用程序(但 Teams 应用)提供给以前已获取 Teams 应用的用户。
- 以前已获取 Teams 应用的用户也立即可以使用 Outlook 加载项,无论他们以前是否也已获取过该加载项。
- 如果 Teams 管理员允许更新,则用户可以从 Teams 应用单独将其安装到 Teams。
如果管理员不同意,则以前获取 Teams 应用的每个用户都必须同意更新,并且只有在 Teams 管理员允许的情况下,才能在 Teams 中提供更新。
以前仅获取 Office 加载项的用户必须从 Teams 应用商店获取新的组合应用。 无法通过 Outlook 功能区中的“ 所有应用” 按钮获取它。
重要
具有某些较旧版本的 Office 的用户可能仍会看到旧版本的外接程序,即使在获取新的组合应用之后也是如此。 通常,仅可在 Microsoft 365 版本 2307 ( (内部版本 16626.20132) (版本 16626.20132) 及更高版本安装Microsoft 365 统一应用清单的外接程序。 但是,有两个例外,允许在旧版 Microsoft 365 和 Office 的永久许可证版本上安装这些加载项。
- 用户的Microsoft 365 管理员为所有用户部署加载项。
- 用户在 Outlook 网页版、新的 Outlook for Windows 或其他版本 2307 (内部版本 16626.20132) 或更高版本的 Microsoft 365 桌面客户端应用中安装加载项。 这使加载项在同一用户的其他 Office 客户端(包括旧版或永久许可证客户端)上可用。
将来,只需更新应用的新版本。