इवेंट के ऑब्जेक्ट

सिंपल ट्रिगर और इंस्टॉल किए जा सकने वाले ट्रिगर की मदद से, 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

ScriptApp.AuthMode enum से कोई वैल्यू.

LIMITED
source

यह एक Spreadsheet ऑब्जेक्ट है. यह उस Sheets फ़ाइल के बारे में बताता है जिससे स्क्रिप्ट जुड़ी है.

Spreadsheet
triggerUid

उस ट्रिगर का आईडी जिसने इस इवेंट को जनरेट किया है. यह सिर्फ़ इंस्टॉल किए जा सकने वाले ट्रिगर के लिए है.

4034124084959907503
user

User ऑब्जेक्ट. यह ऑब्जेक्ट, सक्रिय उपयोगकर्ता को दिखाता है. हालांकि, यह ऑब्जेक्ट तब ही उपलब्ध होता है, जब सुरक्षा से जुड़ी पाबंदियों का पालन किया गया हो.

amin@example.com

बदलें

(इंस्टॉल किया जा सकता है)
authMode

ScriptApp.AuthMode enum से कोई वैल्यू.

FULL
changeType

बदलाव का टाइप (EDIT, INSERT_ROW, INSERT_COLUMN, REMOVE_ROW, REMOVE_COLUMN, INSERT_GRID, REMOVE_GRID, FORMAT या OTHER).

INSERT_ROW
source

यह Spreadsheet ऑब्जेक्ट, उस Sheets फ़ाइल के बारे में बताता है जिससे स्क्रिप्ट जुड़ी हुई है.

Spreadsheet
triggerUid

इस इवेंट को जनरेट करने वाले ट्रिगर का आईडी.

4034124084959907503
user

User ऑब्जेक्ट. यह ऑब्जेक्ट, सक्रिय उपयोगकर्ता को दिखाता है. हालांकि, यह ऑब्जेक्ट तब ही उपलब्ध होता है, जब सुरक्षा से जुड़ी पाबंदियों का पालन किया गया हो.

amin@example.com

बदलाव करें

(simple and installable)
authMode

ScriptApp.AuthMode enum से कोई वैल्यू.

LIMITED
oldValue

बदलाव से पहले सेल की वैल्यू. अगर कोई वैल्यू नहीं है, तो इसे शामिल न करें. यह सुविधा सिर्फ़ तब उपलब्ध होती है, जब बदली गई रेंज एक सेल हो. अगर सेल में पहले कोई कॉन्टेंट नहीं था, तो इसकी वैल्यू 'तय नहीं है' होती है.

1234
range

Range ऑब्जेक्ट. इससे उस सेल या सेल की रेंज के बारे में पता चलता है जिसमें बदलाव किया गया है.

Range
source

यह एक Spreadsheet ऑब्जेक्ट है. यह उस Sheets फ़ाइल के बारे में बताता है जिससे स्क्रिप्ट जुड़ी है.

Spreadsheet
triggerUid

उस ट्रिगर का आईडी जिसने इस इवेंट को जनरेट किया है. यह सिर्फ़ इंस्टॉल किए जा सकने वाले ट्रिगर के लिए है.

4034124084959907503
user

User ऑब्जेक्ट. यह ऑब्जेक्ट, सक्रिय उपयोगकर्ता को दिखाता है. हालांकि, यह ऑब्जेक्ट तब ही उपलब्ध होता है, जब सुरक्षा से जुड़ी पाबंदियों का पालन किया गया हो.

amin@example.com
value

बदलाव के बाद सेल की नई वैल्यू. यह सुविधा सिर्फ़ तब उपलब्ध होती है, जब बदली गई रेंज एक सेल हो.

10

फ़ॉर्म सबमिट करना

(इंस्टॉल किया जा सकता है)
authMode

ScriptApp.AuthMode enum से कोई वैल्यू.

FULL
namedValues

यह एक ऑब्जेक्ट होता है. इसमें फ़ॉर्म सबमिट करने वाले व्यक्ति के जवाबों के साथ-साथ सवालों के नाम भी शामिल होते हैं.

{
  'First Name': ['Jane'],
  'Timestamp': ['6/7/2015 20:54:13'],
  'Last Name': ['Doe']
}
range

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

ScriptApp.AuthMode enum से कोई वैल्यू.

LIMITED
source

Document ऑब्जेक्ट. यह उस Docs फ़ाइल के बारे में बताता है जिससे स्क्रिप्ट जुड़ी हुई है.

Document
triggerUid

उस ट्रिगर का आईडी जिसने इस इवेंट को जनरेट किया है. यह सिर्फ़ इंस्टॉल किए जा सकने वाले ट्रिगर के लिए है.

