सबसे सही तरीके

ऐड-ऑन के डिज़ाइन के लिए, इन गाइड को पढ़कर अपने उपयोगकर्ताओं को बेहतर अनुभव दें.

सबसे सही तरीके

हमारा सुझाव है कि आप अपने बनाए गए सभी ऐड-ऑन के लिए, यहां दिए गए सबसे सही तरीकों का इस्तेमाल करें.

शुरू करने से पहले, ऐड-ऑन के मालिकाना हक की पुष्टि करना

ऐड-ऑन, Apps Script प्रोजेक्ट से तय होते हैं. इनका मालिकाना हक किसी खास खाते के पास होना चाहिए या इन्हें शेयर की गई ड्राइव में रखा जाना चाहिए. ऐड-ऑन को कोड करने से पहले, यह तय करें कि प्रोजेक्ट का मालिकाना हक किस खाते के पास होना चाहिए और कौन सा खाता पब्लिशर के तौर पर काम करेगा. यह भी तय करें कि किन खातों को सहयोगी के तौर पर काम करना है. साथ ही, पक्का करें कि उन खातों के पास स्क्रिप्ट प्रोजेक्ट और उससे जुड़े Google Cloud प्रोजेक्ट का ऐक्सेस हो.

Google Workspace को बेहतर बनाएं, न कि उसे कॉपी करें

ऐड-ऑन का मकसद, Google Workspace के उन ऐप्लिकेशन को नई सुविधाएं देना है जिनके लिए उन्हें बनाया गया है. इसके अलावा, इनका इस्तेमाल मुश्किल टास्क को अपने-आप पूरा करने के लिए भी किया जाता है. ऐसे ऐड-ऑन पब्लिश करने के लिए, ऐड-ऑन की समीक्षा पास नहीं कर पाएंगे जो सिर्फ़ ऐप्लिकेशन में पहले से मौजूद फ़ंक्शन को दोहराते हैं या जो वर्कफ़्लो में कोई खास सुधार नहीं करते हैं.

स्कोप को सीमित रखें

अपने स्कोप को साफ़ तौर पर तय करते समय, हमेशा स्कोप का सबसे कम अनुमतियों वाला सेट चुनें. उदाहरण के लिए, अगर ऐड-ऑन को सिर्फ़ पढ़ने का ऐक्सेस चाहिए, तो उसे https://www.googleapis.com/auth/calendar स्कोप के साथ उपयोगकर्ता के Calendar का पूरा ऐक्सेस पाने का अनुरोध नहीं करना चाहिए. रीड ओनली ऐक्सेस के लिए, https://www.googleapis.com/auth/calendar.readonly स्कोप का इस्तेमाल करें.

लाइब्रेरी पर बहुत ज़्यादा भरोसा न करें

Apps Script लाइब्रेरी का इस्तेमाल करने से, आपका ऐड-ऑन ज़्यादा धीरे काम कर सकता है. ऐसा तब होता है, जब Apps Script का पूरा कोड किसी एक स्क्रिप्ट प्रोजेक्ट में शामिल हो. Apps Script की लाइब्रेरी, ऐड-ऑन में काम करती हैं. हालांकि, इनका इस्तेमाल करने पर आपको परफ़ॉर्मेंस में गिरावट देखने को मिल सकती है. अपने प्रोजेक्ट में ग़ैर-ज़रूरी लाइब्रेरी शामिल न करें. साथ ही, इस बात पर विचार करें कि ऐड-ऑन को इन लाइब्रेरी पर कम से कम निर्भर कैसे रखा जाए.

ऊपर बताई गई लेटेन्सी, सिर्फ़ उन Apps Script प्रोजेक्ट पर लागू होती है जिनका इस्तेमाल सर्वर-साइड लाइब्रेरी के तौर पर किया जा रहा है. इस वजह से होने वाली देरी के बिना, jQuery जैसी क्लाइंट-साइड JavaScript लाइब्रेरी का इस्तेमाल किया जा सकता है.

Google Workspace ऐड-ऑन इस्तेमाल करने के सबसे सही तरीके

यहां दिए गए सबसे सही तरीके, सिर्फ़ Google Workspace ऐड-ऑन और कार्ड सेवा के इस्तेमाल पर लागू होते हैं.

सिर्फ़ कुछ कार्ड इस्तेमाल करना

अगर ऐड-ऑन बहुत ज़्यादा कार्ड इस्तेमाल करता है, तो नेविगेशन कॉन्फ़िगरेशन जटिल हो जाता है और उसे मैनेज करना मुश्किल हो जाता है.

ज़रूरत से ज़्यादा कार्ड बनाने से बचें.

विजेट बनाने के फ़ंक्शन इस्तेमाल करना

Card या अन्य जटिल यूज़र इंटरफ़ेस (यूआई) ऑब्जेक्ट बनाने वाला कोड लिखते समय, उस कोड को उसके फ़ंक्शन में रखें. क्रिएशन फ़ंक्शन को सिर्फ़ ऑब्जेक्ट बनाना चाहिए और उसे वापस भेजना चाहिए. इससे यूज़र इंटरफ़ेस (यूआई) को रीफ़्रेश करने पर, उस ऑब्जेक्ट को तुरंत फिर से जनरेट किया जा सकता है. Card service में बिल्डर क्लास का इस्तेमाल करने के बाद, build() को कॉल करना न भूलें.

