Google Workspace की सदस्यता बनाएं

इस पेज पर बताया गया है कि Google Workspace के किसी संसाधन की सदस्यता बनाने के लिए, Google Workspace इवेंट एपीआई का इस्तेमाल कैसे किया जाता है. Google Workspace की सदस्यता लेने पर, आपके ऐप्लिकेशन को Google Workspace इवेंट के बारे में जानकारी मिलती है. इनमें Google Workspace के संसाधन से जुड़े बदलाव होते हैं. Google Workspace इवेंट एपीआई किस तरह के संसाधनों और इवेंट टाइप के साथ काम करता है, इस बारे में जानने के लिए Google Workspace इवेंट एपीआई की खास जानकारी देखें.

इस पेज पर, Google Workspace की सदस्यता बनाने का तरीका बताया गया है:

  1. अपना एनवायरमेंट सेट अप करें.
  2. Google Cloud Pub/Sub विषय बनाना और उसकी सदस्यता लेना. Google Workspace इवेंट पाने के लिए, आपने इस विषय को एंडपॉइंट के तौर पर इस्तेमाल किया है.
  3. Subscription संसाधन पर, Google Workspace इवेंट एपीआई के create() तरीके को कॉल करें.
  4. अपनी Google Workspace सदस्यता की जांच करें, ताकि यह पक्का किया जा सके कि आपके Pub/Sub विषय में ऐसे इवेंट शामिल हों जिनकी आपने सदस्यता ली है.
  5. इसके अलावा, अपने ऐप्लिकेशन के लिए, इवेंट को एंडपॉइंट पर पुश करने का तरीका कॉन्फ़िगर करें, ताकि आपका ऐप्लिकेशन इवेंट को प्रोसेस कर सके और ज़रूरत पड़ने पर कार्रवाई कर सके.

ज़रूरी शर्तें

Apps Script

  • इस गाइड में, Google Cloud के सीएलआई निर्देशों का इस्तेमाल करने के लिए:
    1. Google Cloud सीएलआई इंस्टॉल करें.
    2. gcloud सीएलआई को शुरू करने के लिए, इस कोड को चलाएं:
    3.   gcloud init
        
  • सदस्यता के लिए टारगेट संसाधन:
    • Google Chat स्पेस की सदस्यता लेने के लिए, ऐसा चैट स्पेस जिसमें पुष्टि किया गया उपयोगकर्ता ही उसका सदस्य हो. यह ज़रूरी है कि उपयोगकर्ता अपने Google Workspace या Google खाते से स्पेस का सदस्य हो (Google ग्रुप के ज़रिए बनाए गए स्पेस के सदस्य यह सुविधा इस्तेमाल नहीं करते).
    • Google Meet के मीटिंग स्पेस की सदस्यता लेने के लिए, मीटिंग स्पेस का मालिक ही वह उपयोगकर्ता होता है जिसकी पुष्टि हो चुकी है. स्पेस बनाने के लिए, Google Meet के दस्तावेज़ में, मीटिंग के लिए उपलब्ध स्पेस के साथ काम करना लेख पढ़ें.
    • Google Meet उपयोगकर्ता की सदस्यता लेने के लिए, Cloud Identity API का user आईडी
  • आपके पास ऐसा Google Cloud प्रोजेक्ट होना चाहिए जिसमें बिलिंग की सुविधा चालू हो. Chat की सदस्यताओं के लिए, आपको अपने Cloud प्रोजेक्ट में Chat एपीआई को भी चालू करना होगा. साथ ही, ऐप्लिकेशन का नाम, अवतार यूआरएल, और जानकारी फ़ील्ड को कॉन्फ़िगर करना होगा. ज़्यादा जानकारी के लिए, Google Chat ऐप्लिकेशन बनाना देखें.
  • ऐप्लिकेशन के लिए कॉन्फ़िगर की गई OAuth सहमति स्क्रीन का इस्तेमाल करके, उपयोगकर्ता की पुष्टि करना ज़रूरी है. सहमति वाली स्क्रीन कॉन्फ़िगर करते समय, आपको सदस्यता के लिए हर तरह के इवेंट के इस्तेमाल के लिए एक स्कोप तय करना होगा. सहमति वाली स्क्रीन को कॉन्फ़िगर करने और ज़रूरी स्कोप की पहचान करने के लिए, स्कोप चुनें को देखें.
  • Apps स्क्रिप्ट प्रोजेक्ट:
    • Apps Script की मदद से अपने-आप बनाए गए डिफ़ॉल्ट प्रोजेक्ट के बजाय, Google Cloud प्रोजेक्ट का इस्तेमाल करें.
    • OAuth के लिए सहमति देने वाली स्क्रीन को कॉन्फ़िगर करने के लिए जोड़े गए किसी भी स्कोप के लिए, आपको अपने Apps Script प्रोजेक्ट की appsscript.json फ़ाइल में स्कोप भी जोड़ने होंगे. उदाहरण के लिए:
    • "oauthScopes": [
        "https://www.googleapis.com/auth/chat.messages.readonly"
      ]
          
    • Google Workspace Events की बेहतर सेवा चालू करें.

