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

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

इस पेज पर, Google Workspace की सदस्यता लेने के लिए ये चरण बताए गए हैं:

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

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

Apps Script

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

Python

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

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

यहां दिए गए सेक्शन में, 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 Events API और Google Cloud Pub/Sub API को चालू करें:

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

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

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

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

  1. Google Cloud Console में, मेन्यू > Google Auth प्लैटफ़ॉर्म > क्लाइंट पर जाएं.

    क्लाइंट पर जाएं

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

    नया क्रेडेंशियल, OAuth 2.0 क्लाइंट आईडी में दिखता है.

    ध्यान दें कि वेब ऐप्लिकेशन के लिए क्लाइंट सीक्रेट का इस्तेमाल नहीं किया जाता.

Android

  1. Google Cloud Console में, मेन्यू > Google Auth प्लैटफ़ॉर्म > क्लाइंट पर जाएं.

    क्लाइंट पर जाएं

  2. क्लाइंट बनाएं पर क्लिक करें.
  3. ऐप्लिकेशन टाइप > Android पर क्लिक करें.
  4. नाम फ़ील्ड में, क्रेडेंशियल के लिए कोई नाम टाइप करें. यह नाम सिर्फ़ Google Cloud Console में दिखता है.
  5. पैकेज का नाम फ़ील्ड में, अपनी AndroidManifest.xml फ़ाइल से पैकेज का नाम डालें.
  6. SHA-1 सर्टिफ़िकेट फ़िंगरप्रिंट फ़ील्ड में, जनरेट किया गया SHA-1 सर्टिफ़िकेट फ़िंगरप्रिंट डालें.
  7. ज़रूरी नहीं: अगर आपका ऐप्लिकेशन एक एआई एजेंट है, जो उपयोगकर्ताओं की ओर से कार्रवाइयां करता है, तो एआई की मदद से काम करने वाले एजेंट के लिए इस क्लाइंट का इस्तेमाल करें को चुनें. अगर आपका ऐप्लिकेशन, एआई एजेंट के वर्कफ़्लो और स्टैंडर्ड उपयोगकर्ता की सुविधाओं, दोनों के साथ काम करता है, तो दोनों के लिए अलग-अलग OAuth क्लाइंट बनाएं. क्लाइंट बनाने के बाद, इस सेटिंग को नहीं बदला जा सकता.
  8. बनाएं पर क्लिक करें.

    नया क्रेडेंशियल, "OAuth 2.0 क्लाइंट आईडी" में दिखता है.

iOS

  1. Google Cloud Console में, मेन्यू > Google Auth प्लैटफ़ॉर्म > क्लाइंट पर जाएं.

    क्लाइंट पर जाएं

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

    नया क्रेडेंशियल, "OAuth 2.0 क्लाइंट आईडी" में दिखता है.

