本页简要介绍了如何设计、构建和发布 Google Workspace 插件。本概要介绍了以下步骤:
- 确定您希望插件在哪些 Google Workspace 应用中供用户使用。
- 设置插件的项目,并选择所有者和协作者。
- 设计和配置插件的外观和行为。
- 构建插件。
- 验证插件的 OAuth 范围。
- 在一个或多个 Google Workspace 应用中测试插件。
- 发布插件。
您可以使用 Apps 脚本或 HTTP 构建插件。如需进行比较,请观看视频“Apps 脚本与 HTTP 端点:您应该选择哪个?🤔”。
选择 Google Workspace 宿主应用
您可以将 Google Workspace 插件配置为显示在以下 Google Workspace 宿主应用中:
- Gmail
- Google 日历
- Google Chat
- Google 文档
- Google 云端硬盘
- Google Meet
- Google 表格
- Google 幻灯片
如需了解如何为 Google Workspace 应用构建插件,请参阅 扩展 Google Workspace 界面。
设置插件的项目,并选择所有者和协作者
如果您使用 Apps 脚本构建插件,则需要同时创建 Apps 脚本项目和 Google Cloud 项目。如果您使用 Apps 脚本以外的语言构建插件,则只需创建 Google Cloud 项目。
在开始开发插件之前,请选择一个用户账号来 拥有这些项目,并确定哪些其他账号是协作者。项目的所有者负责创建和管理项目文件及相关设置,而协作者可以帮助进行编码和测试。
Apps 脚本项目
在构建插件之前,请查看 Apps 脚本 配额和限制,确保您的 项目设计符合这些准则。Apps 脚本最适合轻量级开发用户群较小的个人或内部插件。如果您预计要构建需要处理大量用户、需要低延迟或需要完全控制基础架构的大型 插件,请考虑在 其他运行时 环境中进行开发。
您可以在共享云端硬盘中构建插件的 Apps 脚本 项目文件,这样就不会有任何 单个账号拥有所有权。将插件脚本文件放在共享云端硬盘中可确保多个协作者有权访问该脚本项目。
发布插件时,单个用户账号将充当发布者。发布账号必须对脚本项目拥有修改权限,但不必是所有者。
如需创建 Apps 脚本项目,请参阅脚本项目。
Google Cloud 项目
我们建议您向插件的云项目添加协作者。这有助于确保团队中的某个人始终可以访问插件的 Cloud 设置。
如需创建 Google Cloud 项目,请参阅 创建 Google Cloud 项目。
设计和配置插件的外观和行为
在开始构建插件之前,请先确定您希望插件的外观和行为。考虑插件应尝试为哪些用例提供解决方案。首先从简单的设计入手,然后添加更多改进。
如需了解如何设计插件用户体验的准则,请参阅Google Workspace 插件样式指南。
配置插件清单
设计插件后,您就可以开始在插件清单中实现该设计。 您可以在清单中配置插件的大部分外观和行为,包括插件扩展的 Google Workspace 宿主应用。
如需了解详情,请参阅 Google Workspace 插件的清单。
在向插件添加代码和功能时,请根据需要修改清单,以生成所需的插件外观和行为。
配置 Google Chat 应用的外观和行为
如果您设计的插件扩展了 Google Chat,则必须使用 Google Chat API 来配置 Chat 应用的外观和 行为。如需了解相关步骤, 请参阅配置 Google Chat 应用。
构建插件
您必须为插件实现基于卡片的界面。如果您使用 Apps 脚本,请使用 Apps 脚本的 Card 服务;如果您使用其他代码语言,请返回 格式正确的 JSON,以便界面呈现为卡片。
您还必须实现插件清单中指定的任何 触发器 函数。如果您的 插件使用 OAuth 连接到第三方非 Google 服务 ,您还必须为该 服务配置 OAuth。
构建卡片
您可以通过创建
Card对象并使用
微件填充这些对象来定义插件界面。清单中指定的触发器函数必须返回单个
Card对象或
Card对象数组,这些对象表示
插件界面的不同“页面”。您的插件还可以创建和显示新卡片以响应用户操作。
在 Apps 脚本中,您可以使用
CardBuilder 类创建卡片。每张
卡片都需要一个 CardHeader
和一个或多个
CardSections。您应使用构成插件界面的各个微件填充每个卡片部分。互动
微件通常与
操作相关联以定义
其互动行为。
通过其
CardBuilder将所有部分和微件添加到卡片后,您必须调用
CardBuilder.build()
来创建相应的 Card 对象。
您可以使用其他 内置 Apps 脚本
服务(例如
CalendarApp)来检索
信息,以便在您构建的插件卡片中显示。
您可以使用从非 Google 服务提取的数据。
如果您的插件需要访问需要 OAuth 的非 Google API,您必须配置并连接到该服务 - 如需了解详情,请参阅 连接到非 Google 服务指南 。
构建顺序
构建卡片时,您必须从上到下构建。也就是说,您必须使用以下构建顺序:
- 构建微件。
- 将微件添加到卡片部分。
- 重复上述步骤,直到卡片部分包含所有微件。
- 将卡片部分添加到卡片。
这是必需的,因为当您向卡片或卡片部分添加微件时,实际上是在添加该微件的副本。 您在添加微件后对其所做的任何更改都不会反映在最终卡片中。
通用操作
您可以使用通用操作 来提供与上下文无关的功能。通用操作是插件界面中的菜单项,无论显示什么卡片,这些菜单项都可用。所有已定义的通用操作始终显示在插件的卡片菜单中。
如需了解详情,请参阅通用操作。
验证插件 OAuth 范围
范围定义了 插件可以代表用户执行哪些操作。最佳做法是,插件仅拥有其必须具备的操作范围,而不能拥有其他范围。
在插件项目中,请明确设置 插件 范围,以确保 插件使用尽可能少的权限范围集 。您可以在插件清单中定义插件使用的范围。
如需了解详情,请参阅范围。
测试插件
您可以先安装未发布的插件,然后测试该插件。 安装并获得授权后,您可以在自己的账号中使用该插件,并在其扩展的宿主应用中测试其外观和行为。您应验证插件在上下文和用户操作方面的行为是否符合预期。
如需开始测试插件,请参阅以下指南:
发布插件
发布插件后,其他人(公开或仅限您网域中的用户)即可使用该插件。在开始发布 流程之前,请务必查看发布概览。发布是一个复杂的过程,需要准备和时间才能完成。
Google Workspace 插件发布到 Google Workspace Marketplace。公开提供的 插件必须先完成应用审核,然后才能 发布。
如需了解详情,请参阅发布 Google Workspace 插件。