构建 Google 日历界面

Google Workspace 插件可以提供自定义 在用户查看或编辑日历和日历活动时显示的界面。 这样,您就可以向用户提供其他相关信息, 任务,以及将第三方系统关联到 Google 日历。

在为 Google 日历构建插件界面时,您可以 首页。您可以使用 也可以为 Google 日历设计一个专门主页。

插件还可以定义一个界面,当用户 一个日历活动打开。

访问插件界面

根据打开方式,Google Workspace 插件可以定义首页界面、Google 日历活动界面、附件选择界面或同时定义这三种界面:

  • 如果用户在日历视图中点击插件图标,插件就会执行 相应的 calendar.homepageTrigger 函数(如果存在)。此函数构建并返回首页卡片 显示到 Google 日历。如果拒绝 calendar.homepageTrigger 函数,则会显示通用首页卡片。
  • 如果用户打开日历活动,然后点击插件图标,或者 当用户打开某个活动时,该插件也会打开 执行相应的 eventOpenTrigger 函数(如果存在)。此函数用于构建插件的日历活动 界面,然后返回到 Google 日历进行显示。
  • 如果该插件定义了 eventAttachmentTrigger 函数, 当用户在编辑日历活动时点击添加附件时,该插件会显示为附件提供程序。选择该插件后 eventAttachmentTrigger 函数用于构建插件的附件 并将其返回给 Google 日历进行显示。

构建日历插件界面

您可以使用 Google Workspace 插件:

  1. 确定您是否希望插件拥有日历专用 首页。 还要确定是否要在用户 编辑日历活动。
  2. 添加适当的 addOns.commonaddOns.calendar 并添加到插件脚本项目清单中 包括所需的任何范围
  3. 如果您要提供 Google 日历专用 首页、 实施 calendar.homepageTrigger 函数来构建此接口。您还可以选择使用 common.homepageTrigger 多个 Google Workspace 主机的专属界面。
  4. 如果您提供日历活动接口,则必须实现 calendar.eventOpenTrigger 函数来构建此接口。请参阅 扩展日历活动界面 了解详情。
  5. 实现相关回调函数,以响应用户的 界面交互,例如按钮点击。

日历首页

Google 日历支持显示 Google Workspace 插件首页。 要在 Google 日历中显示插件的公共主页,只需确保 是addOns.calendar 字段。

或者,添加 calendar.homepageTrigger 添加到插件清单中,以提供日历专用首页。

无论哪种情况,您都必须在 插件的脚本项目中。系统将自动调用此函数以构建 Google 日历首页。您必须实现此函数才能构建 并返回一个 CardCard 组成主页的对象。系统会向首页触发器函数传递 事件对象 作为参数,其中包含一些常规信息,例如,客户端的 平台。您可以使用事件对象数据来定制 首页。

扩展日历活动界面

Google 日历依靠内容相关触发器来确定 (如果有)在用户编辑日历活动时显示。当触发器触发 触发后,它会执行 calendar.eventOpenTrigger 字段。

您必须实现在 calendar.eventOpenTrigger 字段。此函数接受事件对象, 参数,并且必须返回单个 Card 对象或 Card 对象 会在用户打开活动时显示

事件对象

创建一个事件对象,并 传递给 calendar.eventOpenTrigger 在用户打开应用时触发的 日历活动。触发器函数可以使用此事件中的信息 对象,以确定如何构建插件卡片或控制插件 行为系统还会创建事件对象,并将其传递到 homepageTrigger 首次打开插件,以及用户点击或选择 互动微件

有关事件对象的完整结构,请参见 事件对象。 如果日历是插件的代理托管应用,则上下文触发器和 微件互动事件对象包括 日历活动对象 字段,其中包含日历特定的客户端信息。

更新日历活动

除了 calendar.eventOpenTrigger 在用户打开应用时触发 可编辑的日历活动,那么您也可以定义 calendar.eventUpdateTrigger 在用户更新和保存日历活动时触发。仅限此触发器 在用户进行以下一项或多项修改时触发:

  • 添加一位或多位参加者。
  • 删除一位或多位参加者。
  • 添加或切换到其他会议解决方案。

当此触发器触发时,它会执行 指定的触发器函数 calendar.eventUpdateTrigger 清单字段。该函数在 日历活动修改设置之前执行, 已保存。

calendar.eventUpdateTrigger 通常用于执行以下一项或多项操作:

  • 更新插件的日历活动界面以响应用户更改 添加到日历活动。
  • 将日历活动数据与第三方系统(例如会议)同步 Google 日历中的 Google 日历应用。

如果您需要使用插件来调整日历活动的数据(例如 作为其参加者列表),则必须将该插件设置为 calendar.currentEventAccess 设置为 WRITEREAD_WRITE。这也 要求该插件 https://www.googleapis.com/auth/calendar.addons.current.event.write 作用域

添加会议解决方案

会议解决方案 表示用户可以附加到 Google 日历活动。通过 第三方会议概览 文档详细介绍了如何构建可添加新 会议解决方案没有必要为此类应用构建界面 扩展程序;添加的解决方案会以选项的形式显示在 Google 日历活动界面中。