Python

  • Python 3.6 या इससे नया वर्शन
  • pip पैकेज मैनेज करने वाला टूल
  • Python के लिए नई Google क्लाइंट लाइब्रेरी. उन्हें इंस्टॉल या अपडेट करने के लिए, अपने कमांड-लाइन इंटरफ़ेस में यह कमांड चलाएं:
      pip3 install --upgrade google-api-python-client google-auth-oauthlib
      
  • इस गाइड में, Google Cloud के सीएलआई निर्देशों का इस्तेमाल करने के लिए:
    1. Google Cloud सीएलआई इंस्टॉल करें.
    2. gcloud सीएलआई को शुरू करने के लिए, इस कोड को चलाएं:
    3.   gcloud init
        
  • सदस्यता के लिए टारगेट संसाधन:
    • Google Chat स्पेस की सदस्यता लेने के लिए, ऐसा चैट स्पेस जिसमें पुष्टि किया गया उपयोगकर्ता ही उसका सदस्य हो. यह ज़रूरी है कि उपयोगकर्ता अपने Google Workspace या Google खाते से स्पेस का सदस्य हो (Google ग्रुप के ज़रिए बनाए गए स्पेस के सदस्य यह सुविधा इस्तेमाल नहीं करते).
    • Google Meet के मीटिंग स्पेस की सदस्यता लेने के लिए, मीटिंग स्पेस का मालिक ही वह उपयोगकर्ता होता है जिसकी पुष्टि हो चुकी है. स्पेस बनाने के लिए, Google Meet के दस्तावेज़ में, मीटिंग के लिए उपलब्ध स्पेस के साथ काम करना लेख पढ़ें.
    • Google Meet उपयोगकर्ता की सदस्यता लेने के लिए, Cloud Identity API का user आईडी
  • आपके पास ऐसा Google Cloud प्रोजेक्ट होना चाहिए जिसमें बिलिंग की सुविधा चालू हो. Chat की सदस्यताओं के लिए, आपको अपने Cloud प्रोजेक्ट में Chat एपीआई को भी चालू करना होगा. साथ ही, ऐप्लिकेशन का नाम, अवतार यूआरएल, और जानकारी फ़ील्ड को कॉन्फ़िगर करना होगा. ज़्यादा जानकारी के लिए, Google Chat ऐप्लिकेशन बनाना देखें.
  • ऐप्लिकेशन के लिए कॉन्फ़िगर की गई OAuth सहमति स्क्रीन का इस्तेमाल करके, उपयोगकर्ता की पुष्टि करना ज़रूरी है. सहमति वाली स्क्रीन कॉन्फ़िगर करते समय, आपको सदस्यता के लिए हर तरह के इवेंट के इस्तेमाल के लिए एक स्कोप तय करना होगा. सहमति वाली स्क्रीन को कॉन्फ़िगर करने और ज़रूरी स्कोप की पहचान करने के लिए, स्कोप चुनें को देखें.

अपना एनवायरमेंट सेट अप करें

इस सेक्शन में, Google Workspace की सदस्यता बनाने से पहले एनवायरमेंट को सेट अप करने का तरीका बताया गया है.

Google Workspace Events API और Google Cloud Pub/Sub API को चालू करना

Google API का इस्तेमाल करने से पहले, आपको उन्हें Google Cloud प्रोजेक्ट में चालू करना होगा. किसी एक Google Cloud प्रोजेक्ट में, एक या उससे ज़्यादा एपीआई चालू किए जा सकते हैं.

Google Cloud कंसोल

Google Cloud Console में, अपने ऐप्लिकेशन के लिए Google Cloud प्रोजेक्ट खोलें. इसके बाद, Google Workspace Events API और Pub/Sub API को चालू करें:

एपीआई चालू करना

gcloud

  1. अपनी वर्किंग डायरेक्ट्री में, अपने Google खाते में साइन इन करें:

    gcloud auth login
    
  2. अपने ऐप्लिकेशन के लिए, प्रोजेक्ट को क्लाउड प्रोजेक्ट पर सेट करें:

    gcloud config set project PROJECT_ID
    

    अपने ऐप्लिकेशन के क्लाउड प्रोजेक्ट के लिए, PROJECT_ID की जगह प्रोजेक्ट आईडी डालें.

  3. Google Workspace इवेंट एपीआई और Google Cloud Pub/Sub एपीआई को चालू करें:

    gcloud services enable pubsub.googleapis.com workspaceevents.googleapis.com
    