Chrome ऐप्लिकेशन

  1. Google Cloud Console में, मेन्यू > Google Auth प्लैटफ़ॉर्म > क्लाइंट पर जाएं.

    क्लाइंट पर जाएं

  2. क्लाइंट बनाएं पर क्लिक करें.
  3. ऐप्लिकेशन टाइप > Chrome एक्सटेंशन पर क्लिक करें.
  4. नाम फ़ील्ड में, क्रेडेंशियल के लिए कोई नाम टाइप करें. यह नाम सिर्फ़ Google Cloud Console में दिखता है.
  5. आइटम आईडी फ़ील्ड में, अपने ऐप्लिकेशन का 32 वर्णों वाला यूनीक आईडी स्ट्रिंग डालें. यह आईडी वैल्यू, आपके ऐप्लिकेशन के Chrome Web Store यूआरएल और Chrome Web Store Developer Dashboard में देखी जा सकती है.
  6. ज़रूरी नहीं: अगर आपका ऐप्लिकेशन एक एआई एजेंट है, जो उपयोगकर्ताओं की ओर से कार्रवाइयां करता है, तो एआई की मदद से काम करने वाले एजेंट के लिए इस क्लाइंट का इस्तेमाल करें को चुनें. अगर आपका ऐप्लिकेशन, एआई एजेंट के वर्कफ़्लो और स्टैंडर्ड उपयोगकर्ता की सुविधाओं, दोनों के साथ काम करता है, तो दोनों के लिए अलग-अलग OAuth क्लाइंट बनाएं. क्लाइंट बनाने के बाद, इस सेटिंग को नहीं बदला जा सकता.
  7. बनाएं पर क्लिक करें.

    नया क्रेडेंशियल, "OAuth 2.0 क्लाइंट आईडी" में दिखता है.

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

  1. Google Cloud Console में, मेन्यू > Google Auth प्लैटफ़ॉर्म > क्लाइंट पर जाएं.

    क्लाइंट पर जाएं

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

    नया क्रेडेंशियल, "OAuth 2.0 क्लाइंट आईडी" में दिखता है.

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

  1. Google Cloud Console में, मेन्यू > Google Auth प्लैटफ़ॉर्म > क्लाइंट पर जाएं.

    क्लाइंट पर जाएं

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

    नया क्रेडेंशियल, "OAuth 2.0 क्लाइंट आईडी" में दिखता है.

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

  1. Google API Console में, मेन्यू > > क्लाइंट पर जाएं.

    क्लाइंट पर जाएं

  2. क्लाइंट बनाएं पर क्लिक करें.
  3. ऐप्लिकेशन टाइप > यूनिवर्सल Windows प्लैटफ़ॉर्म (UWP) पर क्लिक करें.
  4. "नाम" फ़ील्ड में, क्रेडेंशियल के लिए कोई नाम टाइप करें. यह नाम सिर्फ़ Google API Console में दिखता है.
  5. "स्टोर आईडी" फ़ील्ड में, अपने ऐप्लिकेशन का यूनीक, 12 वर्णों वाला Microsoft Store आईडी डालें. यह आईडी, आपको अपने ऐप्लिकेशन के Microsoft Store यूआरएल और Partner Center में मिल सकता है.
  6. ज़रूरी नहीं: अगर आपका ऐप्लिकेशन एक एआई एजेंट है, जो उपयोगकर्ताओं की ओर से कार्रवाइयां करता है, तो एआई की मदद से काम करने वाले एजेंट के लिए इस क्लाइंट का इस्तेमाल करें को चुनें. अगर आपका ऐप्लिकेशन, एआई एजेंट के वर्कफ़्लो और स्टैंडर्ड उपयोगकर्ता की सुविधाओं, दोनों के साथ काम करता है, तो दोनों के लिए अलग-अलग OAuth क्लाइंट बनाएं. क्लाइंट बनाने के बाद, इस सेटिंग को नहीं बदला जा सकता.
  7. बनाएं पर क्लिक करें.

    नया क्रेडेंशियल, "OAuth 2.0 क्लाइंट आईडी" में दिखता है.

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

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

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

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

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

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

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

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

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

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

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

Google API (एपीआई) कंसोल

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

    Google Cloud Pub/Sub पर जाएं

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

  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 इवेंट के लिए, chat-api-push@system.gserviceaccount.com.
      2. Drive के इवेंट के लिए, drive-api-event-push@system.gserviceaccount.com.
      3. Meet इवेंट के लिए, meet-api-event-push@system.gserviceaccount.com.
    4. भूमिकाएं असाइन करें मेन्यू में, Pub/Sub Publisher को चुनें.
    5. सेव करें पर क्लिक करें. आपके विषय के लिए अनुमतियों को अपडेट होने में कुछ मिनट लग सकते हैं.

gcloud

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

    gcloud pubsub topics create TOPIC_ID

    TOPIC_ID को अपने विषय के यूनीक आईडी से बदलें, जैसे कि workspace-events-topic.

    आउटपुट में विषय का पूरा नाम दिखता है, जिसे projects/PROJECT_ID/topics/TOPIC_ID के तौर पर फ़ॉर्मैट किया गया है. नाम नोट करें और पक्का करें कि PROJECT_ID की वैल्यू, आपके ऐप्लिकेशन का क्लाउड प्रोजेक्ट आईडी हो. अगले चरण में विषय के नाम का इस्तेमाल करें. साथ ही, बाद में 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 का वह ऐप्लिकेशन जो आपकी सदस्यता के लिए इवेंट डिलीवर करता है:

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

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

     gcloud pubsub subscriptions create SUBSCRIPTION_NAME --topic=TOPIC_NAME

    इनकी जगह ये डालें:

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

Google Workspace के किसी संसाधन की सदस्यता लेना

इस सेक्शन में, Google Workspace के उस संसाधन की सदस्यता ली जाती है जिसकी गतिविधियों पर आपको नज़र रखनी है.

टारगेट रिसॉर्स चुनना और उसकी पहचान करना

