गड़बड़ियां ठीक करें और Google Workspace की सदस्यता फिर से चालू करें

इस पेज पर, निलंबित की गई Google Workspace सदस्यता को फिर से चालू करने का तरीका बताया गया है. इसके लिए, गड़बड़ियों को ठीक करें या उनसे जुड़ी समस्याओं को हल करें. साथ ही, subscriptions.reactivate तरीके का इस्तेमाल करें.

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

निलंबित की गई सदस्यता के बारे में इन तरीकों से जाना जा सकता है:

  • आपके ऐप्लिकेशन को निलंबन के बारे में लाइफ़साइकल इवेंट मिलता है. अगर एंडपॉइंट में गड़बड़ी की वजह से आपकी सदस्यता निलंबित कर दी जाती है, तो हो सकता है कि आपको लाइफ़साइकल इवेंट न मिले.
  • subscriptions.get या subscriptions.list तरीकों का इस्तेमाल करके, यह देखा जा सकता है कि सदस्यता के state फ़ील्ड की वैल्यू SUSPENDED पर सेट है या नहीं.
  • आपको सूचना एंडपॉइंट पर डिलीवरी न हो पाने की सूचना मिलती है. Google Cloud Pub/Sub विषयों पर डिलीवरी से जुड़ी गड़बड़ियों को मॉनिटर करने के बारे में जानने के लिए, मैसेज डिलीवरी से जुड़ी गड़बड़ियों को ठीक करना लेख पढ़ें.

फिर से चालू की गई सदस्यताओं के लिए, खत्म होने की मूल तारीख बनी रहती है. सदस्यता की समयसीमा बढ़ाने के लिए, Google Workspace की सदस्यता को अपडेट या रिन्यू करना लेख पढ़ें.

Apps Script

  • Apps Script प्रोजेक्ट:
    • Apps Script से अपने-आप बनाए गए डिफ़ॉल्ट प्रोजेक्ट के बजाय, अपने Google Cloud प्रोजेक्ट का इस्तेमाल करें.
    • आपने OAuth सहमति स्क्रीन को कॉन्फ़िगर करने के लिए जो भी स्कोप जोड़े हैं उन्हें आपको अपने Apps Script प्रोजेक्ट की appsscript.json फ़ाइल में भी जोड़ना होगा. उदाहरण के लिए, अगर आपने chat.messages स्कोप तय किया है, तो यह जानकारी जोड़ें:
    • "oauthScopes": [
        "https://www.googleapis.com/auth/chat.messages"
      ]
          
    • Google Workspace Events बेहतर सेवा को चालू करें.

Python

  • Python 3.6 या इसके बाद का वर्शन
  • pip पैकेज मैनेजमेंट टूल
  • Python के लिए Google की नई क्लाइंट लाइब्रेरी. इन्हें इंस्टॉल या अपडेट करने के लिए, कमांड-लाइन इंटरफ़ेस में यह कमांड चलाएं:
      pip3 install --upgrade google-api-python-client google-auth-oauthlib
      

गड़बड़ियों की पहचान करना और उन्हें ठीक करना

किसी सदस्यता से जुड़ी गड़बड़ी का पता लगाने के लिए, सदस्यता के suspensionReason फ़ील्ड की समीक्षा करें. आपको यह फ़ील्ड तब दिखेगा, जब आपको निलंबन के बारे में लाइफ़साइकल इवेंट मिलेगा. इसके अलावा, सदस्यता के सभी फ़ील्ड की समीक्षा करने के लिए, subscriptions.get तरीके का इस्तेमाल करके भी यह फ़ील्ड देखा जा सकता है.

इस टेबल में, सदस्यता से जुड़ी संभावित गड़बड़ियों के बारे में बताया गया है. साथ ही, जहां ज़रूरी है वहां गड़बड़ियों को ठीक करने का तरीका भी बताया गया है. अगर आपसे यह गड़बड़ी ठीक नहीं हो रही है, तो सदस्यता रद्द करें या सदस्यता खत्म होने का इंतज़ार करें. Google Workspace Events API, समयसीमा खत्म हो चुकी सदस्यताओं को अपने-आप मिटा देता है.

गड़बड़ी ब्यौरा समस्या हल करने के तरीके

USER_SCOPE_REVOKED

अनुमति देने वाले उपयोगकर्ता ने, सदस्यता के लिए ज़रूरी एक या उससे ज़्यादा OAuth स्कोप की अनुमति रद्द कर दी है. कोई दूसरा ऐक्सेस टोकन पाएं. ज़्यादा जानकारी के लिए, Google ऑथराइज़ेशन सर्वर से ऐक्सेस टोकन पाना लेख पढ़ें.

RESOURCE_DELETED

सदस्यता के लिए टारगेट किए गए संसाधन को मिटा दिया गया है. अगर संसाधन को वापस लाया जाता है, तो reactivate तरीके को कॉल करें. अगर ऐसा नहीं होता है, तो आपको कुछ करने की ज़रूरत नहीं है. ऐसा इसलिए, क्योंकि ओरिजनल टारगेट रिसोर्स के बिना किसी सदस्यता को फिर से चालू नहीं किया जा सकता.

USER_AUTHORIZATION_FAILURE

