Google Chat में डेटा इंपोर्ट करना

Google Chat API की मदद से, अपने अन्य मैसेजिंग प्लैटफ़ॉर्म से डेटा को Google Chat में इंपोर्ट किया जा सकता है. अपने अन्य मैसेजिंग प्लैटफ़ॉर्म से, मौजूदा मैसेज, अटैचमेंट, प्रतिक्रियाओं, सदस्यताओं, और स्पेस की इकाइयों को, उनसे जुड़े Chat API संसाधनों में इंपोर्ट किया जा सकता है. इस डेटा को इंपोर्ट करने के लिए, इंपोर्ट मोड में Chat स्पेस बनाएं और उनमें डेटा इंपोर्ट करें. प्रोसेस पूरी होने के बाद, ये स्पेस सामान्य Chat स्पेस बन जाते हैं.

इंपोर्ट करने की पूरी प्रोसेस यहां दी गई है:

  1. इंपोर्ट की योजना बनाना
  2. Chat ऐप्लिकेशन के लिए अनुमति कॉन्फ़िगर करना
  3. इंपोर्ट मोड में स्पेस बनाना
  4. संसाधन इंपोर्ट करना
  5. इंपोर्ट किए गए रिसॉर्स की पुष्टि करना
  6. सोर्स डेटा से इंपोर्ट किए गए रिसॉर्स के अंतर का मिलान करना
  7. इंपोर्ट मोड पूरा करना
  8. इंपोर्ट मोड के बाद स्पेस का ऐक्सेस देना
  9. समस्या हल करने से जुड़ी जानकारी

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

Apps Script

Python

इंपोर्ट का प्लान बनाना

इंपोर्ट किए जाने वाले डेटा को ध्यान में रखते हुए योजना बनाएं. जानें कि इस्तेमाल की सीमाएं और कोटा, इंपोर्ट की प्रोसेस पर किस तरह असर डाल सकते हैं. साथ ही, नए स्पेस में इंपोर्ट करने के लिए उपलब्ध Chat स्पेस के टाइप के बारे में जानकारी रखें.

एपीआई इस्तेमाल करने की सीमाओं की समीक्षा करें

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

हमारा सुझाव है कि स्पेस में मैसेज इंपोर्ट करते समय, messages.create() के तरीके से कॉल को अलग-अलग मैसेज थ्रेड में भेजें.

इंपोर्ट करने के लिए, उन स्पेस की पहचान करना जिनमें डेटा इंपोर्ट किया जा सकता है

इंपोर्ट मोड में सिर्फ़ SPACE और GROUP_CHAT के SpaceType का इस्तेमाल किया जा सकता है. इसमें DIRECT_MESSAGE काम नहीं करता. ज़्यादा जानकारी के लिए, SpaceType के लिए दस्तावेज़ देखें.

इंपोर्ट मोड में स्पेस बनाना

इंपोर्ट मोड में स्पेस बनाने के लिए, Space संसाधन पर create तरीके को कॉल करें और importMode को true पर सेट करें.

इंपोर्ट मोड में स्पेस बनाते समय, इन बातों का ध्यान रखें.

  • तारीख और समय - याद रखें कि इंपोर्ट मोड को 30 दिनों के अंदर पूरा करना होगा. अगर spaces.create() तरीके को कॉल करने के 30 दिनों के बाद भी स्पेस, इंपोर्ट मोड में रहता है, तो वह अपने-आप मिट जाएगा. साथ ही, उसे ऐक्सेस नहीं किया जा सकेगा.
    • 30 दिनों की समयसीमा खत्म होने की जानकारी ट्रैक करने के लिए, createTime फ़ील्ड की वैल्यू का इस्तेमाल न करें. यह हमेशा spaces.create() तरीके को कॉल करने के दौरान दिखने वाले आउटपुट जैसा नहीं होता. इंपोर्ट मोड का इस्तेमाल करने पर, createTime फ़ील्ड को उस पुराने टाइमस्टैंप पर सेट किया जा सकता है जिस समय सोर्स में स्पेस बनाया गया था. ऐसा करने से, स्पेस बनाने का मूल समय सुरक्षित रहता है.
  • स्पेस के रिसॉर्स का नाम (name) - यह यूनीक आइडेंटिफ़ायर होता है. इसका इस्तेमाल किसी खास स्पेस के बारे में जानकारी पाने के लिए किया जाता है. इसका रेफ़रंस, स्पेस में कॉन्टेंट इंपोर्ट करते समय बाद के चरणों में दिया जाता है.

