होम पेज

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

होम पेज आपको गैर-ज़रूरी कॉन्टेंट दिखाने की सुविधा देता है, जैसा कि क्विक-ऐक्सेस वाले साइड पैनल में Google के ऐप्लिकेशन (Keep, Calendar, और Tasks) में दिखता है. जब कोई उपयोगकर्ता आपका ऐड-ऑन पहली बार खोलता है, तब होम पेज से शुरुआत करने का विकल्प भी मिल सकता है. साथ ही, इससे नए उपयोगकर्ताओं को ऐड-ऑन के साथ इंटरैक्ट करने का तरीका सिखाने में मदद मिलती है.

अपने प्रोजेक्ट मेनिफ़ेस्ट में किसी होम पेज को शामिल करके और उसके लिए एक होम पेज तय किया जा सकता है. साथ ही, एक या उससे ज़्यादा homepageTrigger फ़ंक्शन लागू किए जा सकते हैं (होम पेज कॉन्फ़िगरेशन देखें).

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

यहां दी गई शर्तों में से किसी एक के पूरा होने पर, आपका ऐड-ऑन होम पेज दिखता है:

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

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

होम पेज का कॉन्फ़िगरेशन

Google Workspace ऐड-ऑन, addOns.common.homepageTrigger फ़ील्ड का इस्तेमाल करके, ऐड-ऑन मेनिफ़ेस्ट में मौजूद सभी होस्ट ऐप्लिकेशन के लिए, डिफ़ॉल्ट होम पेज (नॉन-कॉन्टेक्स्ट) ऐड-ऑन कॉन्टेंट को कॉन्फ़िगर करते हैं:

    {
      // ...
      "addOns": {
        // ...
        "common": {
          // ...
          "homepageTrigger": {
            "runFunction": "myFunction",
            "enabled": true
          }
        }
      }
    }
  • runFunction: उस Apps Script फ़ंक्शन का नाम जिसे Google Workspace ऐड-ऑन फ़्रेमवर्क, होम पेज पर ऐड-ऑन कार्ड को रेंडर करने के लिए इस्तेमाल करता है. यह फ़ंक्शन, होम पेज ट्रिगर फ़ंक्शन है. इस फ़ंक्शन से होम पेज यूज़र इंटरफ़ेस (यूआई) बनाने वाले Card ऑब्जेक्ट का ऐरे बनाना और दिखाना चाहिए. अगर एक से ज़्यादा कार्ड लौटाए जाते हैं, तो होस्ट ऐप्लिकेशन एक सूची में कार्ड के हेडर दिखाता है जिसे उपयोगकर्ता चुन सकता है (एक से ज़्यादा कार्ड लौटाना देखें).

  • enabled: इस स्कोप के लिए होम पेज कार्ड चालू किए जाने चाहिए या नहीं. यह फ़ील्ड ज़रूरी नहीं है और डिफ़ॉल्ट रूप से true होता है. इसे false पर सेट करने से, सभी होस्ट के लिए होम पेज कार्ड बंद हो जाते हैं (जब तक कि उस होस्ट के लिए बदलाव न किया जाए; नीचे देखें).

सामान्य कॉन्फ़िगरेशन के अलावा, हर होस्ट ऐप्लिकेशन के कॉन्फ़िगरेशन में addOns.gmail.homepageTrigger, addOns.calendar.homepageTrigger वगैरह पर एक जैसे स्ट्रक्चर वाले हर होस्ट के लिए बदलाव भी उपलब्ध होते हैं:

    {
      ...
      "addOns": {
        ...
        "common": {
          // By default, call 'buildHomePage' to render homepage content
          // in all hosts. Since calendar.homepageTrigger below overrides
          // this in Calendar and Drive and the homepageTrigger is disabled
          // for Gmail, this homepage function never executes.
          "homepageTrigger": { "runFunction": "buildHomePage" }
        },
        "calendar": {
          // Show customized homepage content for Calendar only.
          "homepageTrigger": { "runFunction": "buildCalendarHomepage" }
        },
        "drive": {
          // Show customized homepage content for Drive only.
          "homepageTrigger": { "runFunction": "buildDriveHomepage" }
        }
        "gmail": {
          // Disable homepage add-on content in Gmail.
          "homepageTrigger": { "enabled": false }
        },
        ...
      }
    }

ध्यान दें कि यह नीचे दिए गए मेनिफ़ेस्ट अंश के समान है:

    {
      ...
      "addOns": {
        ...
        "common": { /* ... */ }, // Omitted a default homepageTrigger specification.
        "calendar": {
          // Show customized homepage content for Calendar only.
          "homepageTrigger": { "runFunction": "myCalendarFunction" }
        },
        "drive": {
          // Show customized homepage content for Drive only.
          "homepageTrigger": { "runFunction": "myDriveFunction" }
        }
        "gmail": { /* ... */ },
        ...
      }
    }

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

होम पेज का फ़्लो

होम पेज के इवेंट ऑब्जेक्ट

कॉल किए जाने पर, ऊपर बताए गए होम पेज ट्रिगर फ़ंक्शन (runFunction) को, कॉल करने के कॉन्टेक्स्ट से मिले डेटा के साथ इवेंट ऑब्जेक्ट पास किया जाता है.

होम पेज इवेंट ऑब्जेक्ट में विजेट या काम की जानकारी शामिल नहीं होती है; पास की गई जानकारी इन सामान्य इवेंट ऑब्जेक्ट फ़ील्ड तक सीमित होती है:

ज़्यादा जानकारी के लिए, इवेंट ऑब्जेक्ट देखें.

ऐसे कार्ड जो काम के नहीं हैं

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

बिना संदर्भ वाले कार्ड किसी दूसरे कार्ड की तरह बनाए जाते हैं; फ़र्क़ सिर्फ़ यह होता है कि किसी कार्रवाई या इवेंट से कार्ड जनरेट होता और दिखता है. कार्ड के बीच ट्रांज़िशन बनाने के बारे में जानकारी के लिए, नेविगेशन के तरीके देखें.