इस पेज पर, Google Workspace की सदस्यताओं की सूची बनाने का तरीका बताया गया है.subscriptions.list()
उपयोगकर्ता की पुष्टि के साथ इस तरीके को कॉल करने पर, यह तरीका उन सदस्यताओं की सूची दिखाता है जिनके लिए उपयोगकर्ता ने अनुमति दी है. ऐप्लिकेशन की पुष्टि का इस्तेमाल करने पर, यह तरीका ऐसी सूची दिखा सकता है जिसमें ऐप्लिकेशन के लिए कोई भी सदस्यता शामिल हो सकती है.
ज़रूरी शर्तें
Apps Script
- Google Workspace की सदस्यता. इसे बनाने के लिए, सदस्यता बनाना लेख पढ़ें.
- Apps Script प्रोजेक्ट:
- Apps Script से अपने-आप बनने वाले डिफ़ॉल्ट प्रोजेक्ट के बजाय, अपने Google Cloud प्रोजेक्ट का इस्तेमाल करें.
- OAuth के लिए सहमति की स्क्रीन को कॉन्फ़िगर करने के लिए, आपने जो भी दायरे जोड़े हैं उन्हें अपने Apps Script प्रोजेक्ट में मौजूद
appsscript.jsonफ़ाइल में भी जोड़ना होगा. उदाहरण के लिए, अगर आपनेchat.messagesदायरा तय किया है, तो यह जोड़ें: - चालू करें
बेहतर सेवा
Google Workspace Events.
"oauthScopes": [ "https://www.googleapis.com/auth/chat.messages" ]
सदस्यता में शामिल हर तरह के इवेंट के लिए, पुष्टि और अनुमति का सही दायरा ज़रूरी है:
- उपयोगकर्ता की पुष्टि के लिए, ऐसे दायरे की ज़रूरत होती है जो सदस्यता के लिए कम से कम एक तरह के इवेंट के साथ काम करता हो. दायरे की पहचान करने के लिए, इवेंट के टाइप के हिसाब से दायरे देखें.
- ऐप्लिकेशन की पुष्टि के लिए,
chat.botदायरे की ज़रूरत होती है. यह दायरा सिर्फ़ Google Chat ऐप्लिकेशन के लिए है.
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
अपने 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 की खास जानकारी के मुताबिक फ़ॉर्मैट किया गया इवेंट टाइप. उदाहरण के लिए, Chat स्पेस में नई सदस्यताओं के बारे में इवेंट पाने वाली सदस्यताओं को फ़िल्टर करने के लिए,google.workspace.chat.message.v1.createdका इस्तेमाल करें.TARGET_RESOURCE: एक टारगेट रिसॉर्स, जिसे उसके पूरे रिसॉर्स नाम के तौर पर फ़ॉर्मैट किया गया हो. उदाहरण के लिए, Chat स्पेस की सदस्यताओं के हिसाब से फ़िल्टर करने के लिए,//chat.googleapis.com/spaces/SPACE_IDका इस्तेमाल करें. यहांspaces/SPACE_IDnameफ़ील्ड को दिखाता है.Space
सदस्यताओं की सूची देखने के लिए, अपने Apps Script प्रोजेक्ट में
listSubscriptionsफ़ंक्शन चलाएं.
Python
अपनी वर्किंग डायरेक्ट्री में,
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('credentials.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 की खास जानकारी के मुताबिक फ़ॉर्मैट किया गया इवेंट टाइप. उदाहरण के लिए, Chat स्पेस में नई सदस्यताओं के बारे में इवेंट पाने वाली सदस्यताओं को फ़िल्टर करने के लिए,google.workspace.chat.message.v1.createdका इस्तेमाल करें.TARGET_RESOURCE: एक टारगेट रिसॉर्स, जिसे उसके पूरे रिसॉर्स नाम के तौर पर फ़ॉर्मैट किया गया हो. उदाहरण के लिए, Chat स्पेस की सदस्यताओं के हिसाब से फ़िल्टर करने के लिए,//chat.googleapis.com/spaces/SPACE_IDका इस्तेमाल करें. यहांspaces/SPACE_IDnameफ़ील्ड को दिखाता है.Space
अपनी वर्किंग डायरेक्ट्री में, पक्का करें कि आपने OAuth क्लाइंट आईडी क्रेडेंशियल सेव किए हों और फ़ाइल का नाम
credentials.jsonरखा हो. कोड का नमूना, Google Workspace के साथ पुष्टि करने और उपयोगकर्ता के क्रेडेंशियल पाने के लिए, इस JSON फ़ाइल का इस्तेमाल करता है. निर्देशों के लिए, देखें OAuth क्लाइंट आईडी क्रेडेंशियल बनाना.सदस्यताओं की सूची देखने के लिए, अपने टर्मिनल में यह कमांड चलाएं:
python3 list_subscriptions.py
Google Workspace Events API, ऑब्जेक्ट की कलेक्शन दिखाता है. यह कलेक्शन, आपकी क्वेरी के फ़िल्टर से मेल खाने वाले ऑब्जेक्ट को अलग-अलग पेजों पर दिखाता है.Subscription