सोर्स मैसेजिंग प्लैटफ़ॉर्म से मिलती-जुलती स्पेस इकाई बनाने का समय बचाने के लिए, स्पेस के createTime को सेट किया जा सकता है. इस createTime को 1 जनवरी, 2000 से लेकर मौजूदा समय के बीच की वैल्यू पर सेट किया जाना चाहिए.

इंपोर्ट मोड में बाहरी स्पेस बनाने के लिए, externalUserAllowed को true पर सेट करें. इंपोर्ट पूरा होने के बाद, बाहरी उपयोगकर्ताओं को जोड़ा जा सकता है.

यहां दिए गए उदाहरण में, इंपोर्ट मोड में स्पेस बनाने का तरीका बताया गया है:

Apps Script

function createSpaceInImportMode() {
  const space = Chat.Spaces.create({
      spaceType: 'SPACE',
      displayName: 'DISPLAY_NAME',
      importMode: true,
      createTime: (new Date('January 1, 2000')).toJSON()
  });
  console.log(space.name);
}

Python

"""Create a space in import mode."""

import datetime

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

# Specify required scopes.
SCOPES = [
    'https://www.googleapis.com/auth/chat.import',
]

CREDENTIALS = (
    service_account.Credentials.from_service_account_file('credentials.json')
    .with_scopes(SCOPES)
    .with_subject('EMAIL')
)

# Build a service endpoint for Chat API.
service = build('chat', 'v1', credentials=CREDENTIALS)

result = (
    service.spaces()
    .create(
        body={
            'spaceType': 'SPACE',
            'displayName': 'DISPLAY_NAME',
            'importMode': True,
            'createTime': f'{datetime.datetime(2000, 1, 1).isoformat()}Z',
        }
    )
    .execute()
)

print(result)

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

  • EMAIL: उस उपयोगकर्ता खाते का ईमेल पता जिसका इस्तेमाल करके, पूरे डोमेन के लिए रजिस्टर की गई संस्था या निकाय के नाम का इस्तेमाल किया जा रहा है.
  • DISPLAY_NAME: इंपोर्ट मोड में बनाए गए स्पेस का नाम. यह स्पेस का यूनीक नाम होना चाहिए, जो Chat के उपयोगकर्ताओं को दिखता है. हमारा सुझाव है कि आप उसी डिसप्ले नेम का इस्तेमाल करें जिसका इस्तेमाल उस स्पेस में किया जा रहा है जहां से डेटा इंपोर्ट किया जा रहा है.

संसाधन इंपोर्ट करना

अन्य मैसेजिंग प्लैटफ़ॉर्म से संसाधन इंपोर्ट करने के लिए, आपको इंपोर्ट मोड वाले स्पेस में Google Chat के संसाधन (जैसे, मैसेज, प्रतिक्रियाएं, अटैचमेंट) बनाने होंगे. जब किसी स्पेस में कोई संसाधन बनाया जाता है, तो उससे मिलते-जुलते रिसॉर्स का इस्तेमाल करके, उस मैसेज प्लैटफ़ॉर्म का डेटा तय किया जाता है जिसे माइग्रेट किया जा रहा है.

मैसेज

आपके Chat ऐप्लिकेशन, अपनी अनुमति का इस्तेमाल करके या किसी उपयोगकर्ता के नाम पर मैसेज इंपोर्ट कर सकते हैं. मैसेज का लेखक, किसी दूसरे व्यक्ति के नाम पर मैसेज भेजने वाले उपयोगकर्ता के खाते पर सेट है. ज़्यादा जानकारी के लिए, Chat पर इस्तेमाल किए जा सकने वाले ऐप्लिकेशन को अनुमति देना लेख पढ़ें. इंपोर्ट मोड स्पेस में कोई मैसेज इंपोर्ट करने के लिए, Message संसाधन पर create तरीके को कॉल करें. सोर्स मैसेजिंग प्लैटफ़ॉर्म से ओरिजनल मैसेज बनाने का समय बनाए रखने के लिए, मैसेज का createTime सेट किया जा सकता है. इस createTime को, स्पेस बनाने के लिए पहले से सेट किए गए समय और मौजूदा समय के बीच की वैल्यू पर सेट किया जाना चाहिए.

