Obiekty zdarzeń

Proste aktywatory i aktywatory z możliwością zainstalowania umożliwiają automatyczne uruchamianie funkcji w przypadku wystąpienia określonego zdarzenia. Gdy zostanie uruchomiony jakiś element, Apps Script przekazuje funkcji obiekt zdarzenia jako argument, zwykle o nazwie e. Obiekt zdarzenia zawiera informacje o kontekście, który spowodował uruchomienie reguły. Przykładowy kod poniżej pokazuje prosty onEdit(e)wyzwalacz dla skryptu Google Sheets, który używa obiektu zdarzenia do określenia, która komórka została zmodyfikowana.

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 znajdują się szczegółowe informacje o polach obiektu zdarzenia związanych z różnymi typami aktywatorów.

zdarzenia w Arkuszach Google,

Różne reguły związane z Arkuszami Google umożliwiają skryptom reagowanie na działania użytkownika w arkuszu kalkulacyjnym.

Otwórz

(proste i możliwe do zainstalowania)
authMode

Wartość z wyliczenia w ScriptApp.AuthMode.

LIMITED
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 (tylko aktywatory możliwe do zainstalowania).

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żliwość zainstalowania)
authMode

Wartość z typu enum 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 spowodował 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

(proste i możliwe do zainstalowania)
authMode

Wartość z wyliczenia w ScriptApp.AuthMode.

LIMITED
oldValue

Wartość komórki sprzed zmiany (jeśli miała miejsce). Ta opcja jest dostępna tylko wtedy, gdy edytowany zakres to jedna komórka. Będzie nieokreślony, jeśli komórka nie miała wcześniej treści.

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, do którego jest powiązany skrypt.

Spreadsheet
triggerUid

Identyfikator reguły, która spowodowała to zdarzenie (tylko reguły instalowane).

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. Ta opcja jest dostępna tylko wtedy, gdy edytowany zakres to jedna komórka.

10

Przesłanie formularza

(możliwość zainstalowania)
authMode

Wartość z wyliczenia w 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 reguły, która wywołała to zdarzenie.

4034124084959907503
values

Tablica 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']

Zdarzenia Dokumentów Google

Reguły umożliwiają Dokumentom Google reagowanie, gdy użytkownik otworzy dokument.

Otwórz

(prosty i możliwy do zainstalowania)
authMode

Wartość z typu enum ScriptApp.AuthMode.

LIMITED
source

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

Document
triggerUid

Identyfikator aktywatora, który wywołał to zdarzenie (tylko aktywatory możliwe do zainstalowania).

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

Zdarzenia w Prezentacjach Google

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

Otwórz

(proste)
authMode

Wartość z typu enum ScriptApp.AuthMode.

LIMITED
source

Obiekt Presentation reprezentujący plik Prezentacji Google, do którego 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

zdarzenia w Formularzach Google,

Dzięki wyzwalaczom dotyczącym formularzy Google skrypty mogą reagować, gdy użytkownik edytuje formularz lub przesyła odpowiedź.

Otwórz

* (proste i możliwe do zainstalowania)
authMode

Wartość z wyliczenia w ScriptApp.AuthMode.

LIMITED
source

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

Form
triggerUid

Identyfikator aktywatora, który wywołał to zdarzenie (tylko aktywatory możliwe do zainstalowania).

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

* To zdarzenie nie występuje, gdy użytkownik otwiera formularz, aby przesłać odpowiedź, ale gdy edytor otwiera formularz, aby go zmodyfikować.

Przesłanie formularza

(możliwość zainstalowania)
authMode

Wartość z typu enum ScriptApp.AuthMode.

FULL
response

Obiekt FormResponse, który reprezentuje odpowiedź użytkownika na formularz jako całość.

FormResponse
source

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

Form
triggerUid

Identyfikator reguły, która wywołała to zdarzenie.

4034124084959907503

wydarzeniach w Kalendarzu Google;

Kalendarz uruchamia akcje, gdy wydarzenia w kalendarzu użytkownika są aktualizowane (tworzone, edytowane lub usuwane).

