טריגרים פשוטים וטריגרים שאפשר להתקין מאפשרים ל-Apps Script להפעיל פונקציה באופן אוטומטי אם מתרחש אירוע מסוים. כשמופעל טריגר, Apps Script מעביר לפונקציה אובייקט אירוע כארגומנט, שבדרך כלל נקרא e
. אובייקט האירוע מכיל מידע על ההקשר שגרם להפעלת הטריגר. לדוגמה, בקוד לדוגמה שבהמשך מוצג טריגר פשוט של onEdit(e)
לסקריפט של Google Sheets שמשתמש באובייקט האירוע כדי לקבוע איזו תא נערך.
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());
}
בדף הזה מפורטים השדות באובייקט event לסוגים שונים של טריגרים.
אירועים ב-Google Sheets
הטריגרים השונים שספציפיים ל-Google Sheets מאפשרים לסקריפטים להגיב לפעולות של משתמש בגיליון אלקטרוני.
פתיחה(פשוט וניתן להתקנה) |
|
---|---|
authMode |
ערך מתוך ה-enum LIMITED |
source |
אובייקט Spreadsheet |
triggerUid |
מזהה הטריגר שיצר את האירוע הזה (רק טריגרים שאפשר להתקין). 4034124084959907503 |
user |
אובייקט amin@example.com |
שינוי(ניתן להתקנה) |
|
---|---|
authMode |
ערך מתוך ה-enum FULL |
changeType |
סוג השינוי ( INSERT_ROW |
source |
אובייקט
Spreadsheet |
triggerUid |
מזהה הטריגר שיצר את האירוע הזה. 4034124084959907503 |
user |
אובייקט amin@example.com |
עריכה(פשוט וניתן להתקנה) |
|
---|---|
authMode |
ערך מתוך ה-enum LIMITED |
oldValue |
הערך של התא לפני העריכה, אם יש כזה. האפשרות הזו זמינה רק אם הטווח שנערך הוא תא בודד. הערך יהיה undefined אם לתא לא היה תוכן קודם. 1234 |
range |
אובייקט Range |
source |
אובייקט Spreadsheet |
triggerUid |
מזהה הטריגר שיצר את האירוע הזה (רק טריגרים שאפשר להתקין). 4034124084959907503 |
user |
אובייקט amin@example.com |
value |
הערך החדש של התא אחרי העריכה. האפשרות הזו זמינה רק אם הטווח שנערך הוא תא בודד. 10 |
שליחת טופס(ניתן להתקנה) |
|
---|---|
authMode |
ערך מתוך ה-enum FULL |
namedValues |
אובייקט שמכיל את שמות השאלות והערכים מהטופס שנשלח. { 'First Name': ['Jane'], 'Timestamp': ['6/7/2015 20:54:13'], 'Last Name': ['Doe'] } |
range |
אובייקט Range |
triggerUid |
מזהה הטריגר שיצר את האירוע הזה. 4034124084959907503 |
values |
מערך עם ערכים באותו סדר שבו הם מופיעים בגיליון האלקטרוני. ['2015/05/04 15:00', 'amin@example.com', 'Bob', '27', 'Bill', '28', 'Susan', '25'] |
אירועים ב-Google Docs
טריגרים מאפשרים ל-Google Docs להגיב כשמשתמש פותח מסמך.
פתיחה(פשוט וניתן להתקנה) |
|
---|---|
authMode |
ערך מתוך ה-enum LIMITED |
source |
אובייקט Document |
triggerUid |
מזהה הטריגר שיצר את האירוע הזה (רק טריגרים שאפשר להתקין). 4034124084959907503 |
user |
אובייקט amin@example.com |
אירועים ב-Google Slides
טריגרים מאפשרים ל-Google Slides להגיב כשמשתמש פותח מצגת.
פתיחה(פשוט) |
|
---|---|
authMode |
ערך מתוך ה-enum LIMITED |
source |
אובייקט Presentation |
user |
אובייקט amin@example.com |
אירועים ב-Google Forms
הטריגרים הספציפיים ל-Google Forms מאפשרים לסקריפטים להגיב כשמשתמש עורך טופס או שולח תשובה.
פתיחה* (simple and installable) |
|
---|---|
authMode |
ערך מתוך ה-enum LIMITED |
source |
אובייקט Form |
triggerUid |
מזהה הטריגר שיצר את האירוע הזה (רק טריגרים שאפשר להתקין). 4034124084959907503 |
user |
אובייקט amin@example.com |
* האירוע הזה לא מתרחש כשמשתמש פותח טופס כדי להשיב עליו, אלא כשעורך פותח את הטופס כדי לשנות אותו.
שליחת טופס(ניתן להתקנה) |
|
---|---|
authMode |
ערך מתוך ה-enum FULL |
response |
אובייקט FormResponse |
source |
אובייקט Form |
triggerUid |
מזהה הטריגר שיצר את האירוע הזה. 4034124084959907503 |
אירועים ביומן Google
טריגרים של יומן מופעלים כשאירועים ביומן של משתמש מתעדכנים (נוצרים, נערכים או נמחקים).
הטריגרים האלה לא מציינים איזה אירוע השתנה או איך הוא השתנה. במקום זאת, הם מציינים שהקוד צריך לבצע פעולת סנכרון מצטברת כדי לאסוף שינויים שבוצעו לאחרונה ביומן. תיאור מלא של התהליך הזה מופיע במדריך לסנכרון משאבים של Calendar API.
כדי לסנכרן עם היומן ב-Apps Script, מבצעים את השלבים הבאים:
- מפעילים את השירות המתקדם של יומן Google בפרויקט הסקריפט. שירות היומן המובנה לא מספיק לתהליך העבודה הזה.
- קובעים אילו יומנים צריך לסנכרן. לכל יומן כזה, מבצעים פעולת סנכרון ראשוני באמצעות השיטה Events.list() של השירות המתקדם של היומן.
- התוצאה של הסנכרון הראשוני היא
nextSyncToken
עבור היומן הזה. שומרים את האסימון הזה לשימוש מאוחר יותר. - כשמופעל טריגר של Apps Script
EventUpdated
שמציין שינוי באירוע ביומן, צריך לבצע סנכרון מצטבר של היומן המושפע באמצעותnextSyncToken
המאוחסן. זוהי למעשה בקשה נוספת של Events.list(), אבל ציון הערךnextSyncToken
מגביל את התשובה רק לאירועים שהשתנו מאז הסנכרון האחרון. - בודקים את התגובה של הסנכרון כדי לדעת אילו אירועים עודכנו, ודואגים שהקוד יגיב בהתאם. לדוגמה, אפשר לתעד את השינוי, לעדכן גיליון אלקטרוני, לשלוח התראות באימייל או לבצע פעולות אחרות.
- מעדכנים את
nextSyncToken
ששמרתם עבור היומן הזה עם הערך שמוחזר מבקשת הסנכרון המצטבר. הפעולה הזו מאלצת את פעולת הסנכרון הבאה להחזיר רק את השינויים העדכניים ביותר.
EventUpdated(ניתן להתקנה) |
|
---|---|
authMode |
ערך מתוך ה-enum FULL |
calendarId |
מזהה המחרוזת של היומן שבו בוצע עדכון האירוע. susan@example.com |
triggerUid |
מזהה הטריגר שיצר את האירוע הזה. 4034124084959907503 |
אירועים של תוספים ל-Google Workspace
הטריגר onInstall()
מופעל באופן אוטומטי כשמשתמש מתקין תוסף.
התקנה(פשוט) |
|
---|---|
authMode |
ערך מתוך ה-enum FULL |
אירועים באפליקציית Google Chat
מידע על אובייקטים של אירועים ב-Google Chat זמין במאמר קבלת אינטראקציות עם אפליקציית Google Chat והגבה להן.
אירועים מבוססי-זמן
טריגרים מבוססי-זמן (נקראים גם טריגרים של שעון) מאפשרים להריץ סקריפטים בזמן מסוים או במרווחי זמן חוזרים.
Time-driven (installable) | |
---|---|
authMode |
ערך מתוך ה-enum FULL |
day-of-month |
בין מכיוון ששם המאפיין הזה מכיל מקפים, צריך לגשת אליו באמצעות 31 |
day-of-week |
בין מכיוון ששם המאפיין הזה מכיל מקפים, צריך לגשת אליו באמצעות 7 |
hour |
בין 23 |
minute |
בין 59 |
month |
בין 12 |
second |
בין 59 |
timezone |
אזור הזמן. UTC |
triggerUid |
מזהה הטריגר שיצר את האירוע הזה. 4034124084959907503 |
week-of-year |
בין מכיוון ששם המאפיין הזה מכיל מקפים, צריך לגשת אליו באמצעות 52 |
year |
השנה. 2015 |