एक ही स्पेस में मौजूद मैसेज में एक ही createTime नहीं हो सकता. भले ही, उस समय के पहले मैसेज मिटा दिए गए हों.

जिन मैसेज में इंपोर्ट मोड वाले स्पेस में तीसरे पक्ष के यूआरएल शामिल होते हैं वे Google Chat में, लिंक की झलक नहीं दिखा सकते.

जब इंपोर्ट मोड में मैसेज बनाए जाते हैं, तो स्पेस किसी भी उपयोगकर्ता को न तो कोई सूचना देता है और न ही ईमेल भेजता है. इनमें वे मैसेज भी शामिल हैं जिनमें उपयोगकर्ता ने टैग किया है.

यहां दिए गए उदाहरण में, इंपोर्ट मोड वाले स्पेस में मैसेज बनाने का तरीका बताया गया है:

Python

"""Create a message in import mode space."""

import datetime

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

# Specify required scopes.
SCOPES = [
    'https://www.googleapis.com/auth/chat.import',
]

CREDENTIALS = (
    service_account.Credentials.from_service_account_file('credentials.json')
    .with_scopes(SCOPES)
    .with_subject('EMAIL')
)

# Build a service endpoint for Chat API.
service = build('chat', 'v1', credentials=CREDENTIALS)

NAME = 'spaces/SPACE_NAME'
result = (
    service.spaces()
    .messages()
    .create(
        parent=NAME,
        body={
            'text': 'Hello, world!',
            'createTime': f'{datetime.datetime(2000, 1, 2).isoformat()}Z',
        },
    )
    .execute()
)

print(result)

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

प्रतिक्रियाएं

आपका Chat ऐप्लिकेशन, Chat API का इस्तेमाल करके मैसेज के लिए प्रतिक्रियाएं इंपोर्ट कर सकता है. इंपोर्ट मोड वाले स्पेस में, संसाधनों को ऐक्सेस करने के तरीकों और पुष्टि करने के तरीकों के बारे में जानने के लिए, Chat ऐप्लिकेशन को अनुमति देना लेख पढ़ें.

अटैचमेंट

Chat API का इस्तेमाल करके, आपका Chat ऐप्लिकेशन अटैचमेंट अपलोड कर सकता है. इंपोर्ट मोड वाले स्पेस में संसाधन के तरीकों और पुष्टि करने के तरीकों के बारे में जानने के लिए, Chat ऐप्लिकेशन को अनुमति दें देखें. हालांकि, हमारा सुझाव है कि आप अटैचमेंट को Google Drive फ़ाइलों के तौर पर अपलोड करने के लिए, Google Drive API का इस्तेमाल करें. साथ ही, अटैचमेंट को दूसरे मैसेजिंग प्लैटफ़ॉर्म से इंपोर्ट करने के लिए, इंपोर्ट मोड वाले स्पेस में फ़ाइल के यूआरआई को उन मैसेज से लिंक करें. इससे, अटैचमेंट अपलोड करने के लिए Google Chat की तय सीमा से बचने में मदद मिलेगी.

पुरानी सदस्यताएं

पुरानी सदस्यताएं, उन उपयोगकर्ताओं के लिए बनाई जाती हैं जो सोर्स मैसेजिंग प्लैटफ़ॉर्म से, ओरिजनल स्पेस इकाई को पहले ही छोड़ चुके हैं. हालांकि, आपको उनका डेटा Chat में बनाए रखना है. स्पेस को इंपोर्ट मोड से हटाने के बाद, नए सदस्यों को जोड़ने के बारे में जानने के लिए, पैसे चुकाकर ली जाने वाली सदस्यता का संसाधन बनाना लेख पढ़ें.

कई मामलों में, जब पुराने सदस्यों के नाम Google में मौजूद डेटा के रखरखाव की नीति के दायरे में आते हैं, तो आपको Chat में इंपोर्ट करने से पहले, उस स्पेस में पुराने सदस्यों के बनाए गए डेटा (जैसे कि Messages और प्रतिक्रियाएं) को सेव रखना चाहिए. स्पेस इंपोर्ट मोड में होने पर, Membership रिसॉर्स पर create तरीके का इस्तेमाल करके, पुरानी सदस्यताओं को स्पेस में इंपोर्ट किया जा सकता है. पुरानी सदस्यता के खत्म होने का समय सेव रखने के लिए, आपको सदस्यता का deleteTime सेट करना होगा. छुट्टी का यह समय सटीक होना चाहिए, क्योंकि इससे इस बात पर असर पड़ता है कि उन सदस्यताओं के लिए कौनसा डेटा संभालकर रखना है. इसके अलावा, यह deleteTime टाइमस्टैंप, स्पेस बनाने के टाइमस्टैंप के बाद का होना चाहिए. यह आने वाले समय का टाइमस्टैंप नहीं होना चाहिए.