4034124084959907503
user

User ऑब्जेक्ट. यह ऑब्जेक्ट, सक्रिय उपयोगकर्ता को दिखाता है. हालांकि, यह ऑब्जेक्ट तब ही उपलब्ध होता है, जब सुरक्षा से जुड़ी पाबंदियों का पालन किया गया हो.

amin@example.com

Google Slides इवेंट

ट्रिगर की मदद से, Slides को यह पता चलता है कि जब कोई उपयोगकर्ता प्रज़ेंटेशन खोलता है, तो उसे क्या जवाब देना है.

खोलें

(सिंपल)
authMode

ScriptApp.AuthMode enum से कोई वैल्यू.

LIMITED
source

यह एक Presentation ऑब्जेक्ट है. यह उस Slides फ़ाइल को दिखाता है जिससे स्क्रिप्ट जुड़ी हुई है.

Presentation
user

User ऑब्जेक्ट. यह ऑब्जेक्ट, सक्रिय उपयोगकर्ता को दिखाता है. हालांकि, यह ऑब्जेक्ट तब ही उपलब्ध होता है, जब सुरक्षा से जुड़ी पाबंदियों का पालन किया गया हो.

amin@example.com

Google Forms के इवेंट

फ़ॉर्म से जुड़े ट्रिगर की मदद से, स्क्रिप्ट तब जवाब दे सकती हैं, जब कोई उपयोगकर्ता किसी फ़ॉर्म में बदलाव करता है या कोई जवाब सबमिट करता है.

खोलें

* (simple and installable)
authMode

ScriptApp.AuthMode enum से कोई वैल्यू.

LIMITED
source

Form ऑब्जेक्ट. इससे उस Forms फ़ाइल के बारे में पता चलता है जिससे स्क्रिप्ट जुड़ी है.

Form
triggerUid

उस ट्रिगर का आईडी जिसने इस इवेंट को जनरेट किया है. यह सिर्फ़ इंस्टॉल किए जा सकने वाले ट्रिगर के लिए है.

4034124084959907503
user

User ऑब्जेक्ट. यह ऑब्जेक्ट, सक्रिय उपयोगकर्ता को दिखाता है. हालांकि, यह ऑब्जेक्ट तब ही उपलब्ध होता है, जब सुरक्षा से जुड़ी पाबंदियों का पालन किया गया हो.

amin@example.com

* यह इवेंट तब ट्रिगर नहीं होता, जब कोई उपयोगकर्ता जवाब देने के लिए फ़ॉर्म खोलता है. इसके बजाय, यह तब ट्रिगर होता है, जब कोई संपादक फ़ॉर्म में बदलाव करने के लिए उसे खोलता है.

फ़ॉर्म सबमिट करना

(इंस्टॉल किया जा सकता है)
authMode

ScriptApp.AuthMode enum से कोई वैल्यू.

FULL
response

FormResponse ऑब्जेक्ट. यह फ़ॉर्म के लिए उपयोगकर्ता के जवाब को दिखाता है.

FormResponse
source

Form ऑब्जेक्ट. इससे उस Forms फ़ाइल के बारे में पता चलता है जिससे स्क्रिप्ट जुड़ी है.

Form
triggerUid

इस इवेंट को जनरेट करने वाले ट्रिगर का आईडी.

4034124084959907503

Google Calendar इवेंट

Google Calendar, उपयोगकर्ता के कैलेंडर इवेंट अपडेट होने पर फ़ायर ट्रिगर करता है. जैसे, इवेंट बनाना, उनमें बदलाव करना या उन्हें मिटाना.

इन ट्रिगर से यह पता नहीं चलता कि कौनसे इवेंट में बदलाव हुआ है या उसमें किस तरह का बदलाव हुआ है. इसके बजाय, इनसे पता चलता है कि आपके कोड को इंक्रीमेंटल सिंक ऑपरेशन करना होगा, ताकि कैलेंडर में हाल ही में किए गए बदलावों को चुना जा सके. इस प्रक्रिया के बारे में पूरी जानकारी पाने के लिए, Calendar API के लिए संसाधन सिंक करने से जुड़ी गाइड देखें.

