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

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

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

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

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

Манифестные триггеры

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

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

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

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

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

Ограничения

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

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