Obiekty zdarzeń

Proste aktywatory i reguły możliwe do zainstalowania umożliwiają Apps Script uruchamianie funkcji automatycznie po wystąpieniu określonego zdarzenia. Po uruchomieniu aktywatora Apps Script przekazuje funkcję jako argument, zwykle nazywany e. Obiekt zdarzenia zawiera informacje o kontekście, który spowodował uruchomienie reguły. Na przykład w przykładowym kodzie poniżej widać prosty wyzwalacz onEdit(e) dla skryptu Arkuszy Google, który korzysta z obiektu zdarzenia do określenia, która komórka została zmieniona.

function onEdit(e){
  // Set a comment on the edited cell to indicate when it was changed.
  var range = e.range;
  range.setNote('Last modified: ' + new Date());
}

Na tej stronie znajdziesz szczegółowe informacje o polach obiektu zdarzenia w przypadku różnych typów aktywatorów.

Zdarzenia dotyczące Arkuszy Google

Różne reguły specyficzne dla Arkuszy Google umożliwiają skryptom reagowanie na działania użytkownika w arkuszu kalkulacyjnym.

Otwórz

(łatwy i możliwy do zainstalowania)
authMode

Wartość z wyliczenia ScriptApp.AuthMode.

LIMITED
source

Obiekt Spreadsheet reprezentujący plik Arkuszy Google, z którym powiązany jest skrypt.

Spreadsheet
triggerUid

Identyfikator reguły, która wywołała to zdarzenie (tylko reguły, które można zainstalować).

4034124084959907503
user

Obiekt User reprezentujący aktywnego użytkownika, jeśli jest dostępny (w zależności od złożonego zestawu ograniczeń zabezpieczeń).

amin@example.com

Zmień

(można zainstalować)
authMode

Wartość z wyliczenia ScriptApp.AuthMode.

FULL
changeType

Typ zmiany (EDIT, INSERT_ROW, INSERT_COLUMN, REMOVE_ROW, REMOVE_COLUMN, INSERT_GRID, REMOVE_GRID, FORMAT lub OTHER).

INSERT_ROW
source

Obiekt Spreadsheet reprezentujący plik Arkuszy Google, z którym powiązany jest skrypt.

Spreadsheet
triggerUid

Identyfikator aktywatora, który wywołał to zdarzenie.

4034124084959907503
user

Obiekt User reprezentujący aktywnego użytkownika, jeśli jest dostępny (w zależności od złożonego zestawu ograniczeń zabezpieczeń).

amin@example.com

Edytuj

(łatwy i możliwy do zainstalowania)
authMode

Wartość z wyliczenia ScriptApp.AuthMode.

LIMITED
oldValue

Wartość komórki sprzed edycji, jeśli miała miejsce. Dostępna tylko wtedy, gdy edytowany zakres to jedna komórka. Jeśli komórka nie miała poprzedniej treści, wartość nie jest zdefiniowana.

1234
range

Obiekt Range reprezentujący komórkę lub zakres komórek, które zostały edytowane.

Range
source

Obiekt Spreadsheet reprezentujący plik Arkuszy Google, z którym powiązany jest skrypt.

Spreadsheet
triggerUid

Identyfikator reguły, która wywołała to zdarzenie (tylko reguły, które można zainstalować).

4034124084959907503
user

Obiekt User reprezentujący aktywnego użytkownika, jeśli jest dostępny (w zależności od złożonego zestawu ograniczeń zabezpieczeń).

amin@example.com
value

Nowa wartość komórki po wprowadzeniu zmiany. Dostępna tylko wtedy, gdy edytowany zakres to jedna komórka.

10

Przesłanie formularza

(można zainstalować)
authMode

Wartość z wyliczenia ScriptApp.AuthMode.

FULL
namedValues

Obiekt zawierający nazwy i wartości pytań z przesłanego formularza.

