Триггеры для дополнений Google Workspace

Триггеры скриптов приложений вызывают выполнение указанной функции скрипта ( функции триггера ) всякий раз, когда происходит указанное событие. Только определенные события могут вызывать срабатывание триггеров, и каждое приложение Google Workspace поддерживает свой набор событий.

При срабатывании триггера создается объект события . Эта структура JSON содержит сведения о произошедшем событии. Информация в структуре объекта события организована по-разному в зависимости от типа триггера.

После создания объекта события Apps Script передает его в качестве параметра функции триггера. Функция триггера — это функция обратного вызова, которую вы должны реализовать самостоятельно, чтобы предпринять все необходимые действия для реагирования на событие. Например, в дополнении Google Workspace, расширяющем Gmail, вы можете определить триггер, который создает новый интерфейс карточек, когда пользователь открывает поток сообщений. В этом случае вы реализуете функцию контекстного обратного вызова для создания карточек, составляющих новый пользовательский интерфейс, с использованием данных, переданных в объекте события .

На этой странице приведены рекомендации по использованию триггеров в проектах дополнений Google Workspace.

Явные триггеры

В отличие от дополнений Editor, дополнения Google Workspace в настоящее время не могут использовать простые триггеры Apps Script. Вместо этого они используют триггеры, разработанные специально для дополнений Google Workspace: триггеры манифеста .

Триггеры манифеста полностью определены в манифесте надстройки Google Workspace. Примеры триггеров манифеста включают следующее:

  • Триггеры домашней страницы , которые создают и отображают домашнюю страницу дополнения.
  • Событие календаряОткрывает триггеры , которые отображают новую карточку или выполняют другие действия при открытии события календаря.
  • Триггеры обновления событий календаря , которые отображают новую карточку или выполняют другие действия, когда пользователь редактирует и сохраняет событие календаря.
  • Диск onItemsSelected запускает триггеры , которые отображают новую карточку или выполняют другие действия, когда пользователь выбирает один или несколько файлов или папок на Диске.
  • Триггеры Gmail Compose отображают карточку дополнения, когда пользователь открывает дополнение в окне Compose в Gmail.
  • Контекстные триггеры Gmail , которые отображают новую карточку или выполняют другие действия, когда пользователь открывает сообщение Gmail.
  • Editor onFileScopeGranted запускает триггеры , которые отображают новую карту, когда пользователи предоставляют авторизацию для области действия OAuth drive.file в текущем документе Editor.

В приведенном выше списке только триггеры домашней страницы являются неконтекстными; остальные являются контекстными триггерами. См. Manifest для получения дополнительной информации об определениях триггеров манифеста.

Помимо триггеров манифеста, надстройки Google Workspace также могут использовать устанавливаемые триггеры Apps Script.

Ограничения

Манифестные триггеры имеют определенные ограничения по использованию.

  • Эти триггеры используются только в проектах дополнений Google Workspace; в других приложениях они не используются.
  • Поскольку они определены в манифесте надстройки, а не в ее коде, вы не можете использовать службу Apps Script Script для создания или изменения этих триггеров.
  • Контекстные триггеры Gmail в настоящее время могут иметь только unconditional критерий. Это означает, что контекстные триггеры срабатывают для каждого сообщения электронной почты, независимо от его содержания.
  • Каждое дополнение может иметь только один триггер каждого типа на пользователя и на документ.