deleteTime के अलावा, createTime को भी सेट किया जा सकता है, ताकि सदस्यता लेने के मूल समय को बनाए रखा जा सके. deleteTime के उलट, createTime का इस्तेमाल करना ज़रूरी नहीं है. अगर यह पैरामीटर सेट नहीं है, तो createTime का हिसाब अपने-आप लगाया जाता है. इसके लिए, deleteTime से 1 माइक्रोसेकंड घटाया जाता है. अगर सेट किया गया है, तो createTime, deleteTime से पहले होना चाहिए. साथ ही, यह स्पेस बनाने के समय पर या उसके बाद का होना चाहिए. इस createTime जानकारी का इस्तेमाल, डेटा के रखरखाव की अवधि तय करने के लिए नहीं किया जाता. यह जानकारी, Google Admin console और Google Vault जैसे एडमिन टूल में नहीं दिखती.

सोर्स मैसेजिंग प्लैटफ़ॉर्म में, उपयोगकर्ता कई तरीकों से स्पेस में शामिल हो सकता है और उसे छोड़ सकता है. जैसे, न्योते के ज़रिए, खुद शामिल होकर, किसी दूसरे उपयोगकर्ता के जोड़े जाने पर. Chat में, इन सभी कार्रवाइयों को सदस्यता के पुराने createTime और deleteTime फ़ील्ड में जोड़े जाने या हटाए जाने के तौर पर दिखाया जाता है.

यहां दिए गए उदाहरण में, इंपोर्ट मोड वाले स्पेस में पुरानी सदस्यता बनाने का तरीका बताया गया है:

Python

"""Create a historical membership in import mode space."""

import datetime

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

# Specify required scopes.
SCOPES = [
    'https://www.googleapis.com/auth/chat.import',
]

CREDENTIALS = (
    service_account.Credentials.from_service_account_file('credentials.json')
    .with_scopes(SCOPES)
    .with_subject('EMAIL')
)

# Build a service endpoint for Chat API.
service = build('chat', 'v1', credentials=CREDENTIALS)

NAME = 'spaces/SPACE_NAME'
USER = 'users/USER_ID'
result = (
    service.spaces()
    .members()
    .create(
        parent=NAME,
        body={
            'createTime': f'{datetime.datetime(2000, 1, 3).isoformat()}Z',
            'deleteTime': f'{datetime.datetime(2000, 1, 4).isoformat()}Z',
            'member': {'name': USER, 'type': 'HUMAN'},
        },
    )
    .execute()
)

print(result)

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

किसी बाहरी स्पेस में संसाधन इंपोर्ट करना

इंपोर्ट मोड का इस्तेमाल करके, सिर्फ़ अपने Workspace संगठन के उपयोगकर्ताओं के क्रेडेंशियल से, संगठन से बाहर का स्पेस बनाया जा सकता है. यह सिर्फ़ तब लागू होता है, जब स्पेस इंपोर्ट मोड में हो. स्पेस इंपोर्ट मोड पूरा करने के बाद, संगठन से बाहर के उपयोगकर्ताओं को इंपोर्ट किए गए स्पेस में शामिल होने का न्योता भेजा जा सकता है. इसके लिए, ऐक्सेस सेक्शन देखें. साथ ही, उनके क्रेडेंशियल का इस्तेमाल Chat API को कॉल करने के लिए किया जा सकता है.

इंपोर्ट किए गए संसाधनों की पुष्टि करना

आपका Chat ऐप्लिकेशन, Message रिसॉर्स पर list तरीके को कॉल करके, इंपोर्ट मोड वाले स्पेस के कॉन्टेंट को पढ़ सकता है और उनकी पुष्टि कर सकता है. रिटर्न किए गए किसी भी मैसेज के emojiReactionSummaries और attachment फ़ील्ड से, Reaction और Attachment संसाधन पढ़े जा सकते हैं. चैट ऐप्लिकेशन इस तरीके को सिर्फ़ किसी दूसरे व्यक्ति के नाम पर काम करने वाले उपयोगकर्ता की तरफ़ से कॉल कर सकते हैं. ज़्यादा जानकारी के लिए, Chat पर इस्तेमाल किए जा सकने वाले ऐप्लिकेशन को अनुमति देना लेख पढ़ें.