OAuth क्लाइंट आईडी क्रेडेंशियल बनाना

OAuth क्लाइंट आईडी बनाने के तरीके के बारे में खास निर्देशों के लिए, अपने ऐप्लिकेशन का टाइप चुनें:

वेब एेप्लिकेशन

  1. Google Cloud Console में, मेन्यू > एपीआई और सेवाएं > क्रेडेंशियल पर जाएं.

    क्रेडेंशियल पर जाएं

  2. क्रेडेंशियल बनाएं > OAuth क्लाइंट आईडी पर क्लिक करें.
  3. ऐप्लिकेशन का टाइप > वेब ऐप्लिकेशन पर क्लिक करें.
  4. नाम फ़ील्ड में, क्रेडेंशियल के लिए नाम लिखें. यह नाम सिर्फ़ Google Cloud Console में दिखता है.
  5. अपने ऐप्लिकेशन से जुड़े अनुमति वाले यूआरआई जोड़ें:
    • क्लाइंट-साइड ऐप्लिकेशन (JavaScript)अनुमति वाले JavaScript ऑरिजिन में जाकर, यूआरआई जोड़ें पर क्लिक करें. इसके बाद, ब्राउज़र के अनुरोधों के लिए यूआरआई डालें. यह उन डोमेन की पहचान करता है जिनसे आपका ऐप्लिकेशन OAuth 2.0 सर्वर को एपीआई अनुरोध भेज सकता है.
    • सर्वर-साइड ऐप्लिकेशन (Java, Python वगैरह)अनुमति वाले रीडायरेक्ट यूआरआई में, यूआरआई जोड़ें पर क्लिक करें. इसके बाद, एंडपॉइंट यूआरआई डालें जिस पर OAuth 2.0 सर्वर जवाब भेज सके.
  6. बनाएं पर क्लिक करें. अब OAuth क्लाइंट की स्क्रीन पर आपका नया क्लाइंट आईडी और क्लाइंट सीक्रेट दिखेगा.

    Client-ID नोट करें. क्लाइंट सीक्रेट का इस्तेमाल वेब ऐप्लिकेशन के लिए नहीं किया जाता है.

  7. ठीक है पर क्लिक करें. नया क्रेडेंशियल, OAuth 2.0 Client ID में दिखता है.

Android

  1. Google Cloud Console में, मेन्यू > एपीआई और सेवाएं > क्रेडेंशियल पर जाएं.

    क्रेडेंशियल पर जाएं

  2. क्रेडेंशियल बनाएं > OAuth क्लाइंट आईडी पर क्लिक करें.
  3. ऐप्लिकेशन का प्रकार > Android पर क्लिक करें.
  4. "नाम" फ़ील्ड में, क्रेडेंशियल के लिए नाम लिखें. यह नाम सिर्फ़ Google Cloud Console में दिखता है.
  5. "पैकेज का नाम" फ़ील्ड में, अपनी AndroidManifest.xml फ़ाइल से पैकेज का नाम डालें.
  6. "SHA-1 प्रमाणपत्र फ़िंगरप्रिंट" फ़ील्ड में, अपना जनरेट किया गया SHA-1 प्रमाणपत्र फ़िंगरप्रिंट डालें.
  7. बनाएं पर क्लिक करें. अब आपको OAuth क्लाइंट की स्क्रीन पर नया क्लाइंट आईडी दिखेगा.
  8. ठीक है पर क्लिक करें. नया क्रेडेंशियल, "OAuth 2.0 Client ID" में दिखता है.

iOS

  1. Google Cloud Console में, मेन्यू > एपीआई और सेवाएं > क्रेडेंशियल पर जाएं.

    क्रेडेंशियल पर जाएं

  2. क्रेडेंशियल बनाएं > OAuth क्लाइंट आईडी पर क्लिक करें.
  3. ऐप्लिकेशन का टाइप > iOS पर क्लिक करें.
  4. "नाम" फ़ील्ड में, क्रेडेंशियल के लिए नाम लिखें. यह नाम सिर्फ़ Google Cloud Console में दिखता है.
  5. "बंडल आईडी" फ़ील्ड में, बंडल आइडेंटिफ़ायर डालें, जैसा कि ऐप्लिकेशन की Info.plist फ़ाइल में दिया गया है.
  6. ज़रूरी नहीं: अगर आपका ऐप्लिकेशन Apple App Store में दिखता है, तो App Store आईडी डालें.
  7. ज़रूरी नहीं: "Team ID" फ़ील्ड में, 10 वर्णों की यूनीक स्ट्रिंग डालें. यह स्ट्रिंग Apple से जनरेट होती है और आपकी टीम को असाइन की जाती है.
  8. बनाएं पर क्लिक करें. अब OAuth क्लाइंट की स्क्रीन पर आपका नया क्लाइंट आईडी और क्लाइंट सीक्रेट दिखेगा.
  9. ठीक है पर क्लिक करें. नया क्रेडेंशियल, "OAuth 2.0 Client ID" में दिखता है.