{
  'First Name': ['Jane'],
  'Timestamp': ['6/7/2015 20:54:13'],
  'Last Name': ['Doe']
}
range

Obiekt Range reprezentujący komórkę lub zakres komórek, które zostały edytowane.

Range
triggerUid

Identyfikator aktywatora, który wywołał to zdarzenie.

4034124084959907503
values

Utwórz tablicę z wartościami w tej samej kolejności, w jakiej występują w arkuszu kalkulacyjnym.

['2015/05/04 15:00', 'amin@example.com', 'Bob', '27', 'Bill',
'28', 'Susan', '25']

Wydarzenia w Dokumentach Google

Wyzwalacze umożliwiają Dokumentom Google odpowiadanie, gdy użytkownik otworzy dokument.

Otwórz

(łatwy i możliwy do zainstalowania)
authMode

Wartość z wyliczenia ScriptApp.AuthMode.

LIMITED
source

Obiekt Document reprezentujący plik Dokumentów Google, z którym jest powiązany skrypt.

Document
triggerUid

Identyfikator reguły, która wywołała to zdarzenie (tylko reguły, które można zainstalować).

4034124084959907503
user

Obiekt User reprezentujący aktywnego użytkownika, jeśli jest dostępny (w zależności od złożonego zestawu ograniczeń zabezpieczeń).

amin@example.com

Wydarzenia w Prezentacjach Google

Wyzwalacze umożliwiają Prezentacjom Google odpowiadanie, gdy użytkownik otworzy prezentację.

Otwórz

(prosty)
authMode

Wartość z wyliczenia ScriptApp.AuthMode.

LIMITED
source

Obiekt Presentation reprezentujący plik Prezentacji Google, z którym jest powiązany skrypt.

Presentation
user

Obiekt User reprezentujący aktywnego użytkownika, jeśli jest dostępny (w zależności od złożonego zestawu ograniczeń zabezpieczeń).

amin@example.com

Wydarzenia dotyczące Formularzy Google

Wyzwalacze specyficzne dla Formularzy Google umożliwiają skryptom odpowiadanie, gdy użytkownik edytuje formularz lub prześle odpowiedź.

Otwórz

* (łatwy i możliwy do zainstalowania)
authMode

Wartość z wyliczenia ScriptApp.AuthMode.

LIMITED
source

Obiekt Form reprezentujący plik Formularzy Google, z którym jest powiązany skrypt.

Form
triggerUid

Identyfikator reguły, która wywołała to zdarzenie (tylko reguły, które można zainstalować).

4034124084959907503
user

Obiekt User reprezentujący aktywnego użytkownika, jeśli jest dostępny (w zależności od złożonego zestawu ograniczeń zabezpieczeń).

amin@example.com

* Zdarzenie to nie występuje wtedy, gdy użytkownik otworzy formularz w celu odpowiedzi, ale gdy edytor otworzy formularz, aby go zmodyfikować.

Przesłanie formularza

(można zainstalować)
authMode

Wartość z wyliczenia ScriptApp.AuthMode.

FULL
response

Obiekt FormResponse reprezentujący odpowiedź użytkownika na cały formularz.

FormResponse
source

Obiekt Form reprezentujący plik Formularzy Google, z którym jest powiązany skrypt.

Form
triggerUid

Identyfikator aktywatora, który wywołał to zdarzenie.

4034124084959907503

wydarzeniach w Kalendarzu Google.

Wyzwalacze kalendarza są uruchamiane po zaktualizowaniu (utworzeniu, zmodyfikowaniu lub usunięciu wydarzeń w kalendarzu użytkownika).

Te reguły nie informują o tym, które zdarzenie uległo zmianie ani jak się zmieniło. Zamiast tego wskazują, że kod musi przeprowadzać przyrostową synchronizację w celu pobrania ostatnich zmian w kalendarzu. Pełny opis tej procedury znajdziesz w przewodniku po synchronizowaniu zasobów dla interfejsu Calendar API.