आपका Chat ऐप्लिकेशन, पुष्टि करने के लिए अलग-अलग मैसेज भी पढ़ सकता है. इसके लिए, Message रिसॉर्स पर get तरीका इस्तेमाल किया जाता है. चैट ऐप्लिकेशन, सिर्फ़ अपने मैसेज पढ़ने के लिए इस तरीके का इस्तेमाल कर सकते हैं. इसके लिए, उन्हें अपनी अनुमति का इस्तेमाल करना होगा. ज़्यादा जानकारी के लिए, Chat पर इस्तेमाल किए जा सकने वाले ऐप्लिकेशन को अनुमति देना लेख पढ़ें.

चैट ऐप्लिकेशन, Membership संसाधन पर list तरीके का इस्तेमाल करके, सदस्यताओं के इतिहास की सूची भी दिखा सकते हैं. स्पेस के इंपोर्ट मोड से बाहर निकलने के बाद, list तरीका, पैसे चुकाकर ली गई पुरानी सदस्यताओं की जानकारी नहीं दिखाता है. चैट ऐप्लिकेशन, किसी उपयोगकर्ता के नाम पर सिर्फ़ इस तरीके का इस्तेमाल कर सकते हैं. ज़्यादा जानकारी के लिए, चैट ऐप्लिकेशन को अनुमति देना देखें.

Space रिसॉर्स पर get मेथड को कॉल करके, इंपोर्ट मोड स्पेस की प्रॉपर्टी पढ़ी जा सकती हैं. चैट ऐप्लिकेशन, सिर्फ़ अपनी अनुमति का इस्तेमाल करके इस तरीके को कॉल कर सकते हैं. ज़्यादा जानकारी के लिए, Chat पर इस्तेमाल किए जा सकने वाले ऐप्लिकेशन को अनुमति देना लेख पढ़ें.

सोर्स डेटा से इंपोर्ट किए गए रिसॉर्स के अंतर का मिलान करना

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

मैसेज

इंपोर्ट मोड वाले स्पेस में किसी मैसेज के काम करने वाले फ़ील्ड को अपडेट करने के लिए, Message रिसॉर्स पर update तरीका कॉल करें. चैट ऐप्लिकेशन, इस तरीके को सिर्फ़ उसी अनुमति का इस्तेमाल करके कॉल कर सकते हैं जिसका इस्तेमाल मैसेज बनाने के दौरान किया गया था. अगर आपने मैसेज बनाने के दौरान, किसी व्यक्ति के नाम पर मैसेज भेजने की सुविधा का इस्तेमाल किया है, तो उस मैसेज को अपडेट करने के लिए, आपको उसी व्यक्ति के नाम पर मैसेज भेजना होगा.

इंपोर्ट मोड वाले स्पेस में किसी मैसेज को मिटाने के लिए, Message संसाधन पर delete तरीका इस्तेमाल करें. इंपोर्ट मोड वाले स्पेस में मौजूद मैसेज को, मैसेज बनाने वाले व्यक्ति को मिटाने की ज़रूरत नहीं होती. साथ ही, डोमेन में मौजूद किसी भी व्यक्ति के नाम पर, मैसेज मिटाए जा सकते हैं. चैट ऐप्लिकेशन, सिर्फ़ अपनी अनुमति का इस्तेमाल करके अपने मैसेज मिटा सकते हैं. ज़्यादा जानकारी के लिए, Chat पर इस्तेमाल किए जा सकने वाले ऐप्लिकेशन को अनुमति देना लेख पढ़ें.

प्रतिक्रियाएं

इंपोर्ट मोड वाले स्पेस में किसी मैसेज पर दी गई प्रतिक्रिया मिटाने के लिए, reactions संसाधन पर delete तरीका इस्तेमाल करें. इंपोर्ट मोड वाले स्पेस में संसाधन के तरीकों और पुष्टि करने के तरीकों के बारे में जानने के लिए, Chat ऐप्लिकेशन को अनुमति दें देखें.

अटैचमेंट