Chrome ऐप्लिकेशन

  1. Google Cloud Console में, मेन्यू > एपीआई और सेवाएं > क्रेडेंशियल पर जाएं.

    क्रेडेंशियल पर जाएं

  2. क्रेडेंशियल बनाएं > OAuth क्लाइंट आईडी पर क्लिक करें.
  3. ऐप्लिकेशन का टाइप > Chrome ऐप्लिकेशन पर क्लिक करें.
  4. "नाम" फ़ील्ड में, क्रेडेंशियल के लिए नाम लिखें. यह नाम सिर्फ़ Google Cloud Console में दिखता है.
  5. "ऐप्लिकेशन आईडी" फ़ील्ड में, अपने ऐप्लिकेशन की 32 वर्णों की यूनीक आईडी स्ट्रिंग डालें. आपको आईडी की यह वैल्यू अपने ऐप्लिकेशन के 'Chrome वेब स्टोर' यूआरएल और Chrome वेब स्टोर डेवलपर डैशबोर्ड में मिल सकती है.
  6. बनाएं पर क्लिक करें. अब OAuth क्लाइंट की स्क्रीन पर आपका नया क्लाइंट आईडी और क्लाइंट सीक्रेट दिखेगा.
  7. ठीक है पर क्लिक करें. नया क्रेडेंशियल, "OAuth 2.0 Client ID" में दिखता है.

डेस्कटॉप ऐप्लिकेशन

  1. Google Cloud Console में, मेन्यू > एपीआई और सेवाएं > क्रेडेंशियल पर जाएं.

    क्रेडेंशियल पर जाएं

  2. क्रेडेंशियल बनाएं > OAuth क्लाइंट आईडी पर क्लिक करें.
  3. ऐप्लिकेशन प्रकार > डेस्कटॉप ऐप्लिकेशन पर क्लिक करें.
  4. नाम फ़ील्ड में, क्रेडेंशियल के लिए नाम लिखें. यह नाम सिर्फ़ Google Cloud Console में दिखता है.
  5. बनाएं पर क्लिक करें. अब OAuth क्लाइंट की स्क्रीन पर आपका नया क्लाइंट आईडी और क्लाइंट सीक्रेट दिखेगा.
  6. ठीक है पर क्लिक करें. नया क्रेडेंशियल, OAuth 2.0 Client ID में दिखता है.

टीवी और सीमित इनपुट डिवाइस

  1. Google Cloud Console में, मेन्यू > एपीआई और सेवाएं > क्रेडेंशियल पर जाएं.

    क्रेडेंशियल पर जाएं

  2. क्रेडेंशियल बनाएं > OAuth क्लाइंट आईडी पर क्लिक करें.
  3. ऐप्लिकेशन का टाइप > टीवी और सीमित इनपुट डिवाइस पर क्लिक करें.
  4. "नाम" फ़ील्ड में, क्रेडेंशियल के लिए नाम लिखें. यह नाम सिर्फ़ Google Cloud Console में दिखता है.
  5. बनाएं पर क्लिक करें. अब OAuth क्लाइंट की स्क्रीन पर आपका नया क्लाइंट आईडी और क्लाइंट सीक्रेट दिखेगा.
  6. ठीक है पर क्लिक करें. नया क्रेडेंशियल, "OAuth 2.0 Client ID" में दिखता है.