Google Workspace की सदस्यता में, टारगेट रिसॉर्स वह Google Workspace रिसॉर्स होता है जिसकी निगरानी इवेंट के लिए की जाती है. टारगेट रिसॉर्स को सदस्यता के targetResource फ़ील्ड में दिखाया जाता है. इसे रिसॉर्स के पूरे नाम का इस्तेमाल करके फ़ॉर्मैट किया जाता है. उदाहरण के लिए, किसी Chat स्पेस (spaces/AAAABBBBBBB) को मॉनिटर करने वाली सदस्यता के लिए, targetResource की वैल्यू //chat.googleapis.com/spaces/AAAABBBBBBB है.

Chat के लिए टारगेट संसाधन की पहचान करना

टारगेट रिसॉर्स फ़ॉर्मैट सीमाएं
स्पेस

//chat.googleapis.com/spaces/SPACE

जहां SPACE, Chat API के space संसाधन के संसाधन के नाम में मौजूद आईडी है. स्पेस का आईडी, उसके यूआरएल से या spaces.list() तरीके का इस्तेमाल करके पाया जा सकता है.

सदस्यता को अनुमति देने वाला Chat उपयोगकर्ता या Chat ऐप्लिकेशन, अपने Google Workspace या Google खाते के ज़रिए स्पेस का सदस्य होना चाहिए. इनका इस्तेमाल किया जा सकता है:
किसी उपयोगकर्ता के लिए सभी स्पेस

//chat.googleapis.com/spaces/-

सदस्यता को सिर्फ़ उन स्पेस के इवेंट मिलते हैं जिनमें उपयोगकर्ता अपने Google Workspace या Google खाते से जुड़ा हुआ है. सिर्फ़ उपयोगकर्ता की पुष्टि की सुविधा काम करती है.
उपयोगकर्ता

//cloudidentity.googleapis.com/users/USER

जहां USER, Chat API के user संसाधन के संसाधन के नाम में मौजूद आईडी है. ज़्यादा जानकारी के लिए, Google Chat के उपयोगकर्ताओं की पहचान करना और उनके बारे में बताना लेख पढ़ें.

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

ग्राहक ( डेवलपर के लिए झलक)

//admin.googleapis.com/customers/CUSTOMER

जहां CUSTOMER ग्राहक आईडी है. चैट ऐप्लिकेशन के ग्राहक डोमेन के लिए, my_customer उपनाम का भी इस्तेमाल किया जा सकता है.

सदस्यता को ग्राहक के डोमेन से मैनेज किए जा रहे सभी स्पेस और उपयोगकर्ताओं के लिए इवेंट मिलते हैं. सिर्फ़ एडमिन की अनुमति से ऐप्लिकेशन की पुष्टि करने की सुविधा के साथ काम करता है.

Drive के लिए टारगेट संसाधन की पहचान करना

टारगेट रिसॉर्स फ़ॉर्मैट सीमाएं (अगर लागू हों)
फ़ाइल //drive.googleapis.com/files/FILE

जहां FILE, Drive API files संसाधन के संसाधन के नाम में मौजूद आईडी है. आईडी को फ़ाइल के यूआरएल से या files.list तरीके का इस्तेमाल करके हासिल किया जा सकता है.

सदस्यता को अनुमति देने वाले उपयोगकर्ता के पास, सदस्यता में मौजूद उस फ़ाइल की अनुमति होनी चाहिए जो सदस्यता से जुड़े इवेंट से जुड़ी हो.
शेयर की गई ड्राइव //drive.googleapis.com/drives/DRIVE

जहां DRIVE, Drive API drives संसाधन के संसाधन के नाम में मौजूद आईडी है. आईडी को ड्राइव के यूआरएल से या drives.list तरीके का इस्तेमाल करके हासिल किया जा सकता है.

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

Meet के लिए टारगेट रिसॉर्स की पहचान करना

टारगेट रिसॉर्स फ़ॉर्मैट सीमाएं (अगर लागू हों)
मीटिंग स्पेस //meet.googleapis.com/spaces/SPACE

जहां SPACE, Meet REST API spaces संसाधन के संसाधन के नाम में मौजूद आईडी है. ज़्यादा जानकारी के लिए, Meet, मीटिंग स्पेस की पहचान कैसे करता है लेख पढ़ें.

उपयोगकर्ता //cloudidentity.googleapis.com/users/USER

