इस पेज पर, निलंबित की गई Google Workspace सदस्यता को फिर से चालू करने का तरीका बताया गया है. इसके लिए, गड़बड़ियों को ठीक करना या उनसे जुड़ी समस्याओं को हल करना होता है. साथ ही, subscriptions.reactivate
तरीके का इस्तेमाल करना होता है.
जब किसी गड़बड़ी की वजह से सदस्यता को इवेंट नहीं मिल पाते हैं, तब Google Workspace की सदस्यताएं निलंबित कर दी जाती हैं. उदाहरण के लिए, सदस्यता तब निलंबित कर दी जाती है, जब टारगेट रिसॉर्स या सूचना के एंडपॉइंट का पता नहीं चलता. सदस्यता से जुड़ी किसी भी गड़बड़ी को ठीक करने के बाद, सदस्यता को फिर से चालू किया जा सकता है. इससे आपको इवेंट की सूचनाएं फिर से मिलने लगेंगी.
निलंबित की गई सदस्यता के बारे में इन तरीकों से जाना जा सकता है:
- आपके ऐप्लिकेशन को निलंबन के बारे में लाइफ़साइकल इवेंट मिलता है. अगर एंडपॉइंट में गड़बड़ी की वजह से आपकी सदस्यता निलंबित कर दी जाती है, तो हो सकता है कि आपको लाइफ़साइकल इवेंट न मिले.
subscriptions.get
याsubscriptions.list
तरीकों का इस्तेमाल करके, यह देखा जा सकता है कि सदस्यता केstate
फ़ील्ड की वैल्यूSUSPENDED
पर सेट है या नहीं.- आपको सूचना एंडपॉइंट पर डिलीवरी न हो पाने की सूचना मिलती है. Google Cloud Pub/Sub विषयों पर डिलीवरी से जुड़ी गड़बड़ियों को मॉनिटर करने के बारे में जानने के लिए, मैसेज डिलीवरी से जुड़ी गड़बड़ियों को ठीक करना लेख पढ़ें.
फिर से चालू की गई सदस्यताओं के लिए, खत्म होने की मूल तारीख बनी रहती है. सदस्यता की समयसीमा बढ़ाने के लिए, Google Workspace की सदस्यता को अपडेट या रिन्यू करना लेख पढ़ें.
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 ऐप्लिकेशन के तौर पर किसी Chat इवेंट की सदस्यता लेने के लिए, ऐप्लिकेशन की पुष्टि करना और एडमिन से एक बार अनुमति लेना ज़रूरी है. Chat ऐप्लिकेशन के तौर पर, Chat इवेंट की सदस्यता लेने की सुविधा डेवलपर के लिए झलक में उपलब्ध है.
Python
- Python 3.6 या इसके बाद का वर्शन
- pip पैकेज मैनेजमेंट टूल
- Python के लिए Google की नई क्लाइंट लाइब्रेरी. इन्हें इंस्टॉल या अपडेट करने के लिए, कमांड-लाइन इंटरफ़ेस में यह कमांड चलाएं:
pip3 install --upgrade google-api-python-client google-auth-oauthlib
- Google Workspace की सदस्यता. इसे बनाने के लिए, सदस्यता बनाना लेख पढ़ें.
इसके लिए, पुष्टि करना और सदस्यता में हर इवेंट टाइप के लिए अनुमति का सही दायरा तय करना ज़रूरी है:
- उपयोगकर्ता की पुष्टि करने के लिए, एक या उससे ज़्यादा ऐसे स्कोप की ज़रूरत होती है जो सदस्यता के लिए कम से कम एक इवेंट टाइप के साथ काम करते हों. स्कोप की पहचान करने के लिए, इवेंट टाइप के हिसाब से स्कोप देखें.
- Chat ऐप्लिकेशन के तौर पर किसी Chat इवेंट की सदस्यता लेने के लिए, ऐप्लिकेशन की पुष्टि करना और एडमिन से एक बार अनुमति लेना ज़रूरी है. Chat ऐप्लिकेशन के तौर पर, Chat इवेंट की सदस्यता लेने की सुविधा डेवलपर के लिए झलक में उपलब्ध है.
गड़बड़ियों की पहचान करना और उन्हें ठीक करना
किसी सदस्यता से जुड़ी गड़बड़ी का पता लगाने के लिए, सदस्यता के suspensionReason
फ़ील्ड की समीक्षा करें. आपको यह फ़ील्ड तब दिखेगा, जब आपको निलंबन के बारे में लाइफ़साइकल इवेंट मिलेगा. इसके अलावा, सदस्यता के सभी फ़ील्ड की समीक्षा करने के लिए, subscriptions.get
तरीके का इस्तेमाल करके भी यह फ़ील्ड देखा जा सकता है.
इस टेबल में, सदस्यता से जुड़ी संभावित गड़बड़ियों के बारे में बताया गया है. साथ ही, जहां ज़रूरी है वहां गड़बड़ियों को ठीक करने का तरीका भी बताया गया है. अगर आपसे यह गड़बड़ी ठीक नहीं हो रही है, तो सदस्यता रद्द करें या सदस्यता खत्म होने का इंतज़ार करें. Google Workspace Events API, समयसीमा खत्म हो चुकी सदस्यताओं को अपने-आप मिटा देता है.
गड़बड़ी | ब्यौरा | समस्या हल करने के तरीके |
---|---|---|
|
अनुमति देने वाले उपयोगकर्ता ने, सदस्यता के लिए ज़रूरी एक या उससे ज़्यादा OAuth स्कोप की अनुमति रद्द कर दी है. | कोई दूसरा ऐक्सेस टोकन पाएं. ज़्यादा जानकारी के लिए, Google ऑथराइज़ेशन सर्वर से ऐक्सेस टोकन पाना लेख पढ़ें. |
|
सदस्यता के लिए टारगेट किए गए संसाधन को मिटा दिया गया है. | अगर संसाधन को वापस लाया जाता है, तो reactivate
तरीके को कॉल करें. अगर ऐसा नहीं है, तो आपको कुछ करने की ज़रूरत नहीं है. ऐसा इसलिए, क्योंकि ओरिजनल टारगेट रिसोर्स के बिना किसी सदस्यता को फिर से चालू नहीं किया जा सकता. |
|
अनुमति देने वाले उपयोगकर्ता के पास अब सदस्यता के लिए संसाधन का ऐक्सेस नहीं है. | कुछ करने की ज़रूरत नहीं है. सदस्यता को फिर से चालू नहीं किया जा सकता, क्योंकि जिस उपयोगकर्ता ने सदस्यता को अनुमति दी थी वह टारगेट संसाधन को ऐक्सेस नहीं कर सकता. |
|
Google Workspace ऐप्लिकेशन के पास, आपके सूचना एंडपॉइंट पर इवेंट डिलीवर करने का ऐक्सेस नहीं है. | Google Workspace ऐप्लिकेशन के सेवा खाते को इवेंट डिलीवर करने का ऐक्सेस दें. सेवा खाते:
Pub/Sub विषयों के लिए, सेवा खाते को Pub/Sub पब्लिशर की भूमिका असाइन करें roles/pubsub.publisher)
. |
|
सूचना एंडपॉइंट मौजूद नहीं है या उसे नहीं ढूँढा जा सका. | देखें कि एंडपॉइंट अब भी चालू है और काम कर रहा है. Pub/Sub विषयों से जुड़ी समस्या हल करने के लिए, समस्या हल करने से जुड़ा दस्तावेज़ देखें. |
|
सूचना पाने वाले एंडपॉइंट को इवेंट नहीं मिले. इसकी वजह यह है कि कोटा पूरा हो गया है या अनुरोध भेजने की संख्या के लिए तय की गई सीमा तक पहुंच गए हैं. | कोटा बढ़ाने का अनुरोध करें. |
|
डोमेन एडमिन ने Chat ऐप्लिकेशन के लिए, एक या उससे ज़्यादा OAuth स्कोप के लिए दी गई अनुमति वापस ले ली है. | एडमिन की मंज़ूरी मिलनी चाहिए. |
|
जिस Chat ऐप्लिकेशन ने सदस्यता बनाने की अनुमति दी थी उसके पास अब सदस्यता के टारगेट संसाधन का ऐक्सेस नहीं है. | टारगेट किए गए संसाधन का ऐक्सेस वापस पाएं. उदाहरण के लिए, अगर टारगेट रिसोर्स कोई Chat स्पेस है, तो Chat ऐप्लिकेशन को स्पेस की सदस्यता की ज़रूरत पड़ सकती है. |
सदस्यता फिर से चालू करना
सदस्यता निलंबित करने वाली गड़बड़ी को ठीक करने के बाद, reactivate
तरीके का इस्तेमाल करके, सदस्यता को फिर से इवेंट पाने की अनुमति दी जा सकती है. इस तरीके से यह पता चलता है कि सभी गड़बड़ियां ठीक हो गई हैं. साथ ही, यह आपकी सदस्यता के state
फ़ील्ड की वैल्यू को SUSPENDED
से बदलकर ACTIVE
कर देता है.
Google Workspace की सदस्यता को फिर से चालू करने के लिए:
Apps Script
अपने Apps Script प्रोजेक्ट में,
reactivateSubscription
नाम की एक नई स्क्रिप्ट फ़ाइल बनाएं और उसमें यह कोड जोड़ें:function reactivateSubscription() { // The name of the subscription to reactivate. const name = 'subscriptions/SUBSCRIPTION_ID'; // Call the Workspace Events API using the advanced service. const response = WorkspaceEvents.Subscriptions.reactivate({}, name); console.log(response); }
इनकी जगह ये डालें:
Google Workspace की सदस्यता को फिर से चालू करने के लिए, अपने Apps Script प्रोजेक्ट में
reactivateSubscription
फ़ंक्शन चलाएं.
Python
अपनी वर्किंग डायरेक्ट्री में,
reactivate_subscription.py
नाम की एक फ़ाइल बनाएं और उसमें यह कोड जोड़ें:"""Reactivate 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() # Call the Workspace Events API using the service endpoint. service = build( 'workspaceevents', 'v1', credentials=CREDENTIALS, ) NAME = 'subscriptions/SUBSCRIPTION_ID' response = service.subscriptions().reactivate(name=NAME).execute() print(response)
इनकी जगह ये डालें:
SCOPES
: एक या उससे ज़्यादा OAuth के दायरे, जो सदस्यता के लिए हर इवेंट टाइप के साथ काम करते हैं. इसे स्ट्रिंग के ऐरे के तौर पर फ़ॉर्मैट किया जाता है. एक से ज़्यादा स्कोप की सूची बनाने के लिए, उन्हें कॉमा लगाकर अलग करें. उदाहरण के लिए,'https://www.googleapis.com/auth/chat.spaces.readonly', 'https://www.googleapis.com/auth/chat.memberships.readonly'
.SUBSCRIPTION_ID
: सदस्यता का आईडी. आईडी पाने के लिए, इनमें से किसी भी तरीके का इस्तेमाल किया जा सकता है:
अपनी वर्किंग डायरेक्ट्री में, पक्का करें कि आपने OAuth क्लाइंट आईडी क्रेडेंशियल सेव किए हों और फ़ाइल का नाम
credentials.json
रखा हो. कोड का यह सैंपल, Google Workspace से पुष्टि करने और उपयोगकर्ता के क्रेडेंशियल पाने के लिए, इस JSON फ़ाइल का इस्तेमाल करता है. निर्देशों के लिए, OAuth क्लाइंट आईडी के क्रेडेंशियल बनाना लेख पढ़ें.Google Workspace की सदस्यता को फिर से चालू करने के लिए, अपने टर्मिनल में यह कमांड चलाएं:
python3 reactivate_subscription.py
Subscription
संसाधन का इंस्टेंस होता है.
अगर अनुरोध पूरा नहीं होता है, तो अन्य गड़बड़ियों को ठीक करने के लिए, यहां दिया गया सेक्शन देखें.
Google Chat ऐप्लिकेशन के तौर पर सदस्यता फिर से चालू करना
इस प्रोग्राम में शामिल होने पर, आपको कुछ सुविधाओं को रिलीज़ होने से पहले ही इस्तेमाल करने का ऐक्सेस मिलता है.Chat इवेंट की सदस्यता को उपयोगकर्ता के तौर पर नहीं, बल्कि Chat ऐप्लिकेशन के तौर पर फिर से चालू किया जा सकता है. यह प्रोसेस एक जैसी है. हालांकि:
उपयोगकर्ता की पुष्टि करने के बजाय, Chat ऐप्लिकेशन के तौर पर पुष्टि करें. इसके लिए, एडमिन से एक बार मंज़ूरी लेनी होगी.
अनुमति के ऐसे स्कोप तय करें जिनसे Chat ऐप्लिकेशन को Chat इवेंट की सदस्यता लेने की अनुमति मिलती हो. अनुमति पाने के ये लिंक हमेशा
chat.app
से शुरू होते हैं. इनमें ये शामिल हैं:https://www.googleapis.com/auth/chat.app.memberships
: Chat स्पेस के सदस्यों के इवेंट की सदस्यता लें.https://www.googleapis.com/auth/chat.app.messages.readonly
: चैट स्पेस में मैसेज और रिएक्शन से जुड़े इवेंट की सूचना पाने के लिए सदस्यता लें.https://www.googleapis.com/auth/chat.app.spaces
: Chat स्पेस के इवेंट की सदस्यता लें.
एपीआई पासकोड बनाना
डेवलपर प्रीव्यू एपीआई के तरीके को कॉल करने के लिए, आपको एपीआई डिस्कवरी दस्तावेज़ के डेवलपर प्रीव्यू वर्शन का इस्तेमाल करना होगा. यह वर्शन सार्वजनिक नहीं होता. अनुरोध की पुष्टि करने के लिए, आपको एपीआई पासकोड डालना होगा.
एपीआई पासकोड बनाने के लिए, अपने ऐप्लिकेशन का Google Cloud प्रोजेक्ट खोलें और यह तरीका अपनाएं:
- Google Cloud console में, मेन्यू > एपीआई और सेवाएं > क्रेडेंशियल पर जाएं.
- क्रेडेंशियल बनाएं > एपीआई कुंजी पर क्लिक करें.
- आपको नई एपीआई कुंजी दिखेगी.
- अपने ऐप्लिकेशन के कोड में इस्तेमाल करने के लिए, एपीआई पासकोड कॉपी करने के लिए, कॉपी करें पर क्लिक करें. एपीआई कुंजी, आपके प्रोजेक्ट के क्रेडेंशियल के "एपीआई कुंजियां" सेक्शन में भी देखी जा सकती है.
- हमारा सुझाव है कि बिना अनुमति के इस्तेमाल को रोकने के लिए, यह तय करें कि एपीआई कुंजी का इस्तेमाल कहां और किन एपीआई के लिए किया जा सकता है. ज़्यादा जानकारी के लिए, एपीआई पर पाबंदियां जोड़ना लेख पढ़ें.
Google Workspace Events API को कॉल करने वाली स्क्रिप्ट लिखना
नीचे दिए गए कोड के सैंपल से, Chat ऐप्लिकेशन की Google Workspace सदस्यता को फिर से चालू किया जा सकता है:
Python
"""Reactivate subscription."""
from google.oauth2 import service_account
from apiclient.discovery import build
# Specify required scopes.
SCOPES = [SCOPES]
# Specify service account details.
CREDENTIALS = (
service_account.Credentials.from_service_account_file('credentials.json')
.with_scopes(SCOPES)
)
# Call the Workspace Events API using the service endpoint.
service = build(
'workspaceevents',
'v1beta',
credentials=CREDENTIALS,
discoveryServiceUrl='https://workspaceevents.googleapis.com/$discovery/rest?version=v1beta&labels=DEVELOPER_PREVIEW&key=API_KEY',
)
NAME = 'subscriptions/SUBSCRIPTION_ID'
response = service.subscriptions().reactivate(name=NAME).execute()
print(response)
इनकी जगह ये डालें:
SCOPES
: अनुमति पाने के ऐसे लिंक तय करें जिनसे Chat ऐप्लिकेशन को Chat इवेंट की सदस्यता लेने की अनुमति मिलती है. अनुमति पाने के ये लिंक हमेशाchat.app
से शुरू होते हैं. इनमें ये शामिल हैं:https://www.googleapis.com/auth/chat.app.memberships
: Chat स्पेस के सदस्यों के इवेंट की सदस्यता लें.https://www.googleapis.com/auth/chat.app.messages.readonly
: चैट स्पेस में मैसेज और रिएक्शन से जुड़े इवेंट की सूचना पाने के लिए सदस्यता लें.https://www.googleapis.com/auth/chat.app.spaces
: Chat स्पेस के इवेंट की सदस्यता लें.
API_KEY
: यह वह एपीआई पासकोड है जिसे आपने Google Workspace Events API के लिए सेवा का एंडपॉइंट बनाने के लिए बनाया था.SUBSCRIPTION_ID
: सदस्यता का आईडी. आईडी पाने के लिए, इनमें से किसी भी तरीके का इस्तेमाल किया जा सकता है:
एक से ज़्यादा गड़बड़ियों को ठीक करना
अगर आपने सदस्यता निलंबित करने वाली गड़बड़ी को ठीक कर दिया है और reactivate
तरीका काम नहीं करता है, तो हो सकता है कि सदस्यता निलंबित होने के बाद कोई दूसरी गड़बड़ी हुई हो.
अन्य गड़बड़ियों की पहचान करने के लिए, पूरे न हो पाने वाले अनुरोध का आउटपुट देखें. आउटपुट में अब भी मौजूद गड़बड़ियां शामिल हैं.
अगर आपकी सदस्यता में एक से ज़्यादा गड़बड़ियां हैं, तो suspensionReason
फ़ील्ड की वैल्यू हमेशा उस मूल गड़बड़ी का इस्तेमाल करती है जिसकी वजह से आपकी सदस्यता निलंबित की गई थी.