Universal Windows Platform (यूडब्ल्यूपी)

  1. Google Cloud Console में, मेन्यू > एपीआई और सेवाएं > क्रेडेंशियल पर जाएं.

    क्रेडेंशियल पर जाएं

  2. क्रेडेंशियल बनाएं > OAuth क्लाइंट आईडी पर क्लिक करें.
  3. ऐप्लिकेशन प्रकार > Universal Windows Platform (UWP) पर क्लिक करें.
  4. "नाम" फ़ील्ड में, क्रेडेंशियल के लिए नाम लिखें. यह नाम सिर्फ़ Google Cloud Console में दिखता है.
  5. "स्टोर आईडी" फ़ील्ड में, अपने ऐप्लिकेशन का 12 वर्णों का यूनीक Microsoft Store आईडी मान डालें. आपको यह आईडी अपने ऐप्लिकेशन के Microsoft Store यूआरएल और Partner Center में मिल सकता है.
  6. बनाएं पर क्लिक करें. अब OAuth क्लाइंट की स्क्रीन पर आपका नया क्लाइंट आईडी और क्लाइंट सीक्रेट दिखेगा.
  7. ठीक है पर क्लिक करें. नया क्रेडेंशियल, "OAuth 2.0 Client ID" में दिखता है.

क्लाइंट सीक्रेट JSON फ़ाइल डाउनलोड करें

क्लाइंट सीक्रेट फ़ाइल, OAuth क्लाइंट आईडी क्रेडेंशियल का JSON फ़ॉर्मैट में होती है. आपका ऐप्लिकेशन, इन क्रेडेंशियल का इस्तेमाल क्रेडेंशियल देते समय कर सकता है.

  1. Google Cloud Console में, मेन्यू > एपीआई और सेवाएं > क्रेडेंशियल पर जाएं.

    क्रेडेंशियल पर जाएं

  2. OAuth 2.0 Client ID में, अपने बनाए गए क्लाइंट आईडी पर क्लिक करें.

  3. JSON डाउनलोड करें पर क्लिक करें.

  4. फ़ाइल को client_secrets.json के तौर पर सेव करें.

कोई Pub/Sub विषय बनाना और उसकी सदस्यता लेना

इस सेक्शन में, एक Pub/Sub विषय और उस विषय की सदस्यता बनाई जाती है. Pub/Sub विषय, सूचना के एंडपॉइंट के तौर पर काम करता है. यहां आपकी Google Workspace सदस्यता से जुड़े इवेंट मिलते हैं.

Pub/Sub के विषय बनाने और उन्हें मैनेज करने के बारे में ज़्यादा जानने के लिए, Pub/Sub दस्तावेज़ देखें.

कोई Pub/Sub विषय बनाने और उसकी सदस्यता लेने के लिए:

Google Cloud कंसोल

  1. Google Cloud Console में, Pub/Sub पेज पर जाएं:

    Google Cloud Pub/Sub पर जाएं

    पक्का करें कि आपके ऐप्लिकेशन के लिए क्लाउड प्रोजेक्ट चुना गया हो.

  2. विषय बनाएं पर क्लिक करें और ये काम करें:

    1. अपने विषय के लिए कोई नाम डालें, जैसे कि workspace-events-topic.
    2. डिफ़ॉल्ट सदस्यता जोड़ें को चुना रहने दें. Pub/Sub इस डिफ़ॉल्ट सदस्यता का नाम आपके विषय के नाम से मिलता-जुलता है, जैसे कि workspace-events-topic-sub.
    3. ज़रूरी नहीं: अपने विषय के लिए अन्य प्रॉपर्टी को अपडेट या कॉन्फ़िगर करें.
  3. बनाएं पर क्लिक करें. विषय के आपके पूरे नाम को projects/PROJECT_ID/topics/TOPIC_ID के तौर पर फ़ॉर्मैट किया गया है. आप बाद के चरण में इस पूरे नाम का इस्तेमाल कर सकते हैं.

  4. अपने विषय पर Pub/Sub मैसेज पब्लिश करने का ऐक्सेस दें:

    1. अपने विषय के पेज पर, साइड पैनल पर जाएं और अनुमतियां टैब खोलें.
    2. प्रिंसिपल जोड़ें पर क्लिक करें.
    3. प्रिंसिपल जोड़ें फ़ील्ड में, Google Workspace के उस ऐप्लिकेशन के लिए सेवा खाता जोड़ें जो आपकी सदस्यता के लिए इवेंट डिलीवर करता है:
      1. चैट इवेंट के लिए, chat-api-push@system.gserviceaccount.com.
      2. Meet इवेंट के लिए, meet-api-event-push@system.gserviceaccount.com.
    4. भूमिकाएं असाइन करें मेन्यू में, Pub/Sub Publisher चुनें.
    5. सेव करें पर क्लिक करें. आपके विषय के लिए अनुमतियों को अपडेट करने में कुछ मिनट लग सकते हैं.

