सामान्य ट्रिगर और
इंस्टॉल किए जा सकने वाले ट्रिगर की मदद से Apps Script, किसी खास इवेंट के होने पर अपने-आप
फ़ंक्शन चला पाता है. जब कोई ट्रिगर सक्रिय होता है, तो Apps Script, इवेंट ऑब्जेक्ट को आर्ग्युमेंट के तौर पर पास करता है. आम तौर पर, इसे e
कहा जाता है. इवेंट ऑब्जेक्ट में उस संदर्भ के बारे में जानकारी होती है
जिसकी वजह से ट्रिगर सक्रिय हुआ. उदाहरण के लिए, नीचे दिया गया सैंपल कोड, Google Sheets की स्क्रिप्ट के लिए एक आसान onEdit(e)
ट्रिगर दिखाता है. यह ट्रिगर इवेंट के ऑब्जेक्ट का इस्तेमाल करके, यह तय करता है कि कौनसा सेल बदला गया है.
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 |
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 Calendar इवेंट
किसी उपयोगकर्ता के कैलेंडर इवेंट अपडेट होने, बनाए जाने, बदलाव किए जाने या मिटाए जाने पर, कैलेंडर सक्रिय हो जाता है.
ये ट्रिगर आपको नहीं बताते कि कौनसा इवेंट बदला गया है या इसमें क्या बदलाव हुआ है. इसके बजाय, वे बताते हैं कि हाल ही में हुए बदलावों को कैलेंडर में पिक अप करने के लिए, आपके कोड को लगातार सिंक होने वाली कार्रवाई की ज़रूरत है. इस प्रोसेस के बारे में पूरी जानकारी पाने के लिए, Calendar के एपीआई को सिंक करने के बारे में जानकारी देने वाली गाइड देखें.
Apps Script में Calendar के साथ सिंक करने के लिए, यह तरीका अपनाएं:
- स्क्रिप्ट प्रोजेक्ट के लिए, कैलेंडर बेहतर सेवा चालू करें. इस वर्कफ़्लो के लिए, बिल्ट-इन कैलेंडर सेवा का इस्तेमाल करना काफ़ी नहीं है.
- तय करें कि क्या कैलेंडर सिंक किए जाने चाहिए. ऐसे हर कैलेंडर के लिए, Calendar की बेहतर सेवा और Event.list() तरीके का इस्तेमाल करके, एक सिंक करने की प्रोसेस करें.
- शुरुआती सिंक का नतीजा उस कैलेंडर के लिए
nextSyncToken
दिखाता है. बाद में इस्तेमाल करने के लिए, इस टोकन को सेव करें. - जब Apps Script
EventUpdated
ट्रिगर, कैलेंडर इवेंट में होने वाले बदलाव के बारे में बताता है, तो सेव किए गएnextSyncToken
का इस्तेमाल करके, उस कैलेंडर के लिए इंक्रीमेंटल सिंक करें. यह वाकई एक और events.list() अनुरोध है, लेकिनnextSyncToken
देने से सिर्फ़ उन इवेंट को रिस्पॉन्स मिलता है जो पिछली बार सिंक होने के बाद से बदले हैं. - सिंक के रिस्पॉन्स की जांच करें और देखें कि कौनसे इवेंट अपडेट किए गए थे. साथ ही, कोड को सही तरीके से जवाब देने के लिए कहें. उदाहरण के लिए, आप बदलाव लॉग कर सकते हैं, स्प्रेडशीट अपडेट कर सकते हैं, ईमेल सूचनाएं भेज सकते हैं या दूसरी कार्रवाइयां कर सकते हैं.
- आपने उस कैलेंडर के लिए जो
nextSyncToken
सेव किया है, उसे इंक्रीमेंटल सिंक अनुरोध के ज़रिए अपडेट करें. यह अगले सिंक ऑपरेशन को सिर्फ़ सबसे हाल के बदलावों पर वापस जाने के लिए मजबूर करता है.
इवेंट अपडेट किया गया(इंस्टॉल किया जा सकता है) |
|
---|---|
authMode |
FULL |
calendarId |
उस कैलेंडर का स्ट्रिंग आईडी जिसमें इवेंट अपडेट किया गया. susan@example.com |
triggerUid |
इस इवेंट को बनाने वाले ट्रिगर का आईडी. 4034124084959907503 |
ऐड-ऑन इवेंट
जब कोई उपयोगकर्ता ऐड-ऑन इंस्टॉल करता है, तो onInstall()
ट्रिगर अपने-आप चलने लगता है.
इंस्टॉल करें(आसान) |
|
---|---|
authMode |
FULL |
समय के हिसाब से होने वाले इवेंट
टाइम-ड्रिवन ट्रिगर (इन्हें घड़ी ट्रिगर भी कहा जाता है) की मदद से स्क्रिप्ट किसी खास समय पर या बार-बार होने वाले इंटरवल पर एक्ज़ीक्यूट हो सकती हैं.
समय के हिसाब से बनाए गए (इंस्टॉल किए जा सकने वाले) | |
---|---|
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 |