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

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

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

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

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

Триггеры манифеста

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

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

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

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

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

Ограничения

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

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