gcloud

  1. अपने Cloud प्रोजेक्ट में, यह कमांड देकर विषय बनाएं:

    gcloud pubsub topics create TOPIC_ID
    

    अपने विषय के लिए TOPIC_ID की जगह यूनीक आईडी डालें, जैसे कि workspace-events-topic.

    आउटपुट में, विषय का पूरा नाम दिखता है. इसे projects/PROJECT_ID/topics/TOPIC_ID फ़ॉर्मैट में दिखाया जाता है. नाम को नोट कर लें और पक्का करें कि PROJECT_ID की वैल्यू, आपके ऐप्लिकेशन के लिए Cloud प्रोजेक्ट आईडी है. अगले चरण में विषय का नाम डालें और बाद में Google Workspace की सदस्यता बनाएं.

  2. अपने विषय पर मैसेज पब्लिश करने का ऐक्सेस दें:

    gcloud pubsub topics add-iam-policy-binding TOPIC_NAME --member='serviceAccount:GOOGLE_WORKSPACE_APPLICATION' --role='roles/pubsub.publisher'
    

    इन्हें बदलें:

    • TOPIC_NAME: विषय का पूरा नाम, जो पिछले चरण का आउटपुट है. projects/PROJECT_ID/topics/TOPIC_ID के तौर पर फ़ॉर्मैट किया गया.
    • GOOGLE_WORKSPACE_APPLICATION: Google Workspace का वह ऐप्लिकेशन जो आपकी सदस्यता के साथ इवेंट डिलीवर करना ज़रूरी है:

      • Chat से इवेंट पाने के लिए, chat-api-push@system.gserviceaccount.com का इस्तेमाल करें.
      • Meet से इवेंट की जानकारी पाने के लिए, meet-api-event-push@system.gserviceaccount.com का इस्तेमाल करें.

    आपके विषय के लिए अनुमतियां अपडेट करने में कुछ मिनट लग सकते हैं.

  3. इस विषय के लिए Pub/Sub सदस्यता बनाएं:

     gcloud pubsub subscriptions create SUBSCRIPTION_NAME --topic=TOPIC_NAME
    

    इन्हें बदलें:

    • SUBSCRIPTION_NAME: आपकी सदस्यता का नाम, जैसे कि workspace-events-subscription.
    • TOPIC_NAME: आपके विषय का वह नाम जो आपने पिछले चरण में बनाया था.

Google Workspace की सदस्यता बनाना

इस सेक्शन में, Subscription संसाधन बनाने के लिए, Google Workspace इवेंट एपीआई के subscriptions.create() तरीके का इस्तेमाल किया गया. इन फ़ील्ड में जानकारी दी जाती है:

  • targetResource: चैट स्पेस जैसे इवेंट की निगरानी के लिए, Google Workspace का संसाधन.
  • eventTypes: एक या उससे ज़्यादा तरह के इवेंट का कलेक्शन, जिसे आपको संसाधन के बारे में जानना है. उदाहरण के लिए, अगर आपके ऐप्लिकेशन को सिर्फ़ चैट स्पेस में पोस्ट किए गए नए मैसेज के बारे में जानकारी चाहिए, तो आपके ऐप्लिकेशन में मैसेज से जुड़े इवेंट की सदस्यता लेने का विकल्प होता है.
  • notificationEndpoint: सूचना का एंडपॉइंट, जहां आपकी Google Workspace सदस्यता, इवेंट डिलीवर करती है. आपने पिछले सेक्शन में जो Pub/Sub विषय बनाया था उसका इस्तेमाल करें.
  • payloadOptions: इवेंट पेलोड में कितना संसाधन डेटा शामिल किया जाए, यह बताने के विकल्प. यह कॉन्फ़िगरेशन आपकी सदस्यता के खत्म होने के समय पर असर डालता है. ज़्यादा जानने के लिए, इवेंट डेटा देखें.

Google Workspace की सदस्यता बनाने के लिए:

