راهاندازهای ساده و تریگرهای قابل نصب به 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 | مقداری از 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 | مقدار سلول قبل از ویرایش، در صورت وجود. فقط در صورتی در دسترس است که محدوده ویرایش شده یک سلول باشد. اگر سلول محتوای قبلی نداشته باشد، تعریف نشده است. 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
راهاندازها به Google Slides اجازه میدهند زمانی که کاربر یک ارائه را باز میکند، پاسخ دهد.
باز کنید( ساده ) | |
---|---|
authMode | مقداری از enum LIMITED |
source | یک شیء Presentation |
user | یک شیء amin@example.com |
رویدادهای Google Forms
راهاندازهای خاص Google Forms به اسکریپتها اجازه میدهند زمانی که کاربر فرمی را ویرایش میکند یا پاسخی ارسال میکند، پاسخ دهند.
باز کنید* ( ساده و قابل نصب ) | |
---|---|
authMode | مقداری از enum LIMITED |
source | یک شی Form |
triggerUid | شناسه راهاندازی که این رویداد را ایجاد کرده است (فقط محرکهای قابل نصب). 4034124084959907503 |
user | یک شیء amin@example.com |
* این رویداد زمانی رخ نمیدهد که کاربر فرمی را برای پاسخ باز میکند، بلکه زمانی رخ میدهد که ویرایشگر فرم را برای تغییر آن باز میکند.
فرم ارسال کنید( قابل نصب ) | |
---|---|
authMode | مقداری از enum FULL |
response | یک شی FormResponse |
source | یک شی Form |
triggerUid | شناسه ماشه ای که این رویداد را ایجاد کرده است. 4034124084959907503 |
رویدادهای تقویم گوگل
هنگامی که رویدادهای تقویم کاربر به روز می شوند (ایجاد، ویرایش یا حذف می شوند)، تقویم فعال می شود.
این محرک ها به شما نمی گویند کدام رویداد تغییر کرده یا چگونه تغییر کرده است. در عوض، آنها نشان میدهند که کد شما باید یک عملیات همگامسازی افزایشی انجام دهد تا تغییرات اخیر در تقویم را دریافت کند. برای توضیح کامل این روش، به راهنمای منابع همگام سازی برای API تقویم مراجعه کنید.
برای همگام سازی با Calendar در Apps Script، مراحل زیر را انجام دهید:
- سرویس پیشرفته تقویم را برای پروژه اسکریپت فعال کنید. سرویس تقویم داخلی برای این گردش کار کافی نیست.
- تعیین کنید که چه تقویم هایی باید همگام شوند. برای هر یک از این تقویمها، یک عملیات همگامسازی اولیه را با استفاده از روش ()Events.list سرویس پیشرفته Calendar انجام دهید.
- نتیجه همگامسازی اولیه
nextSyncToken
را برای آن تقویم برمیگرداند. این توکن را برای استفاده بعدی ذخیره کنید. - وقتی برنامه Apps Script
EventUpdated
فعال میشود که نشاندهنده تغییر رویداد تقویم است، با استفاده ازnextSyncToken
ذخیرهشده، یک همگامسازی افزایشی برای تقویم آسیبدیده انجام دهید. این در اصل یکی دیگر از درخواست های Events.list() است، اما ارائهnextSyncToken
پاسخ را فقط به رویدادهایی که از آخرین همگام سازی تغییر کرده اند محدود می کند. - پاسخ همگامسازی را بررسی کنید تا بدانید چه رویدادهایی بهروزرسانی شدهاند و کد شما به درستی پاسخ میدهد. برای مثال، میتوانید تغییرات را ثبت کنید، صفحهگسترده را بهروزرسانی کنید، اعلانهای ایمیل ارسال کنید یا اقدامات دیگری انجام دهید.
-
nextSyncToken
را که برای آن تقویم ذخیره کرده اید با تقویمی که با درخواست همگام سازی افزایشی برگردانده شده است، به روز کنید. این عمل همگام سازی بعدی را مجبور می کند که فقط آخرین تغییرات را برگرداند.
رویداد به روز شد( قابل نصب ) | |
---|---|
authMode | مقداری از enum FULL |
calendarId | شناسه رشته تقویم که در آن بهروزرسانی رویداد رخ داده است. susan@example.com |
triggerUid | شناسه ماشه ای که این رویداد را ایجاد کرده است. 4034124084959907503 |
رویدادهای افزودنی Google Workspace
هنگامی که کاربر یک افزونه را نصب می کند ، onInstall()
به طور خودکار اجرا می شود.
نصب کنید( ساده ) | |
---|---|
authMode | مقداری از enum FULL |
رویدادهای برنامه چت Google
برای آشنایی با اشیاء رویداد در Google Chat، به دریافت و پاسخ به تعاملات با برنامه Google Chat خود مراجعه کنید.
رویدادهای زمان محور
تریگرهای مبتنی بر زمان (که محرک های ساعت نیز نامیده می شوند) به اسکریپت ها اجازه می دهند در یک زمان خاص یا در یک بازه زمانی تکرار شونده اجرا شوند.
زمان محور ( قابل نصب ) | |
---|---|
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 |