सिंपल ट्रिगर और इंस्टॉल किए जा सकने वाले ट्रिगर की मदद से, Google 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());
}
इस पेज पर, अलग-अलग तरह के ट्रिगर के लिए इवेंट ऑब्जेक्ट में मौजूद फ़ील्ड के बारे में बताया गया है.
इंस्टॉल किए जा सकने वाले ट्रिगर से जनरेट होने वाले इवेंट में triggerUid होता है. इससे यह पता चलता है कि इवेंट किस ट्रिगर से जनरेट हुआ है. इससे उन स्क्रिप्ट को मदद मिलती है जिनमें इंस्टॉल किए जा सकने वाले कई ट्रिगर होते हैं.
Google Sheets इवेंट
Google Sheets के लिए उपलब्ध अलग-अलग ट्रिगर की मदद से, स्क्रिप्ट को स्प्रेडशीट में उपयोगकर्ता की कार्रवाइयों का जवाब देने की अनुमति मिलती है.
खोलें(simple and installable) |
|
|---|---|
authMode |
LIMITED |
source |
यह एक Spreadsheet |
triggerUid |
उस ट्रिगर का आईडी जिसने इस इवेंट को जनरेट किया है. यह सिर्फ़ इंस्टॉल किए जा सकने वाले ट्रिगर के लिए है. 4034124084959907503 |
user |
amin@example.com |
बदलें(इंस्टॉल किया जा सकता है) |
|
|---|---|
authMode |
FULL |
changeType |
बदलाव का टाइप ( INSERT_ROW |
source |
यह
Spreadsheet |
triggerUid |
इस इवेंट को जनरेट करने वाले ट्रिगर का आईडी. 4034124084959907503 |
user |
amin@example.com |
बदलाव करें(simple and installable) |
|
|---|---|
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 इवेंट
ट्रिगर की मदद से, Docs को यह पता चलता है कि जब कोई उपयोगकर्ता कोई दस्तावेज़ खोलता है, तो उसे क्या जवाब देना है.
खोलें(simple and installable) |
|
|---|---|
authMode |
LIMITED |
source |
Document |
triggerUid |
उस ट्रिगर का आईडी जिसने इस इवेंट को जनरेट किया है. यह सिर्फ़ इंस्टॉल किए जा सकने वाले ट्रिगर के लिए है. 4034124084959907503 |
user |
amin@example.com |
Google Slides इवेंट
ट्रिगर की मदद से, Slides को यह पता चलता है कि जब कोई उपयोगकर्ता प्रज़ेंटेशन खोलता है, तो उसे क्या जवाब देना है.
खोलें(सिंपल) |
|
|---|---|
authMode |
LIMITED |
source |
यह एक Presentation |
user |
amin@example.com |
Google Forms के इवेंट
फ़ॉर्म से जुड़े ट्रिगर की मदद से, स्क्रिप्ट तब जवाब दे सकती हैं, जब कोई उपयोगकर्ता किसी फ़ॉर्म में बदलाव करता है या कोई जवाब सबमिट करता है.
खोलें* (simple and installable) |
|
|---|---|
authMode |
LIMITED |
source |
Form |
triggerUid |
उस ट्रिगर का आईडी जिसने इस इवेंट को जनरेट किया है. यह सिर्फ़ इंस्टॉल किए जा सकने वाले ट्रिगर के लिए है. 4034124084959907503 |
user |
amin@example.com |
* यह इवेंट तब ट्रिगर नहीं होता, जब कोई उपयोगकर्ता जवाब देने के लिए फ़ॉर्म खोलता है. इसके बजाय, यह तब ट्रिगर होता है, जब कोई संपादक फ़ॉर्म में बदलाव करने के लिए उसे खोलता है.
फ़ॉर्म सबमिट करना(इंस्टॉल किया जा सकता है) |
|
|---|---|
authMode |
FULL |
response |
FormResponse |
source |
Form |
triggerUid |
इस इवेंट को जनरेट करने वाले ट्रिगर का आईडी. 4034124084959907503 |
Google Calendar इवेंट
Google Calendar, उपयोगकर्ता के कैलेंडर इवेंट अपडेट होने पर फ़ायर ट्रिगर करता है. जैसे, इवेंट बनाना, उनमें बदलाव करना या उन्हें मिटाना.
इन ट्रिगर से यह पता नहीं चलता कि कौनसे इवेंट में बदलाव हुआ है या उसमें किस तरह का बदलाव हुआ है. इसके बजाय, इनसे पता चलता है कि आपके कोड को इंक्रीमेंटल सिंक ऑपरेशन करना होगा, ताकि कैलेंडर में हाल ही में किए गए बदलावों को चुना जा सके. इस प्रक्रिया के बारे में पूरी जानकारी पाने के लिए, Calendar API के लिए संसाधन सिंक करने से जुड़ी गाइड देखें.
Apps Script में Calendar के साथ सिंक करने के लिए, यह तरीका अपनाएं:
- स्क्रिप्ट प्रोजेक्ट के लिए, Calendar की ऐडवांस सेवा चालू करें. इस वर्कफ़्लो के लिए, Calendar की इन-बिल्ट सेवा काफ़ी नहीं है.
- तय करें कि किन कैलेंडर को सिंक करना है. हर कैलेंडर के लिए, Calendar advanced service के Events.list() तरीके का इस्तेमाल करके, शुरुआती सिंक ऑपरेशन करें.
- पहली बार सिंक करने पर, उस कैलेंडर के लिए
nextSyncTokenदिखता है. इस टोकन को बाद में इस्तेमाल करने के लिए सेव करें. - जब Apps Script
EventUpdatedट्रिगर फ़ायर होता है, तब कैलेंडर इवेंट में बदलाव होने का पता चलता है. इसके बाद, सेव किए गएnextSyncTokenका इस्तेमाल करके, उस कैलेंडर के लिए इंक्रीमेंटल सिंक करें जिस पर असर पड़ा है. यह असल में, Events.list() का एक और अनुरोध है. हालांकि,nextSyncTokenदेने से, जवाब सिर्फ़ उन इवेंट तक सीमित हो जाता है जिनमें पिछले सिंक के बाद बदलाव हुआ है. - सिंक करने के जवाब की जांच करें, ताकि यह पता चल सके कि कौनसे इवेंट अपडेट किए गए हैं. साथ ही, अपने कोड को सही तरीके से जवाब देने के लिए कहें. उदाहरण के लिए, बदलाव को लॉग करना, स्प्रेडशीट अपडेट करना, ईमेल सूचनाएं भेजना या अन्य कार्रवाइयां करना.
- उस कैलेंडर के लिए सेव किए गए
nextSyncTokenको, इंक्रीमेंटल सिंक के अनुरोध से मिलेnextSyncTokenसे अपडेट करें. इससे अगली सिंक कार्रवाई में, सिर्फ़ हाल ही में किए गए बदलाव दिखते हैं.
कभी-कभी सर्वर, सिंक टोकन को अमान्य कर देता है. इस वजह से, 410 गड़बड़ी होती है. ऐसा होने पर, आपके कोड को पूरी तरह से सिंक करना चाहिए. साथ ही, उस कैलेंडर के लिए सिंक किए गए सभी सेव किए गए डेटा और टोकन को बदलना चाहिए.
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 |