Apps Script

  1. अपने Apps Script प्रोजेक्ट में, createSubscription नाम की एक नई स्क्रिप्ट फ़ाइल बनाएं और यह कोड जोड़ें:

    function createSubscription() {
      // The Google Workspace resource to monitor for events.
      const targetResource = 'TARGET_RESOURCE';
    
      // The types of events to receive.
      const eventTypes = [EVENT_TYPES];
    
      // The endpoint to deliver events to, such as a Google Cloud Pub/Sub topic.
      const pubsubTopic = 'TOPIC_NAME';
    
      // Whether to include resource data or not.
      const resourceData = RESOURCE_DATA;
    
      // Call the Workspace Events API using the advanced service.
      const response = WorkspaceEvents.Subscriptions.create({
        targetResource: targetResource,
        eventTypes: eventTypes,
        notificationEndpoint: {
          pubsubTopic: pubsubTopic,
        },
        payloadOptions: {
          includeResource: resourceData
        }
      });
      console.log(response);
    }
    

    इन्हें बदलें:

    • TARGET_RESOURCE: आपने Google Workspace के जिस संसाधन की सदस्यता ली है उसे संसाधन के पूरे नाम के तौर पर फ़ॉर्मैट किया गया है. उदाहरण के लिए, अगर आपको AAAABBBB स्पेस आईडी वाले Google Chat स्पेस की सदस्यता लेनी है, तो //chat.googleapis.com/spaces/AAAABBBB का इस्तेमाल करें.
    • EVENT_TYPES: टारगेट रिसॉर्स में, आपको एक या उससे ज़्यादा इवेंट टाइप की सदस्यता लेनी है. स्ट्रिंग के कलेक्शन के तौर पर फ़ॉर्मैट करें, जैसे कि 'google.workspace.chat.message.v1.created'.
    • TOPIC_NAME: Pub/Sub के उस विषय का पूरा नाम जिसे आपने अपने Cloud प्रोजेक्ट में बनाया है. projects/PROJECT_ID/topics/TOPIC_ID के तौर पर फ़ॉर्मैट किया गया.
    • RESOURCE_DATA: एक बूलियन जो बताता है कि सदस्यता में संसाधन डेटा शामिल है या नहीं:

      • True: इसमें सभी संसाधन डेटा शामिल है. शामिल किए गए फ़ील्ड को सीमित करने के लिए, fieldMask फ़ील्ड जोड़ें और बदले गए संसाधन के लिए कम से कम एक फ़ील्ड तय करें. सिर्फ़ Chat के संसाधनों की सदस्यताओं से जुड़ी सहायता. इसमें संसाधन डेटा भी शामिल है.
      • False: इसमें संसाधन का डेटा शामिल नहीं होता.
  2. Google Workspace की सदस्यता बनाने के लिए, अपने Apps Script प्रोजेक्ट में createSubscription फ़ंक्शन चलाएं.

Python

  1. अपनी वर्किंग डायरेक्ट्री में, create_subscription.py नाम की एक फ़ाइल बनाएं और यह कोड जोड़ें:

    """Create subscription."""
    
    from google_auth_oauthlib.flow import InstalledAppFlow
    from googleapiclient.discovery import build
    
    # Specify required scopes.
    SCOPES = [SCOPES]
    
    # Authenticate with Google Workspace and get user authentication.
    flow = InstalledAppFlow.from_client_secrets_file('client_secrets.json', SCOPES)
    CREDENTIALS = flow.run_local_server()
    
    # The Google Workspace resource to monitor for events.
    TARGET_RESOURCE = 'TARGET_RESOURCE'
    
    # The types of events to receive.
    EVENT_TYPES = [EVENT_TYPES]
    
    # The endpoint to deliver events to, such as a Google Cloud Pub/Sub topic.
    TOPIC = 'TOPIC_NAME'
    
    # Call the Workspace Events API using the service endpoint.
    service = build(
        'workspaceevents',
        'v1',
        credentials=CREDENTIALS,
    )
    
    BODY = {
        'target_resource': TARGET_RESOURCE,
        'event_types': EVENT_TYPES,
        'notification_endpoint': {'pubsub_topic': TOPIC},
        'payload_options': {'include_resource': RESOURCE_DATA},
    }
    response = service.subscriptions().create(body=BODY).execute()
    print(response)
    

    इन्हें बदलें:

    • SCOPES: एक या उससे ज़्यादा OAuth के स्कोप, जो सदस्यता के लिए हर तरह के इवेंट के साथ काम करते हैं. स्ट्रिंग के कलेक्शन के तौर पर फ़ॉर्मैट किया गया. एक से ज़्यादा दायरों की सूची बनाने के लिए, उन्हें कॉमा लगाकर अलग करें. उदाहरण के लिए, 'https://www.googleapis.com/auth/chat.spaces.readonly', 'https://www.googleapis.com/auth/chat.memberships.readonly'.
    • TARGET_RESOURCE: आपने Google Workspace के जिस संसाधन की सदस्यता ली है उसे संसाधन के पूरे नाम के तौर पर फ़ॉर्मैट किया गया है. उदाहरण के लिए, अगर आपको AAAABBBB स्पेस आईडी वाले Google Chat स्पेस की सदस्यता लेनी है, तो //chat.googleapis.com/spaces/AAAABBBB का इस्तेमाल करें.
    • EVENT_TYPES: टारगेट रिसॉर्स में, आपको एक या उससे ज़्यादा इवेंट टाइप की सदस्यता लेनी है. स्ट्रिंग के कलेक्शन के तौर पर फ़ॉर्मैट करें, जैसे कि 'google.workspace.chat.message.v1.created'.
    • TOPIC_NAME: Pub/Sub के उस विषय का पूरा नाम जिसे आपने अपने Cloud प्रोजेक्ट में बनाया है. projects/PROJECT_ID/topics/TOPIC_ID के तौर पर फ़ॉर्मैट किया गया.
    • RESOURCE_DATA: एक बूलियन जो बताता है कि सदस्यता में संसाधन डेटा शामिल है या नहीं:

      • True: इसमें सभी संसाधन डेटा शामिल है. शामिल किए गए फ़ील्ड को सीमित करने के लिए, fieldMask फ़ील्ड जोड़ें और बदले गए संसाधन के लिए कम से कम एक फ़ील्ड तय करें. सिर्फ़ Chat के संसाधनों की सदस्यताओं से जुड़ी सहायता. इसमें संसाधन डेटा भी शामिल है.
      • False: इसमें संसाधन का डेटा शामिल नहीं होता.
  2. Google Workspace की सदस्यता बनाने के लिए, अपने टर्मिनल में ये चीज़ें चलाएं:

    python3 create_subscription.py
    