Aby przeprowadzić synchronizację z Kalendarzem za pomocą Apps Script, wykonaj te czynności:

  1. Włącz zaawansowaną usługę Kalendarza w projekcie skryptu. Wbudowana usługa Kalendarza nie wystarcza do tego zadania.
  2. Określ, które kalendarze mają być synchronizowane. Dla każdego takiego kalendarza wykonaj operację wstępnej synchronizacji, korzystając z metody Events.list() w zaawansowanej usłudze Kalendarz.
  3. Wynik pierwszej synchronizacji zwróci wartość nextSyncToken dla tego kalendarza. Zapisz ten token do użytku w przyszłości.
  4. Gdy uruchomi się aktywator EventUpdated w języku Apps Script wskazujący zmianę wydarzenia w kalendarzu, wykonaj przyrostową synchronizację tego kalendarza, używając zapisanego identyfikatora nextSyncToken. Jest to zasadniczo kolejne żądanie Events.list(), ale podanie nextSyncToken ogranicza odpowiedź tylko do zdarzeń, które uległy zmianie od ostatniej synchronizacji.
  5. Sprawdź odpowiedź synchronizacji, by dowiedzieć się, które zdarzenia zostały zaktualizowane, i odpowiednio zareagować kod. Możesz na przykład zarejestrować zmianę, zaktualizować arkusz kalkulacyjny, wysłać e-maila z powiadomieniem lub wykonać inne działania.
  6. Zaktualizuj nextSyncToken zapisany dla tego kalendarza na identyfikator zwrócony przez przyrostowe żądanie synchronizacji. Wymusza to, że następna operacja synchronizacji zwróci tylko najnowsze zmiany.

EventUpdated

(można zainstalować)
authMode

Wartość z wyliczenia ScriptApp.AuthMode.

FULL
calendarId

Identyfikator kalendarza, w którym miała miejsce aktualizacja wydarzenia.

susan@example.com
triggerUid

Identyfikator aktywatora, który wywołał to zdarzenie.

4034124084959907503

Zdarzenia dotyczące dodatków do Google Workspace

Wyzwalacz onInstall() uruchamia się automatycznie, gdy użytkownik zainstaluje dodatek.

Zainstaluj

(prosty)
authMode

Wartość z wyliczenia ScriptApp.AuthMode.

FULL

Zdarzenia w aplikacji Google Chat

Więcej informacji o obiektach zdarzeń w Google Chat znajdziesz w artykule Odbieranie interakcji z aplikacją Google Chat i reagowanie na nie.

Zdarzenia na podstawie czasu

Reguły zależne od czasu (nazywane też wyzwalaczami zegara) umożliwiają wykonywanie skryptów o określonej godzinie lub cyklicznie.

Ograniczony czasowo (z możliwością instalacji)
authMode

Wartość z wyliczenia ScriptApp.AuthMode.

FULL
day-of-month

Między 1 a 31.

Ta nazwa właściwości zawiera łączniki, dlatego dostęp do niej należy uzyskać poprzez interfejs e['day-of-month'], a nie przez zapis kropki.

31
day-of-week

Od 1 (poniedziałek) do 7 (niedziela).

Ta nazwa właściwości zawiera łączniki, dlatego dostęp do niej należy uzyskać poprzez interfejs e['day-of-week'], a nie przez zapis kropki.

7
hour

Między 0 a 23.

23
minute

Między 0 a 59.

59
month

Między 1 a 12.

12
second

Między 0 a 59.

59
timezone

Strefa czasowa.

UTC
triggerUid

Identyfikator aktywatora, który wywołał to zdarzenie.

4034124084959907503
week-of-year

Między 1 a 52.

Ta nazwa właściwości zawiera łączniki, dlatego dostęp do niej należy uzyskać poprzez interfejs e['week-of-year'], a nie przez zapis kropki.

52
year

Rok.

2015