Google Workspace 插件的触发器

Apps 脚本触发器会在指定事件发生时执行指定的脚本函数(即触发函数)。只有特定事件才能触发触发器,并且每款 Google Workspace 应用支持的事件集各不相同。

当触发器触发时,系统会创建一个事件对象。此 JSON 结构包含有关所发生事件的详细信息。事件对象结构中的信息会根据触发器类型以不同的方式进行整理。

创建事件对象后,Apps 脚本会将其作为参数传递给触发函数。触发函数是一个回调函数,您必须自行实现该函数,以采取适当的措施来响应事件。例如,在扩展 Gmail 的 Google Workspace 插件中,您可以定义一个触发器,当用户打开邮件会话时,该触发器会创建一个新的卡片界面。在这种情况下,您将实现一个上下文回调函数,以使用 event 对象中传递的数据创建构成新界面的卡片。

本页面提供了有关在 Google Workspace 插件项目中使用触发器的指南。

清单触发器

与编辑器插件不同,Google Workspace 插件无法使用 Google Apps 脚本简单触发器。而是使用专门为 Google Workspace 加载项设计的触发器:清单触发器

清单触发器在 Google Workspace 插件清单中定义。例如:

  • 用于构建和显示插件首页的首页触发器
  • Google 日历活动打开触发器,用于在打开活动时显示新卡片或执行其他操作。
  • 日历 eventUpdate 触发器,可在用户修改并保存活动时显示新卡片或执行其他操作。
  • Google 云端硬盘 onItemsSelected 触发器,用于在用户选择文件或文件夹时显示新卡片或执行其他操作。
  • Gmail 撰写触发器,当用户在撰写窗口中打开插件时,该触发器会显示插件卡片。
  • Gmail 上下文触发器,可在用户打开邮件时显示新卡片或执行其他操作。
  • 编辑器 onFileScopeGranted 触发器,当用户授予文档中 drive.file OAuth 范围的授权时,该触发器会显示新卡片。

在列表中,只有首页触发器是非情境触发器;其余都是情境触发器。如需详细了解清单触发器定义,请参阅清单

除了清单触发器之外,Google Workspace 加载项还可以使用 Apps 脚本可安装的触发器

限制

清单触发器在使用方面存在某些限制。

  • 这些触发器仅在 Google Workspace 插件项目中使用。
  • 由于它们是在插件清单中定义的,而不是在代码中定义的,因此您无法使用 Apps 脚本的 Script 服务来创建或修改它们。
  • 无论内容如何,Gmail 上下文触发器都会针对每封电子邮件触发。
  • 每个插件只能针对每个用户、每个文档拥有一个触发器。