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

इस पेज पर, subscriptions.list() तरीका इस्तेमाल करके, Google Workspace की सदस्यताओं की सूची बनाने का तरीका बताया गया है.

उपयोगकर्ता की पुष्टि करने के साथ इस तरीके को कॉल करने पर, यह तरीका उपयोगकर्ता की अनुमति वाली सदस्यताओं की सूची दिखाता है. ऐप्लिकेशन की पुष्टि करने के लिए, यह तरीका एक सूची दिखा सकता है. इसमें ऐप्लिकेशन की कोई भी सदस्यता शामिल हो सकती है.

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

Apps Script

  • Apps Script प्रोजेक्ट:
    • 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 Workspace की सदस्यता. सदस्यता बनाने के लिए, सदस्यता बनाएं लेख पढ़ें.

  • पुष्टि की ज़रूरत है:

    • उपयोगकर्ता की पुष्टि करने के लिए, ऐसे स्कोप की ज़रूरत होती है जो सदस्यता के लिए कम से कम एक इवेंट टाइप के साथ काम करता हो. किसी स्कोप की पहचान करने के लिए, इवेंट टाइप के हिसाब से स्कोप देखें.
    • ऐप्लिकेशन की पुष्टि करने के लिए, chat.bot स्कोप की ज़रूरत होती है. यह सिर्फ़ Google Chat ऐप्लिकेशन के लिए है.

उपयोगकर्ता की अनुमति वाली सदस्यताओं की सूची

सदस्यताओं की सूची देखने के लिए, आपको कम से कम एक इवेंट टाइप के हिसाब से फ़िल्टर करना होगा. अपनी क्वेरी को एक या उससे ज़्यादा टारगेट संसाधनों के हिसाब से भी फ़िल्टर किया जा सकता है. काम करने वाले क्वेरी फ़िल्टर के बारे में जानने के लिए, list() तरीके का दस्तावेज़ देखें.

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

किसी खास इवेंट टाइप और टारगेट किए गए संसाधन के लिए सदस्यताओं की सूची बनाने के लिए:

Apps Script

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

    function listSubscriptions() {
      // Filter for event type (required).
      const eventType = 'EVENT_TYPE';
    
      // Filter for target resource (optional).
      const targetResource = 'TARGET_RESOURCE';
    
      const filter = `event_types:"${eventType}" AND target_resource="${targetResource}"`
    
      // Call the Workspace Events API using the advanced service.
      const response = WorkspaceEvents.Subscriptions.list({ filter });
      console.log(response);
    }
    

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

    • EVENT_TYPE: CloudEvents स्पेसिफ़िकेशन के मुताबिक फ़ॉर्मैट किया गया इवेंट टाइप. उदाहरण के लिए, google.workspace.chat.message.v1.created Google Chat स्पेस की नई सदस्यताओं से जुड़े इवेंट पाने वाली सदस्यताओं को फ़िल्टर करने के लिए.
    • TARGET_RESOURCE: टारगेट रिसॉर्स, जिसे रिसॉर्स के पूरे नाम के तौर पर फ़ॉर्मैट किया गया है. उदाहरण के लिए, Google Chat के किसी स्पेस के लिए सदस्यताओं के हिसाब से फ़िल्टर करने के लिए, //chat.googleapis.com/spaces/SPACE_ID का इस्तेमाल करें. यहां spaces/SPACE_ID, Space संसाधन के लिए name फ़ील्ड को दिखाता है.
  2. सदस्यताओं की सूची देखने के लिए, अपने Apps Script प्रोजेक्ट में listSubscriptions फ़ंक्शन चलाएं.

Python

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

    """List subscriptions."""
    
    from google_auth_oauthlib.flow import InstalledAppFlow
    from googleapiclient.discovery import build
    
    # Specify required scopes.
    SCOPES = ['SCOPE']
    
    # Authenticate with Google Workspace and get user authentication.
    flow = InstalledAppFlow.from_client_secrets_file('client_secrets.json', SCOPES)
    CREDENTIALS = flow.run_local_server()
    
    # Call the Workspace Events API using the service endpoint.
    service = build(
        'workspaceevents',
        'v1',
        credentials=CREDENTIALS,
    )
    
    # Filter for event type (required).
    EVENT_TYPE = 'EVENT_TYPE'
    
    # Filter for target resource (optional).
    TARGET_RESOURCE = 'TARGET_RESOURCE'
    
    FILTER = f'event_types:"{EVENT_TYPE}" AND target_resource="{TARGET_RESOURCE}"'
    response = service.subscriptions().list(filter=FILTER).execute()
    print(response)
    

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

    • SCOPE: OAuth का ऐसा दायरा जो सदस्यता से कम से कम एक इवेंट टाइप के साथ काम करता हो. उदाहरण के लिए, अगर आपकी सदस्यता में इवेंट के तौर पर, अपडेट किया गया Chat स्पेस, https://www.googleapis.com/auth/chat.spaces.readonly शामिल है.
    • EVENT_TYPE: CloudEvents स्पेसिफ़िकेशन के मुताबिक फ़ॉर्मैट किया गया इवेंट टाइप. उदाहरण के लिए, google.workspace.chat.message.v1.created Google Chat स्पेस की नई सदस्यताओं से जुड़े इवेंट पाने वाली सदस्यताओं को फ़िल्टर करने के लिए.
    • TARGET_RESOURCE: टारगेट रिसॉर्स, जिसे रिसॉर्स के पूरे नाम के तौर पर फ़ॉर्मैट किया गया है. उदाहरण के लिए, Google Chat के किसी स्पेस के लिए सदस्यताओं के हिसाब से फ़िल्टर करने के लिए, //chat.googleapis.com/spaces/SPACE_ID का इस्तेमाल करें. यहां spaces/SPACE_ID, Space संसाधन के लिए name फ़ील्ड को दिखाता है.
  2. पक्का करें कि आपने अपनी वर्किंग डायरेक्ट्री में, OAuth क्लाइंट आईडी के क्रेडेंशियल सेव किए हों और फ़ाइल को client_secrets.json नाम दिया हो. कोड सैंपल, Google Workspace से पुष्टि करने और उपयोगकर्ता के क्रेडेंशियल पाने के लिए, इस JSON फ़ाइल का इस्तेमाल करता है. निर्देशों के लिए, OAuth क्लाइंट आईडी के क्रेडेंशियल बनाएं लेख देखें.

  3. सदस्यताओं की सूची देखने के लिए, अपने टर्मिनल में यह कमांड चलाएं:

    python3 list_subscriptions.py

Google Workspace Events API, आपकी क्वेरी के फ़िल्टर से मैच करने वाले Subscription ऑब्जेक्ट का पेज किया गया कलेक्शन दिखाता है.