Apps Script में Calendar के साथ सिंक करने के लिए, यह तरीका अपनाएं:

  1. स्क्रिप्ट प्रोजेक्ट के लिए, Calendar की ऐडवांस सेवा चालू करें. इस वर्कफ़्लो के लिए, Calendar की इन-बिल्ट सेवा काफ़ी नहीं है.
  2. तय करें कि किन कैलेंडर को सिंक करना है. हर कैलेंडर के लिए, Calendar advanced service के Events.list() तरीके का इस्तेमाल करके, शुरुआती सिंक ऑपरेशन करें.
  3. पहली बार सिंक करने पर, उस कैलेंडर के लिए nextSyncToken दिखता है. इस टोकन को बाद में इस्तेमाल करने के लिए सेव करें.
  4. जब Apps Script EventUpdated ट्रिगर फ़ायर होता है, तब कैलेंडर इवेंट में बदलाव होने का पता चलता है. इसके बाद, सेव किए गए nextSyncToken का इस्तेमाल करके, उस कैलेंडर के लिए इंक्रीमेंटल सिंक करें जिस पर असर पड़ा है. यह असल में, Events.list() का एक और अनुरोध है. हालांकि, nextSyncToken देने से, जवाब सिर्फ़ उन इवेंट तक सीमित हो जाता है जिनमें पिछले सिंक के बाद बदलाव हुआ है.
  5. सिंक करने के जवाब की जांच करें, ताकि यह पता चल सके कि कौनसे इवेंट अपडेट किए गए हैं. साथ ही, अपने कोड को सही तरीके से जवाब देने के लिए कहें. उदाहरण के लिए, बदलाव को लॉग करना, स्प्रेडशीट अपडेट करना, ईमेल सूचनाएं भेजना या अन्य कार्रवाइयां करना.
  6. उस कैलेंडर के लिए सेव किए गए nextSyncToken को, इंक्रीमेंटल सिंक के अनुरोध से मिले nextSyncToken से अपडेट करें. इससे अगली सिंक कार्रवाई में, सिर्फ़ हाल ही में किए गए बदलाव दिखते हैं.

कभी-कभी सर्वर, सिंक टोकन को अमान्य कर देता है. इस वजह से, 410 गड़बड़ी होती है. ऐसा होने पर, आपके कोड को पूरी तरह से सिंक करना चाहिए. साथ ही, उस कैलेंडर के लिए सिंक किए गए सभी सेव किए गए डेटा और टोकन को बदलना चाहिए.

EventUpdated

(इंस्टॉल किया जा सकता है)
authMode

ScriptApp.AuthMode enum से वैल्यू.

FULL
calendarId

उस कैलेंडर का स्ट्रिंग आईडी जिसमें इवेंट अपडेट हुआ.

susan@example.com
triggerUid

इस इवेंट को जनरेट करने वाले ट्रिगर का आईडी.

4034124084959907503

Google Workspace ऐड-ऑन इवेंट

जब कोई उपयोगकर्ता ऐड-ऑन इंस्टॉल करता है, तब onInstall() ट्रिगर अपने-आप चालू हो जाता है.

इंस्टॉल करें

(सिंपल)
authMode

ScriptApp.AuthMode enum से कोई वैल्यू.

FULL

Google Chat ऐप्लिकेशन के इवेंट

Google Chat में इवेंट ऑब्जेक्ट के बारे में जानने के लिए, Google Chat ऐप्लिकेशन के साथ होने वाली बातचीत को पाना और उसका जवाब देना लेख पढ़ें.

समय के हिसाब से ट्रिगर होने वाले इवेंट

समय के हिसाब से ट्रिगर होने वाले ट्रिगर (इन्हें क्लॉक ट्रिगर भी कहा जाता है) की मदद से, स्क्रिप्ट को किसी खास समय पर या बार-बार होने वाले इंटरवल पर चलाया जा सकता है.

समय के हिसाब से (इंस्टॉल किया जा सकता है)
authMode

ScriptApp.AuthMode enum से कोई वैल्यू.

FULL
day-of-month

1 और 31 के बीच.

इस प्रॉपर्टी के नाम में डैश मौजूद हैं. इसलिए, इसे डॉट नोटेशन के बजाय e['day-of-month'] के ज़रिए ऐक्सेस किया जाना चाहिए.

31
day-of-week

1 (सोमवार) और 7 (रविवार) के बीच.

इस प्रॉपर्टी के नाम में डैश मौजूद हैं. इसलिए, इसे डॉट नोटेशन के बजाय e['day-of-week'] के ज़रिए ऐक्सेस किया जाना चाहिए.

7
hour

0 और 23 के बीच.

23
minute

0 और 59 के बीच.

59
month

1 और 12 के बीच.

12
second

0 और 59 के बीच.

59
timezone

टाइम ज़ोन.

UTC
triggerUid

इस इवेंट को जनरेट करने वाले ट्रिगर का आईडी.

4034124084959907503
week-of-year

1 और 52 के बीच.

इस प्रॉपर्टी के नाम में डैश मौजूद हैं. इसलिए, इसे डॉट नोटेशन के बजाय e['week-of-year'] के ज़रिए ऐक्सेस किया जाना चाहिए.

52
year

यह वर्ष.

2015