Google Workspace इवेंट एपीआई, लंबे समय तक चलने वाले ऑपरेशन को दिखाता है. इसमें आपके बनाए गए Subscription संसाधन का इंस्टेंस शामिल होता है.

अपनी Google Workspace सदस्यता की जांच करना

यह जांचने के लिए कि आपको Google Workspace इवेंट मिल रहे हैं या नहीं, किसी इवेंट को ट्रिगर किया जा सकता है और मैसेज को Pub/Sub सदस्यता पर ले जाया जा सकता है.

अपनी Google Workspace सदस्यता की जांच करने के लिए:

Google Cloud कंसोल

  1. अपनी Google Workspace सदस्यता के टारगेट संसाधन में, एक या उससे ज़्यादा तरह के इवेंट ट्रिगर करें. उदाहरण के लिए, अगर आपने चैट स्पेस में नए मैसेज पाने की सदस्यता ली है, तो स्पेस में मैसेज पोस्ट करें.

  2. Google Cloud Console में, Pub/Sub पेज पर जाएं:

    Pub/Sub पर जाएं

    पक्का करें कि आपके ऐप्लिकेशन के लिए क्लाउड प्रोजेक्ट चुना गया हो.

  3. Pub/Sub मेन्यू में, सदस्यताएं पर क्लिक करें.

  4. टेबल में, अपने विषय के लिए Pub/Sub सदस्यता ढूंढें और सदस्यता के नाम पर क्लिक करें.

  5. मैसेज टैब पर क्लिक करें.

  6. खींचें पर क्लिक करें. किसी इवेंट से Pub/Sub मैसेज जनरेट होने में कुछ मिनट लग सकते हैं.

gcloud

  1. अपनी Google Workspace सदस्यता के टारगेट संसाधन में, एक या उससे ज़्यादा तरह के इवेंट ट्रिगर करें. उदाहरण के लिए, अगर आपने चैट स्पेस में नए मैसेज की सदस्यता ली है, तो स्पेस में मैसेज पोस्ट करें.

  2. नीचे दिए गए निर्देश का इस्तेमाल करें:

    gcloud pubsub subscriptions pull PUBSUB_SUBSCRIPTION_NAME --format=json --limit=MESSAGE_COUNT --auto-ack
    

    इन्हें बदलें:

    • PUBSUB_SUBSCRIPTION_NAME: आपकी Pub/Sub सदस्यता का पूरा नाम, जिसे projects/SUBSCRIPTION_ID/subscriptions/SUBSCRIPTION_ID के तौर पर फ़ॉर्मैट किया गया है.
    • MESSAGE_COUNT: Pub/Sub मैसेज की वह ज़्यादा से ज़्यादा संख्या, जिसे आप पाना चाहते हैं.

    किसी इवेंट से Pub/Sub मैसेज जनरेट होने में कुछ मिनट लग सकते हैं.

ट्रिगर किए गए हर Google Workspace इवेंट के लिए, आपकी Pub/Sub सदस्यता को एक मैसेज भेजा जाता है. इस मैसेज में वह इवेंट होता है. ज़्यादा जानकारी के लिए, Google Cloud Pub/Sub मैसेज के तौर पर इवेंट पाना देखें.

कॉन्फ़िगर करें कि आपके ऐप्लिकेशन को इवेंट कैसे मिलेंगे

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

Pub/Sub सदस्यता को कॉन्फ़िगर करने के बारे में जानने के लिए, Pub/Sub दस्तावेज़ देखें.