טריגרים פשוטים וטריגרים שניתנים להתקנה מאפשרים ל-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());
}
בדף הזה מפורטים השדות באובייקט האירוע לסוגים שונים של טריגרים.
אירועים ב-Google Sheets
הטריגרים השונים שספציפיים ל-Google Sheets מאפשרים לסקריפטים להגיב לפעולות המשתמש בגיליון אלקטרוני.
פתוח(פשוט וניתן להתקנה) |
|
---|---|
authMode |
ערך מהטיפוסים בני LIMITED |
source |
אובייקט Spreadsheet |
triggerUid |
מזהה הטריגר שגרם לאירוע הזה (טריגרים שניתנים להתקנה בלבד). 4034124084959907503 |
user |
אובייקט amin@example.com |
שינוי(ניתן להתקנה) |
|
---|---|
authMode |
ערך מהטיפוסים בני FULL |
changeType |
סוג השינוי ( INSERT_ROW |
source |
אובייקט
Spreadsheet |
triggerUid |
המזהה של הטריגר שהפעיל את האירוע הזה. 4034124084959907503 |
user |
אובייקט amin@example.com |
עריכה(פשוט וניתן להתקנה) |
|
---|---|
authMode |
ערך מהטיפוסים בני LIMITED |
oldValue |
ערך התא לפני העריכה, אם יש. האפשרות הזו זמינה רק אם הטווח שנערך הוא תא יחיד. אם התא לא מכיל תוכן קודם, הוא לא יוגדר. 1234 |
range |
אובייקט Range |
source |
אובייקט Spreadsheet |
triggerUid |
מזהה הטריגר שגרם לאירוע הזה (טריגרים שניתנים להתקנה בלבד). 4034124084959907503 |
user |
אובייקט amin@example.com |
value |
ערך תא חדש לאחר העריכה. האפשרות הזו זמינה רק אם הטווח שנערך הוא תא יחיד. 10 |
טופס נשלח(ניתן להתקנה) |
|
---|---|
authMode |
ערך מהטיפוסים בני 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 |
ערך מהטיפוסים בני LIMITED |
source |
אובייקט Document |
triggerUid |
מזהה הטריגר שגרם לאירוע הזה (טריגרים שניתנים להתקנה בלבד). 4034124084959907503 |
user |
אובייקט amin@example.com |
אירועים ב-Google Slides
טריגרים מאפשרים ל-Google Slides להגיב כשמשתמש פותח מצגת.
פתוח(פשוט) |
|
---|---|
authMode |
ערך מהטיפוסים בני LIMITED |
source |
אובייקט Presentation |
user |
אובייקט amin@example.com |
אירועים ב-Google Forms
הטריגרים הספציפיים ל-Google Forms מאפשרים לסקריפטים להגיב כשמשתמש עורך טופס או שולח תשובה.
פתוח* (פשוט וניתן להתקנה) |
|
---|---|
authMode |
ערך מהטיפוסים בני LIMITED |
source |
אובייקט Form |
triggerUid |
מזהה הטריגר שגרם לאירוע הזה (טריגרים שניתנים להתקנה בלבד). 4034124084959907503 |
user |
אובייקט amin@example.com |
* האירוע הזה לא מתרחש כשמשתמש פותח טופס כדי להגיב, אלא כשעורך פותח את הטופס כדי לשנות אותו.
טופס נשלח(ניתן להתקנה) |
|
---|---|
authMode |
ערך מהטיפוסים בני FULL |
response |
אובייקט FormResponse |
source |
אובייקט Form |
triggerUid |
המזהה של הטריגר שהפעיל את האירוע הזה. 4034124084959907503 |
אירועים ביומן Google
האירועים ביומן של המשתמש מופעלים כאשר האירועים ביומן של המשתמש מתעדכנים (נוצרים, נערכו או נמחקו).
הטריגרים האלה לא מיידעים אתכם איזה אירוע השתנה או איך הוא השתנה. במקום זאת, הם מציינים שהקוד צריך לבצע פעולת סנכרון מצטברת כדי לזהות את השינויים האחרונים ביומן. תיאור מלא של התהליך מופיע במדריך לסנכרון משאבים ב-Google Calendar API.
כדי לסנכרן עם יומן Google ב-Apps Script, יש לבצע את השלבים הבאים:
- מפעילים את השירות המתקדם של יומן Google לפרויקט הסקריפט. שירות היומן המובנה לא מספיק לתהליך העבודה הזה.
- קבע אילו יומנים יש לסנכרן. בכל יומן כזה, צריך לבצע פעולת סנכרון ראשוני באמצעות השיטה Events.list() של השירות המתקדם ביומן Google.
- התוצאה של הסנכרון הראשוני מחזירה
nextSyncToken
עבור היומן הזה. אפשר לשמור את האסימון הזה לשימוש מאוחר יותר. - כשה-Apps Script
EventUpdated
מופעל ומעיד על שינוי באירוע ביומן, צריך לבצע סנכרון מצטבר של היומן המושפע באמצעותnextSyncToken
ששמור. למעשה, זוהי בקשת Events.list() נוספת, אבל אספקת הפקודהnextSyncToken
מגבילה את התגובה רק לאירועים שהשתנו מאז הסנכרון האחרון. - בדקו את התגובה לסנכרון כדי להבין אילו אירועים עודכנו וכדי שהקוד שלכם יגיב בהתאם. לדוגמה, תוכלו לתעד את השינוי, לעדכן גיליון אלקטרוני, לשלוח הודעות באימייל או לבצע פעולות אחרות.
- מעדכנים את
nextSyncToken
ששמרתם באותו יומן עם זה שהוחזר על ידי בקשת הסנכרון המצטברת. פעולה זו מאלצת את פעולת הסנכרון הבאה להחזיר רק את השינויים העדכניים ביותר.
EventUpdated(ניתן להתקנה) |
|
---|---|
authMode |
ערך מהטיפוסים בני
FULL |
calendarId |
מזהה המחרוזת של היומן שבו התרחש עדכון האירוע. susan@example.com |
triggerUid |
המזהה של הטריגר שהפעיל את האירוע הזה. 4034124084959907503 |
אירועים שקשורים לתוסף Google Workspace
הטריגר onInstall()
פועל באופן אוטומטי כשמשתמש מתקין תוסף.
התקנה(פשוט) |
|
---|---|
authMode |
ערך מהטיפוסים בני FULL |
אירועים באפליקציית Google Chat
במאמר קבלת אינטראקציות עם אפליקציית Google Chat ומענה עליהן מוסבר איך מגדירים אובייקטים של אירועים ב-Google Chat.
אירועים מבוססי-זמן
טריגרים מבוססי-זמן (שנקראים גם טריגרים לפי שעון) מאפשרים לסקריפטים לפעול בשעה מסוימת או במרווחי זמן קבועים.
מבוסס זמן (ניתן להתקנה) | |
---|---|
authMode |
ערך מהטיפוסים בני 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 |