कार्ड को आसान रखें

अगर किसी कार्ड में बहुत ज़्यादा विजेट हैं, तो हो सकता है कि वह स्क्रीन पर ज़्यादा जगह ले ले और कम काम का हो जाए. बड़े कार्ड सेक्शन, छोटा किए जा सकने वाले यूज़र इंटरफ़ेस (यूआई) एलिमेंट के तौर पर रेंडर होते हैं. इससे उपयोगकर्ता को जानकारी नहीं दिखती. अपने ऐड-ऑन को आसान बनाएं. साथ ही, उपयोगकर्ता को सिर्फ़ वही जानकारी दें जिसकी उसे ज़रूरत है.

गड़बड़ी वाले कार्ड इस्तेमाल करना

गड़बड़ी की स्थितियों के लिए कार्ड बनाएं. अगर आपके ऐड-ऑन में कोई गड़बड़ी होती है, तो उसे गड़बड़ी की जानकारी वाला कार्ड दिखाना चाहिए. साथ ही, अगर हो सके, तो उसे गड़बड़ी को ठीक करने के निर्देश भी दिखाने चाहिए. उदाहरण के लिए, अगर आपका ऐड-ऑन, पुष्टि न हो पाने की वजह से Google से बाहर की किसी सेवा से कनेक्ट नहीं हो सका, तो इस बारे में जानकारी देने वाला कार्ड दिखाएं. साथ ही, उपयोगकर्ता से उस खाते की जानकारी की पुष्टि करने के लिए कहें जिसका इस्तेमाल किया जा रहा है.

टेस्ट और टेस्ट मैसेज लिखना

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

कार्रवाई के कॉलबैक फ़ंक्शन का इस्तेमाल करते समय, आम तौर पर आपको एक रिस्पॉन्स ऑब्जेक्ट बनाना होता है. जवाब सही तरीके से बनाए जा रहे हैं या नहीं, इसकी पुष्टि करने के लिए, इस तरह के स्टेटमेंट इस्तेमाल किए जा सकते हैं:

    Logger.log(response.printJson());

चलाएं मेन्यू का इस्तेमाल करके, Apps Script एडिटर से सीधे तौर पर बनाए गए टेस्ट फ़ंक्शन चलाएं. जब आपके पास काम करने वाला कोई ऐड-ऑन हो, तो बिना पब्लिश किया गया वर्शन इंस्टॉल करना न भूलें, ताकि आप उसे आज़मा सकें.

हर उस होस्ट ऐप्लिकेशन के लिए सही टेस्ट डेटा का इस्तेमाल करें जिसके लिए ऐड-ऑन बनाया गया है. उदाहरण के लिए, अगर ऐड-ऑन Gmail की सुविधाओं को बढ़ाता है, तो आपको कुछ टेस्ट ईमेल और उनके मैसेज आईडी की ज़रूरत पड़ सकती है. इससे यह पक्का किया जा सकता है कि अलग-अलग मैसेज कॉन्टेंट दिए जाने पर, ऐड-ऑन उम्मीद के मुताबिक काम करता है. किसी मैसेज का आईडी पाने के लिए, Gmail API users.messages.list तरीके का इस्तेमाल करके मैसेज की सूची बनाएं. इसके अलावा, Apps Script की Gmail सेवा का इस्तेमाल करके भी मैसेज का आईडी पाया जा सकता है.

Calendar conferencing के सबसे सही तरीके

अगर आपका ऐड-ऑन, Google Calendar में तीसरे पक्ष के कैलेंडर कॉन्फ़्रेंसिंग के विकल्प इंटिग्रेट करता है, तो इन अतिरिक्त सबसे सही तरीकों को अपनाएं:

onCreateFunction लाइट को चालू रखें

मेनिफ़ेस्ट में तय किए गए हर onCreateFunction को तब सिंक्रोनस तरीके से कॉल किया जाता है, जब कोई उपयोगकर्ता उस तरह का कॉन्फ़्रेंस समाधान बनाने की कोशिश करता है. पक्का करें कि ये फ़ंक्शन, कॉन्फ़्रेंस बनाने के लिए सिर्फ़ ज़रूरी काम करें. इन फ़ंक्शन में बहुत ज़्यादा काम करने से, आपके ऐड-ऑन का इस्तेमाल करने वाले लोगों को खराब अनुभव मिल सकता है.

कॉन्फ़्रेंस के डेटा के लिए, सही ConferenceData फ़ील्ड इस्तेमाल करें

ConferenceData ऑब्जेक्ट बनाते समय, उनमें कॉन्फ़्रेंस की जानकारी भरी जा सकती है. जैसे, ऐक्सेस कोड, फ़ोन नंबर, पिन, यूआरआई वगैरह. इस जानकारी के लिए, EntryPoint फ़ील्ड का इस्तेमाल करें. यह जानकारी ConferenceData नोट फ़ील्ड में न डालें.

कैलेंडर इवेंट में कॉन्फ़्रेंस की जानकारी न जोड़ें

आपके ऐड-ऑन को, तीसरे पक्ष की बनाई गई कॉन्फ़्रेंस की जानकारी को Calendar इवेंट के ब्यौरे में जोड़ने की ज़रूरत नहीं है. ज़रूरत पड़ने पर, Calendar ऐसा अपने-आप करता है.