अनुमति देने वाले उपयोगकर्ता के पास अब सदस्यता के लिए संसाधन का ऐक्सेस नहीं है. कुछ करने की ज़रूरत नहीं है. सदस्यता को फिर से चालू नहीं किया जा सकता, क्योंकि जिस उपयोगकर्ता ने सदस्यता को अनुमति दी थी वह टारगेट संसाधन को ऐक्सेस नहीं कर सकता.

ENDPOINT_PERMISSION_DENIED

Google Workspace ऐप्लिकेशन के पास, आपके सूचना एंडपॉइंट पर इवेंट डिलीवर करने का ऐक्सेस नहीं है. Google Workspace ऐप्लिकेशन के सेवा खाते को इवेंट डिलीवर करने का ऐक्सेस दें.

सेवा खाते:
  • Google Chat इवेंट: chat-api-push@system.gserviceaccount.com
  • Google Drive इवेंट: drive-api-event-push@system.gserviceaccount.com
  • Google Meet इवेंट: meet-api-event-push@system.gserviceaccount.com

Pub/Sub विषयों के लिए, सेवा खाते को Pub/Sub पब्लिशर की भूमिका असाइन करें roles/pubsub.publisher) .

ENDPOINT_NOT_FOUND

सूचना एंडपॉइंट मौजूद नहीं है या उसे नहीं ढूँढा जा सका. देखें कि एंडपॉइंट अब भी चालू है और काम कर रहा है. Pub/Sub विषयों से जुड़ी समस्या हल करने के लिए, समस्या हल करने से जुड़ा दस्तावेज़ देखें.

ENDPOINT_RESOURCE_EXHAUSTED

सूचना पाने वाले एंडपॉइंट को इवेंट नहीं मिले. इसकी वजह यह है कि कोटा पूरा हो गया है या अनुरोध भेजने की संख्या के लिए तय की गई सीमा तक पहुंचने वाले हैं. कोटा बढ़ाने का अनुरोध करें.

सदस्यता फिर से चालू करना

सदस्यता निलंबित करने वाली गड़बड़ी को ठीक करने के बाद, reactivate तरीके का इस्तेमाल करके, सदस्यता को फिर से इवेंट पाने की अनुमति दी जा सकती है. इस तरीके से यह पता चलता है कि सभी गड़बड़ियां ठीक हो गई हैं. साथ ही, यह आपकी सदस्यता के state फ़ील्ड की वैल्यू को SUSPENDED से बदलकर ACTIVE कर देता है.

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

Apps Script

  1. अपने 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);
    }
    

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

    • SUBSCRIPTION_ID: सदस्यता का आईडी. आईडी पाने के लिए, इनमें से किसी भी तरीके का इस्तेमाल किया जा सकता है:
      • uid फ़ील्ड की वैल्यू.
      • name फ़ील्ड में दिखाए गए संसाधन का नाम. उदाहरण के लिए, अगर संसाधन का नाम subscriptions/subscription-123 है, तो subscription-123 का इस्तेमाल करें.
  2. Google Workspace की सदस्यता को फिर से चालू करने के लिए, अपने Apps Script प्रोजेक्ट में reactivateSubscription फ़ंक्शन चलाएं.

Python

  1. अपनी वर्किंग डायरेक्ट्री में, 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: सदस्यता का आईडी. आईडी पाने के लिए, इनमें से किसी भी तरीके का इस्तेमाल किया जा सकता है:
      • uid फ़ील्ड की वैल्यू.
      • name फ़ील्ड में दिखाए गए संसाधन का नाम. उदाहरण के लिए, अगर संसाधन का नाम subscriptions/subscription-123 है, तो subscription-123 का इस्तेमाल करें.
  2. अपनी वर्किंग डायरेक्ट्री में, पक्का करें कि आपने OAuth क्लाइंट आईडी क्रेडेंशियल सेव किए हों और फ़ाइल का नाम credentials.json रखा हो. कोड का यह सैंपल, Google Workspace से पुष्टि करने और उपयोगकर्ता के क्रेडेंशियल पाने के लिए, इस JSON फ़ाइल का इस्तेमाल करता है. निर्देशों के लिए, OAuth क्लाइंट आईडी के क्रेडेंशियल बनाना लेख पढ़ें.

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

    python3 reactivate_subscription.py
Google Workspace Events API, लंबे समय तक चलने वाला ऑपरेशन दिखाता है. इसमें Subscription संसाधन का इंस्टेंस होता है.

अगर अनुरोध पूरा नहीं होता है, तो अन्य गड़बड़ियों को ठीक करने के लिए, यहां दिया गया सेक्शन देखें.

एक से ज़्यादा गड़बड़ियों को ठीक करना

अगर आपने सदस्यता निलंबित करने वाली गड़बड़ी को ठीक कर दिया है और reactivate तरीका काम नहीं करता है, तो हो सकता है कि सदस्यता निलंबित होने के बाद कोई दूसरी गड़बड़ी हुई हो.

अन्य गड़बड़ियों की पहचान करने के लिए, पूरे न हो पाने वाले अनुरोध का आउटपुट देखें. आउटपुट में अब भी मौजूद गड़बड़ियों के बारे में जानकारी दी गई है.

अगर आपकी सदस्यता में एक से ज़्यादा गड़बड़ियां हैं, तो suspensionReason फ़ील्ड की वैल्यू हमेशा उस मूल गड़बड़ी का इस्तेमाल करती है जिसकी वजह से आपकी सदस्यता निलंबित की गई थी.