इंपोर्ट मोड वाले स्पेस में किसी मैसेज के अटैचमेंट अपडेट करने के लिए, media रिसॉर्स पर upload तरीके का इस्तेमाल करें. इंपोर्ट मोड वाले स्पेस में, संसाधनों को ऐक्सेस करने के तरीकों और पुष्टि करने के तरीकों के बारे में जानने के लिए, Chat ऐप्लिकेशन को अनुमति देना लेख पढ़ें.

पुरानी सदस्यताएं

इंपोर्ट मोड वाले स्पेस में, पुरानी सदस्यता मिटाने के लिए, Membership रिसॉर्स पर delete तरीके का इस्तेमाल करें. जब कोई स्फ़ेस, इंपोर्ट मोड से बाहर निकल जाता है, तो delete तरीके से पुरानी सदस्यताओं को मिटाया नहीं जा सकता.

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

Spaces

इंपोर्ट मोड स्पेस में, इस्तेमाल किए जा सकने वाले फ़ील्ड अपडेट करने के लिए, spaces रिसॉर्स पर patch तरीके का इस्तेमाल करें.

इंपोर्ट मोड वाले स्पेस को मिटाने के लिए, spaces संसाधन पर delete तरीके का इस्तेमाल करें.

इंपोर्ट मोड वाले स्पेस में, संसाधनों को ऐक्सेस करने के तरीकों और पुष्टि करने के तरीकों के बारे में जानने के लिए, Chat ऐप्लिकेशन को अनुमति देना लेख पढ़ें.

इंपोर्ट मोड पूरा करना

completeImport तरीका इस्तेमाल करने से पहले, आपको यह पक्का करना चाहिए कि पुष्टि और संसाधनों के बीच अंतर को मिलान की प्रोसेस पूरी हो गई हो. इंपोर्ट मोड वाले स्पेस से बाहर निकलने के बाद, उसमें वापस नहीं जाया जा सकता. साथ ही, इंपोर्ट मोड वाले स्पेस को सामान्य स्पेस में बदल दिया जाता है. Chat में ऐसा कोई इंडिकेटर नहीं है जो इन स्पेस को डेटा इंपोर्ट करने के लिए एट्रिब्यूट करता है.

completeImport को कॉल करने की तारीख और समय, कॉल करने वाले उपयोगकर्ता के संसाधन का नाम, और मिला जवाब नोट करें. अगर आपको कोई समस्या आती है और आपको उसकी जांच करनी है, तो यह सुविधा आपके लिए मददगार हो सकती है.

इंपोर्ट मोड को पूरा करने और स्पेस को उपयोगकर्ताओं के लिए ऐक्सेस करने के लिए, Chat ऐप्लिकेशन Space रिसॉर्स पर completeImport तरीका कॉल कर सकता है. चैट ऐप्लिकेशन इस तरीके को सिर्फ़ झूठी पहचान बताकर, उपयोगकर्ता की ओर से कॉल कर सकते हैं. ज़्यादा जानकारी के लिए, Chat पर इस्तेमाल किए जा सकने वाले ऐप्लिकेशन को अनुमति देना लेख पढ़ें. इस तरीके के पूरा होने के बाद, किसी दूसरे व्यक्ति को स्पेस में स्पेस मैनेजर के तौर पर जोड़ दिया जाता है. इस तरीके को, create.space तरीके के शुरुआती कॉल के 30 दिनों के अंदर कॉल किया जाना चाहिए. अगर 30 दिन की अवधि बीत जाने के बाद, इस तरीके को कॉल करने की कोशिश की जाती है, तो कॉल नहीं हो पाएगा. ऐसा इसलिए, क्योंकि इंपोर्ट मोड की जगह मिटा दी गई है और इसे Chat ऐप्लिकेशन से ऐक्सेस नहीं किया जा सकता.

completeImport तरीके में, किसी दूसरे व्यक्ति के नाम पर काम करने वाले व्यक्ति को ज़रूरी नहीं है कि वह स्पेस का क्रिएटर हो.

यहां दिए गए उदाहरण में, इंपोर्ट मोड को पूरा करने का तरीका बताया गया है:

Python

"""Complete import."""

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

# Specify required scopes.
SCOPES = [
    'https://www.googleapis.com/auth/chat.import',
]

CREDENTIALS = (
    service_account.Credentials.from_service_account_file('credentials.json')
    .with_scopes(SCOPES)
    .with_subject('EMAIL')
)

# Build a service endpoint for Chat API.
service = build('chat', 'v1', credentials=CREDENTIALS)

NAME = 'spaces/SPACE_NAME'
result = service.spaces().completeImport(name=NAME).execute()