Nie informują one, które zdarzenie uległo zmianie ani jak to się zmieniło. Zamiast tego wskazują, że Twój kod musi wykonać operację synchronizacji przyrostowej, aby pobrać ostatnie zmiany w kalendarzu. Pełny opis tej procedury znajdziesz w przewodniku po synchronizowaniu zasobów dotyczącym interfejsu Calendar API.

Aby zsynchronizować z Kalendarzem w Apps Script, wykonaj te czynności:

  1. Włącz zaawansowaną usługę Kalendarz w projekcie skryptu. Wbudowana usługa Kalendarz nie wystarcza do tego procesu.
  2. Określ, które kalendarze mają być synchronizowane. W przypadku każdego takiego kalendarza wykonaj pierwszą synchronizację za pomocą metody Events.list() zaawansowanej usługi Kalendarza.
  3. Wynik początkowej synchronizacji zwraca nextSyncToken dla tego kalendarza. Zapisz ten token na później.
  4. Gdy włączy się wyzwalacz Apps Script EventUpdated wskazujący na zmianę zdarzenia w kalendarzu, przeprowadź synchronizację przyrostową kalendarza, którego dotyczy problem, przy użyciu przechowywanej wartości nextSyncToken. Zasadniczo jest to inne żądanie Events.list(), ale podanie nextSyncToken ogranicza odpowiedź tylko do tych zdarzeń, które zmieniły się od ostatniej synchronizacji.
  5. Sprawdź odpowiedź synchronizacji, aby dowiedzieć się, które zdarzenia zostały zaktualizowane, i odpowiednio zareaguj kodem. Możesz na przykład odnotować zmianę, zaktualizować arkusz kalkulacyjny, wysłać powiadomienia e-mailem lub wykonać inne czynności.
  6. Zaktualizuj pole nextSyncToken zapisane w danym kalendarzu, korzystając z wartości zwróconej przez żądanie synchronizacji przyrostowej. Wymusza to, aby następna operacja synchronizacji zwróciła tylko najnowsze zmiany.

EventUpdated

(możliwość zainstalowania)
authMode

Wartość z wyliczenia ScriptApp.AuthMode.

FULL
calendarId

Identyfikator ciągu znaków kalendarza, w którym nastąpiła aktualizacja zdarzenia.

susan@example.com
triggerUid

Identyfikator reguły, która wywołała to zdarzenie.

4034124084959907503

Zdarzenia dodatku do Google Workspace

Reguła onInstall() działa automatycznie, gdy użytkownik zainstaluje dodatek.

Zainstaluj

(proste)
authMode

Wartość z wyliczenia w ScriptApp.AuthMode.

FULL

Zdarzenia w aplikacji Google Chat

Więcej informacji o obiektach zdarzeń w Google Chat znajdziesz w artykule Otrzymywanie i odpowiadanie na interakcje z aplikacją Google Chat.

Zdarzenia związane z czasem

Reguły oparte na czasie (nazywane też wyzwalaczami zegara) pozwalają na wykonywanie skryptów o określonej godzinie lub w powtarzających się odstępach czasu.

Ograniczony czasowo (możliwy do zainstalowania)
authMode

Wartość z typu enum ScriptApp.AuthMode.

FULL
day-of-month

Od 1 do 31.

Ponieważ nazwa tej właściwości zawiera łączniki, dostęp do niej musi być uzyskiwany za pomocą znaku e['day-of-month'], a nie kropki.

31
day-of-week

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

Ta nazwa usługi zawiera myślniki, więc aby ją otworzyć, użyj właściwości e['day-of-week'], a nie notacji kropki.

7
hour

Od 0 do 23.

23
minute

Od 0 do 59.

59
month

Od 1 do 12.

12
second

Od 0 do 59.

59
timezone

Strefa czasowa.

UTC
triggerUid

Identyfikator aktywatora, który spowodował to zdarzenie.

4034124084959907503
week-of-year

Od 1 do 52.

Ponieważ nazwa tej właściwości zawiera łączniki, dostęp do niej musi być uzyskiwany za pomocą znaku e['week-of-year'], a nie kropki.

52
year

Rok.

2015