जहां USER, Meet REST API participants संसाधन के signedinUser.user फ़ील्ड में मौजूद आईडी है. ज़्यादा जानकारी के लिए, मीटिंग में हिस्सा लेने वाले लोगों के साथ मिलकर काम करना लेख पढ़ें.

सदस्यता को उन सभी मीटिंग स्पेस के इवेंट की जानकारी मिलती है जिनका मालिक उपयोगकर्ता है. आम तौर पर, मीटिंग स्पेस का मालिक ही मीटिंग स्पेस से जुड़े Google Calendar इवेंट का आयोजक भी होता है.

Google Workspace की सदस्यता लेना

सदस्यता बनाने के लिए, Google Workspace Events API के subscriptions.create तरीके का इस्तेमाल करके, Subscription संसाधन बनाएं. इन फ़ील्ड में जानकारी डालें:

  • targetResource: Google Workspace का वह खाता जिसकी पहचान आपने पिछले सेक्शन में की थी. इसे इसके पूरे संसाधन नाम का इस्तेमाल करके फ़ॉर्मैट किया गया है.
  • eventTypes: एक या उससे ज़्यादा तरह के इवेंट का कलेक्शन, जिनके बारे में आपको संसाधन से जुड़ी सूचनाएं चाहिए. उदाहरण के लिए, अगर आपके ऐप्लिकेशन को सिर्फ़ Chat स्पेस में पोस्ट किए गए नए मैसेज के बारे में जानना है, तो आपका ऐप्लिकेशन सिर्फ़ मैसेज बनाने से जुड़े इवेंट की सदस्यता ले सकता है.
  • 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 स्पेस आईडी वाले Chat स्पेस की सदस्यता लेने के लिए, //chat.googleapis.com/spaces/AAAABBBB का इस्तेमाल करें.
    • EVENT_TYPES: एक या उससे ज़्यादा इवेंट टाइप, जिनकी सदस्यता आपको टारगेट रिसॉर्स में लेनी है. स्ट्रिंग की कलेक्शन के तौर पर फ़ॉर्मैट करें, जैसे कि 'google.workspace.chat.message.v1.created'.
    • TOPIC_NAME: आपके क्लाउड प्रोजेक्ट में बनाए गए Pub/Sub विषय का पूरा नाम. 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('credentials.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 स्पेस आईडी वाले Chat स्पेस की सदस्यता लेने के लिए, //chat.googleapis.com/spaces/AAAABBBB का इस्तेमाल करें.
    • EVENT_TYPES: एक या उससे ज़्यादा इवेंट टाइप, जिनकी सदस्यता आपको टारगेट रिसॉर्स में लेनी है. स्ट्रिंग की कलेक्शन के तौर पर फ़ॉर्मैट करें, जैसे कि 'google.workspace.chat.message.v1.created'.
    • TOPIC_NAME: आपके क्लाउड प्रोजेक्ट में बनाए गए Pub/Sub विषय का पूरा नाम. projects/PROJECT_ID/topics/TOPIC_ID के तौर पर फ़ॉर्मैट किया गया.
    • RESOURCE_DATA: यह बूलियन वैल्यू है. इससे पता चलता है कि सदस्यता के पेलोड में संसाधन का डेटा शामिल है या नहीं:

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

    python3 create_subscription.py

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

Google Workspace की सदस्यता को टेस्ट करना

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

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

Google API (एपीआई) कंसोल

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

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

    Pub/Sub पर जाएं

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

  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/PROJECT_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 दस्तावेज़ देखें.

Google Chat ऐप्लिकेशन के तौर पर, Chat स्पेस के इवेंट की सदस्यता लेना

Chat ऐप्लिकेशन के तौर पर, Chat के इवेंट की सदस्यता ली जा सकती है. इसके लिए, आपको उस स्पेस में जाना होगा जिसमें Chat ऐप्लिकेशन की सदस्यता है. चैट ऐप्लिकेशन, उपयोगकर्ता के इवेंट की सदस्यता नहीं ले सकते.

Google Workspace Events API को कॉल करने वाली स्क्रिप्ट लिखना

ऐप्लिकेशन की पुष्टि और एडमिन की अनुमति के साथ, Chat स्पेस के इवेंट की सदस्यता लेने का तरीका यहां बताया गया है:

  1. अगर ज़रूरी हो, तो कोई Chat ऐप्लिकेशन बनाएं.
  2. Chat के किसी संसाधन की सदस्यता लेना, लेकिन:

    1. उपयोगकर्ता की पुष्टि करने के बजाय, एडमिन से एक बार अनुमति लेकर, Chat ऐप्लिकेशन के तौर पर पुष्टि करें.
    2. अनुमति के ऐसे स्कोप तय करें जिनकी मदद से, Chat ऐप्लिकेशन को Chat के इवेंट की सदस्यता लेने की अनुमति मिलती है. अनुमति पाने के ये लिंक हमेशा chat.app से शुरू होते हैं. इनमें ये शामिल हैं:

      • https://www.googleapis.com/auth/chat.app.memberships: Chat स्पेस के सदस्य से जुड़े इवेंट की सूचनाएं पाने के लिए सदस्यता लें.
      • https://www.googleapis.com/auth/chat.app.memberships.readonly: Chat स्पेस के सदस्य से जुड़े इवेंट की सूचनाएं पाने के लिए सदस्यता लें.
      • https://www.googleapis.com/auth/chat.app.messages.readonly: Chat स्पेस में मैसेज और प्रतिक्रिया वाले इवेंट की सदस्यता लें.
      • https://www.googleapis.com/auth/chat.app.spaces: Chat स्पेस के इवेंट की सदस्यता लें.
      • https://www.googleapis.com/auth/chat.app.spaces.readonly: Chat स्पेस के इवेंट की सदस्यता लें.

यहां दिए गए कोड सैंपल से, Chat के किसी स्पेस में मैसेज से जुड़े इवेंट की सदस्यता ली जा सकती है:

Python

  """Create subscription."""

  from google.oauth2 import service_account
  from apiclient.discovery import build

  # Specify required scopes.
  SCOPES = ['https://www.googleapis.com/auth/chat.app.messages.readonly']

  # Specify service account details.
  CREDENTIALS = (
      service_account.Credentials.from_service_account_file('credentials.json')
      .with_scopes(SCOPES)
  )

  # The Google Workspace resource to monitor for events.
  TARGET_RESOURCE = '//chat.googleapis.com/spaces/SPACE_ID'

  # The types of events to receive.
  EVENT_TYPES = [
                  'google.workspace.chat.message.v1.created',
                  'google.workspace.chat.message.v1.updated',
                  'google.workspace.chat.message.v1.deleted',
                ]

  # 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)

इनकी जगह ये डालें:

  • SPACE_ID: स्पेस का नाम. इसे Chat API में spaces.list तरीके से या स्पेस के यूआरएल से हासिल किया जा सकता है.
  • TOPIC_NAME: आपके क्लाउड प्रोजेक्ट में बनाए गए Pub/Sub विषय का पूरा नाम. projects/PROJECT_ID/topics/TOPIC_ID के तौर पर फ़ॉर्मैट किया गया.
  • RESOURCE_DATA: यह बूलियन वैल्यू है. इससे पता चलता है कि सदस्यता के पेलोड में संसाधन का डेटा शामिल है या नहीं:

    • True: इसमें सभी रिसॉर्स का डेटा शामिल होता है. यह तय करने के लिए कि कौनसे फ़ील्ड शामिल किए जाएं, fieldMask फ़ील्ड जोड़ें. साथ ही, बदले गए संसाधन के लिए कम से कम एक फ़ील्ड तय करें. सिर्फ़ Chat के संसाधनों की सदस्यताओं में, संसाधन का डेटा शामिल किया जा सकता है.
    • False: इसमें संसाधन का डेटा शामिल नहीं है.

Google Chat ऐप्लिकेशन के तौर पर, Google Workspace संगठन में Chat के सभी इवेंट की सदस्यता लेना

ग्राहक की सदस्यता की मदद से, आपका चैट ऐप्लिकेशन पूरे Google Workspace संगठन में स्पेस इवेंट और उपयोगकर्ता इवेंट को मॉनिटर कर सकता है.

ग्राहक की सदस्यताओं के लिए इवेंट डिलीवर करने के तरीके के बारे में जानने के लिए, ग्राहक की सदस्यता से जुड़ी सीमाएं और डिलीवरी के तरीके देखें. इसमें बाहरी संगठनों से मैनेज किए जाने वाले स्पेस में इवेंट की डिलीवरी भी शामिल है.

ज़रूरी शर्तें और सीमाएं

  • पुष्टि करना: एडमिन की मंज़ूरी लेकर, Chat ऐप्लिकेशन के तौर पर पुष्टि करना
  • SKU: Google Workspace संगठन के पास कम से कम एक Enterprise एसकेयू लाइसेंस होना चाहिए. ध्यान दें कि डेवलपर के लिए झलक वाले प्रोग्राम के दौरान, यह ज़रूरी शर्त सख्ती से लागू नहीं की जाती. हालांकि, इसे आने वाले समय में लागू किया जाएगा. इसके बारे में अलग से एलान किया जाएगा.
  • यूनीक होना: कोई चैट ऐप्लिकेशन, Google Workspace का इस्तेमाल करने वाले किसी संगठन के लिए, ग्राहक की सिर्फ़ एक सदस्यता बना सकता है. Google Workspace संगठन के पास, ग्राहक की ज़्यादा से ज़्यादा पांच सदस्यताएं हो सकती हैं. ये सदस्यताएं, अलग-अलग Chat ऐप्लिकेशन से बनाई गई हों.
  • स्कोप: आपको किस तरह के इवेंट की सूचनाएं चाहिए, इसके आधार पर इनमें से एक या उससे ज़्यादा स्कोप की ज़रूरत होती है:
    • https://www.googleapis.com/auth/chat.app.all.spaces.readonly: स्पेस से जुड़े इवेंट की सूचनाएं पाने के लिए.
    • https://www.googleapis.com/auth/chat.app.all.memberships.readonly: इससे आपको सदस्यताओं से जुड़े इवेंट की जानकारी मिलती है.
    • https://www.googleapis.com/auth/chat.app.all.messages.readonly: मैसेज और प्रतिक्रियाओं से जुड़े इवेंट की सूचनाएं पाने के लिए.
    • https://www.googleapis.com/auth/chat.app.all.users.readstate.readonly ( डेवलपर के लिए झलक): उपयोगकर्ताओं के मैसेज पढ़ने की स्थिति के बारे में इवेंट पाने के लिए.

ग्राहक के लिए सदस्यता बनाना

ग्राहक की सदस्यता बनाने के लिए, subscriptions.create तरीके को कॉल करें.

Python कोड के इस सैंपल से, ग्राहक की सदस्यता बनाई जाती है:

Python

"""Create a customer subscription."""

from google.oauth2 import service_account
from apiclient.discovery import build

# Specify required scopes.
# Replace with the scopes needed for the event types you want to receive.
SCOPES = ['https://www.googleapis.com/auth/chat.app.all.messages.readonly']

# Specify service account details.
CREDENTIALS = (
    service_account.Credentials.from_service_account_file('credentials.json')
    .with_scopes(SCOPES)
)

# Monitor all events for the Google Workspace organization.
TARGET_RESOURCE = '//admin.googleapis.com/customers/CUSTOMER_ID'

# The types of events to receive.
EVENT_TYPES = [
    'google.workspace.chat.message.v1.created',
    'google.workspace.chat.message.v1.updated',
    'google.workspace.chat.message.v1.deleted',
]

# The endpoint to deliver events to.
TOPIC = 'TOPIC_NAME'

# Call the Workspace Events API.
# Note: Use the v1beta endpoint for Developer Preview features.
service = build(
    'workspaceevents',
    'v1beta',
    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)

इनकी जगह ये डालें:

  • CUSTOMER_ID: ग्राहक आईडी. Chat ऐप्लिकेशन के Google Workspace संगठन के लिए, my_customer उपनाम का भी इस्तेमाल किया जा सकता है.
  • TOPIC_NAME: आपके क्लाउड प्रोजेक्ट में बनाए गए Pub/Sub विषय का पूरा नाम. projects/PROJECT_ID/topics/TOPIC_ID के तौर पर फ़ॉर्मैट किया गया.
  • RESOURCE_DATA: यह बूलियन वैल्यू है, जो यह बताती है कि सदस्यता के पेलोड में संसाधन का डेटा शामिल है या नहीं:
    • True: इसमें सभी रिसॉर्स का डेटा शामिल होता है. कौनसे फ़ील्ड शामिल किए जाएं, यह तय करने के लिए fieldMask फ़ील्ड जोड़ें. साथ ही, बदले गए संसाधन के लिए कम से कम एक फ़ील्ड तय करें. सिर्फ़ Chat के संसाधनों की सदस्यताओं में, संसाधन का डेटा शामिल किया जा सकता है.
    • False: इसमें संसाधन का डेटा शामिल नहीं है.