print(result)

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

इंपोर्ट मोड के बाद स्पेस का ऐक्सेस देना

Chat के उपयोगकर्ताओं को हाल ही में इंपोर्ट किए गए स्पेस का ऐक्सेस देने के लिए, चैट ऐप्लिकेशन create.space() तरीके से कॉल करने के 30 दिनों के अंदर, chat.import के दायरे और उपयोगकर्ता के नाम पर इनका इस्तेमाल कर सकते हैं:

chat.import स्कोप के साथ इन तरीकों का इस्तेमाल करने के लिए, जिस व्यक्ति के नाम पर काम किया जा रहा है वह स्पेस मैनेजर होना चाहिए.

संगठन से बाहर के स्पेस के लिए, सदस्यता create() वाला तरीका का इस्तेमाल करके, Workspace खाते से बाहर के उपयोगकर्ताओं को न्योता भी भेजा जा सकता है. पक्का करें कि आपको बाहरी उपयोगकर्ताओं के लिए, पहले से मौजूद सभी सीमाओं की जानकारी हो.

समस्या का हल

अगर आपको चैट स्पेस इंपोर्ट करने में कोई समस्या आ रही है, तो मदद पाने के लिए यहां दी गई समस्याओं को देखें. अगर आपको गड़बड़ी वाला कोई जवाब मिलता है, तो उसे नोट कर लें. इसके लिए, उस टेक्स्ट को दस्तावेज़ में कॉपी करें, चिपकाएं या स्क्रीनशॉट सेव करें, ताकि आने वाले समय में समस्या का हल किया जा सके.

जब कोई स्पेस इंपोर्ट हो जाता है, तो CompleteImportSpace की स्थिति OK पर सेट हो जाती है.

30 दिन की समयसीमा खत्म होने से पहले, इंपोर्ट की प्रोसेस पूरी नहीं की जा सकी

इंपोर्ट मोड में स्पेस बनाना में पहले बताया गया था कि अगर स्पेस बनाने के लिए इस्तेमाल किए गए तरीके को लागू करने के 30 दिनों बाद भी स्पेस इंपोर्ट मोड में है, तो वह अपने-आप मिट जाता है. साथ ही, उसमें मौजूद डेटा को ऐक्सेस नहीं किया जा सकता और न ही उसे वापस पाया जा सकता है.

माफ़ करें, मिटाए गए स्पेस को अब वापस नहीं पाया जा सकता. साथ ही, उसे ऐक्सेस भी नहीं किया जा सकता. इसलिए, डेटा इंपोर्ट करने की प्रोसेस को फिर से शुरू करना होगा.

स्पेस न दिखने की समस्या हल करना

अगर आपको नया चैट स्पेस नहीं मिल रहा है, तो यहां दी गई टेबल में CompleteImportSpace से मिले जवाब के बारे में पढ़ें. इससे आपको पता चलेगा कि इसकी वजह क्या है और इसे कैसे ठीक किया जा सकता है.

जवाब मिल गया जांच करने का तरीका जानकारी रिज़ॉल्यूशन
CompleteImportSpace अपवाद दिखाता है और GetSpace को कॉल करने पर PERMISSION_DENIED नतीजा मिलता है. अपने रिकॉर्ड देखें कि स्पेस कब बनाया गया था. साथ ही, अगर स्पेस 30 दिन से ज़्यादा पुराना है, तो वह अपने-आप मिट जाता है. इसके अलावा, स्पेस मैनेजमेंट टूल या ऑडिट लॉग में, इंपोर्ट किए गए स्पेस का कोई रिकॉर्ड नहीं होता. इंपोर्ट की प्रोसेस शुरू हुए 30 दिन से ज़्यादा हो चुके हैं और स्पेस को माइग्रेट नहीं किया जा सका. कोई नया स्पेस बनाएं और इंपोर्ट करने की प्रोसेस फिर से चलाएं.
CompleteImportSpace से OK और GetSpace से PERMISSION_DENIED मिलता है. स्पेस मैनेजमेंट टूल में, इंपोर्ट की गई स्पेस का कोई रिकॉर्ड मौजूद नहीं है. हालांकि, ऑडिट लॉग में वह स्पेस दिखता है. स्पेस इंपोर्ट हो गया था, लेकिन बाद में उसे मिटा दिया गया. कोई नया स्पेस बनाएं और इंपोर्ट करने की प्रोसेस फिर से चलाएं.