Google Chat API की मदद से, अन्य मैसेजिंग प्लैटफ़ॉर्म से डेटा को Google Chat में इंपोर्ट किया जा सकता है. अपने अन्य मैसेजिंग प्लैटफ़ॉर्म से मौजूदा मैसेज, अटैचमेंट, प्रतिक्रियाएं, सदस्यताएं, और स्पेस की इकाइयां, उनसे जुड़े Chat API संसाधनों में इंपोर्ट की जा सकती हैं. इस डेटा को इंपोर्ट करने के लिए, Chat में स्पेस बनाए जा सकते हैं. इसके लिए, इंपोर्ट मोड का इस्तेमाल करें. इसके बाद, उन स्पेस में डेटा इंपोर्ट करें. प्रोसेस पूरी होने के बाद, ये स्पेस स्टैंडर्ड Chat स्पेस बन जाते हैं.
इंपोर्ट करने की पूरी प्रोसेस यहां दी गई है:
- इंपोर्ट करने की योजना बनाना
- Chat ऐप्लिकेशन के लिए अनुमति देने की सुविधा कॉन्फ़िगर करना
- इंपोर्ट मोड में कोई स्पेस बनाना
- संसाधन इंपोर्ट करना
- इंपोर्ट किए गए संसाधनों की पुष्टि करना
- सोर्स डेटा से इंपोर्ट किए गए संसाधन के अंतर को मिलाना
- पूरा इंपोर्ट मोड
- इंपोर्ट मोड के बाद स्पेस का ऐक्सेस देना
- समस्या का हल
ज़रूरी शर्तें
Apps Script
- आपके पास Business या Enterprise वर्शन वाला Google Workspace खाता होना चाहिए. साथ ही, आपके पास Google Chat को ऐक्सेस करने की अनुमति होनी चाहिए.
- Google Cloud प्रोजेक्ट बनाएं.
- अपने Chat ऐप्लिकेशन के लिए, नाम, आइकॉन, और जानकारी के साथ Google Chat API चालू करें और उसे कॉन्फ़िगर करें.
- Apps Script का स्टैंडअलोन प्रोजेक्ट बनाएं और ऐडवांस चैट सेवा चालू करें.
- Chat ऐप्लिकेशन को, उन सभी डोमेन में डोमेन-वाइड अथॉरिटी सौंपनी होगी जिनमें ऐप्लिकेशन कॉन्टेंट इंपोर्ट करता है. इसके लिए, Chat ऐप्लिकेशन को अनुमति देना लेख पढ़ें.
Python
- आपके पास Business या Enterprise वर्शन वाला Google Workspace खाता होना चाहिए. साथ ही, आपके पास Google Chat को ऐक्सेस करने की अनुमति होनी चाहिए.
- Google Cloud प्रोजेक्ट बनाएं.
- अपने Chat ऐप्लिकेशन के लिए, नाम, आइकॉन, और जानकारी के साथ Google Chat API चालू करें और उसे कॉन्फ़िगर करें.
- Python 3.6 या इसके बाद का वर्शन
- pip पैकेज मैनेजमेंट टूल
- Chat ऐप्लिकेशन को, उन सभी डोमेन में डोमेन-वाइड अथॉरिटी सौंपनी होगी जिनमें ऐप्लिकेशन कॉन्टेंट इंपोर्ट करता है. इसके लिए, Chat ऐप्लिकेशन को अनुमति देना लेख पढ़ें.
इंपोर्ट करने की योजना बनाना
इंपोर्ट किए जाने वाले डेटा की मात्रा के हिसाब से प्लान बनाएं. साथ ही, यह समझें कि इस्तेमाल की सीमाएं और कोटा, इंपोर्ट करने की प्रोसेस पर कैसे असर डाल सकते हैं. इसके अलावा, यह भी जानें कि नए स्पेस में इंपोर्ट करते समय, Chat के किस तरह के स्पेस काम करते हैं. अगर आप एडमिन हैं, तो किसी दूसरी सेवा से Google Chat में मैसेज का डेटा इंपोर्ट करना लेख पढ़ें और दिए गए निर्देशों का पालन करें.
एपीआई के इस्तेमाल से जुड़ी सीमाएं देखना
Chat में डेटा इंपोर्ट करने में लगने वाला समय, इंपोर्ट किए जाने वाले Chat संसाधनों की संख्या के हिसाब से अलग-अलग हो सकता है. अनुमानित समयसीमा तय करने के लिए, Chat ऐप्लिकेशन के इस्तेमाल की सीमाएं और सोर्स मैसेजिंग प्लैटफ़ॉर्म से इंपोर्ट किए जाने वाले डेटा की मात्रा देखें.
किसी स्पेस में मैसेज इंपोर्ट करते समय, हमारा सुझाव है कि आप अलग-अलग मैसेज थ्रेड में messages.create()
तरीके से कॉल फैलाएं.
इंपोर्ट किए जा सकने वाले स्पेस की पहचान करना
इंपोर्ट मोड में, सिर्फ़ SPACE
के SpaceType
और GROUP_CHAT
का इस्तेमाल किया जा सकता है. यह DIRECT_MESSAGE
के साथ काम नहीं करता.
ज़्यादा जानकारी के लिए, SpaceType
के लिए उपलब्ध दस्तावेज़ देखें.
इंपोर्ट मोड में स्पेस बनाना
इंपोर्ट मोड में स्पेस बनाने के लिए, Space
संसाधन पर create
तरीका को कॉल करें और importMode
को true
पर सेट करें.
इंपोर्ट मोड में स्पेस बनाते समय, इन बातों का ध्यान रखें.
- तारीख और समय - ध्यान रखें कि इंपोर्ट मोड को 90 दिनों के अंदर पूरा करना ज़रूरी है. अगर
spaces.create()
तरीके को कॉल करने के 90 दिनों के बाद भी स्पेस इंपोर्ट मोड में रहता है, तो इसे अपने-आप मिटा दिया जाता है. इसके बाद, इसे ऐक्सेस नहीं किया जा सकता और न ही वापस लाया जा सकता है.- 90 दिनों की समयसीमा खत्म होने पर नज़र रखने के लिए,
importModeExpireTime
फ़ील्ड की वैल्यू का इस्तेमाल करें. - 90 दिनों की समयसीमा खत्म होने की जानकारी को ट्रैक करने के लिए,
createTime
फ़ील्ड की वैल्यू का इस्तेमाल न करें. यह हमेशाspaces.create()
तरीके को कॉल करने जैसा नहीं होता. इंपोर्ट मोड का इस्तेमाल करते समय,createTime
फ़ील्ड को उस ऐतिहासिक टाइमस्टैंप पर सेट किया जा सकता है जिस पर सोर्स में स्पेस बनाया गया था. इससे स्पेस बनाने का ओरिजनल समय सुरक्षित रहता है.
- 90 दिनों की समयसीमा खत्म होने पर नज़र रखने के लिए,
- स्पेस का संसाधन नाम (
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)
इनकी जगह ये डालें:
EMAIL
: उस उपयोगकर्ता खाते का ईमेल पता जिसके नाम पर आपको पूरे डोमेन के लिए अनुमति मिली है.SPACE_NAME
: इंपोर्ट मोड में बनाए गए स्पेस का नाम.
प्रतिक्रियाएं
Chat API का इस्तेमाल करके, आपका Chat ऐप्लिकेशन मैसेज के लिए प्रतिक्रियाएं इंपोर्ट कर सकता है. इंपोर्ट मोड वाले स्पेस में, संसाधन के तरीकों और पुष्टि करने के तरीकों के बारे में जानने के लिए, Chat ऐप्लिकेशन को अनुमति देना लेख पढ़ें.
अटैचमेंट
Chat API का इस्तेमाल करके, आपका Chat ऐप्लिकेशन अटैचमेंट अपलोड कर सकता है. इंपोर्ट मोड वाले स्पेस में, संसाधन के तरीकों और पुष्टि करने के तरीकों के बारे में जानने के लिए, Chat ऐप्लिकेशन को अनुमति देना लेख पढ़ें. हालांकि, हमारा सुझाव है कि अटैचमेंट को Google Drive फ़ाइलों के तौर पर अपलोड करने के लिए, Google Drive API का इस्तेमाल करें. साथ ही, फ़ाइल यूआरआई को इंपोर्ट मोड वाले स्पेस में मौजूद मैसेज से लिंक करें, ताकि अन्य मैसेजिंग प्लैटफ़ॉर्म से अटैचमेंट इंपोर्ट किए जा सकें. इससे, अटैचमेंट अपलोड करने के लिए Google Chat की तय सीमा को पूरा करने से बचा जा सकेगा.
पुरानी सदस्यताएं
पुरानी सदस्यताएं उन उपयोगकर्ताओं के लिए बनाई जाती हैं जो सोर्स मैसेजिंग प्लैटफ़ॉर्म से ओरिजनल स्पेस इकाई छोड़ चुके हैं. हालांकि, आपको Chat में उनका डेटा बनाए रखना है. स्पेस को इंपोर्ट मोड से हटाने के बाद, नए सदस्यों को जोड़ने के बारे में जानकारी के लिए, सदस्यता संसाधन बनाना लेख पढ़ें.
कई मामलों में, जब पुराने सदस्यों पर Google की डेटा के रखरखाव की नीति लागू होती है, तो आपको Chat में स्पेस इंपोर्ट करने से पहले, स्पेस में पुराने सदस्यों के बनाए गए डेटा (जैसे कि मैसेज और प्रतिक्रियाएं) को सेव रखना होता है.
स्पेस को इंपोर्ट मोड में रखते हुए, उन पुरानी सदस्यताओं को स्पेस में इंपोर्ट किया जा सकता है. इसके लिए, Membership
रिसॉर्स पर create
तरीके का इस्तेमाल करें.
सदस्यता छोड़ने के समय को सुरक्षित रखने के लिए, आपको सदस्यता के deleteTime
को सेट करना होगा. छुट्टी पर जाने का समय सटीक होना चाहिए, क्योंकि इससे यह तय होता है कि उन सदस्यताओं के लिए कौनसा डेटा बनाए रखना है. इसके अलावा, यह deleteTime
स्पेस बनाने के टाइमस्टैंप के बाद का होना चाहिए और आने वाले समय का टाइमस्टैंप नहीं होना चाहिए.
deleteTime
के अलावा, createTime
को भी सेट किया जा सकता है. इससे, सदस्यता लेने के मूल समय की जानकारी सुरक्षित रहती है. deleteTime
के उलट, createTime
का इस्तेमाल करना ज़रूरी नहीं है. अगर इसे सेट नहीं किया जाता है, तो createTime
की वैल्यू में से 1 माइक्रोसेकंड घटाकर, deleteTime
की वैल्यू अपने-आप कैलकुलेट हो जाती है. अगर सेट किया गया है, तो 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)
इनकी जगह ये डालें:
EMAIL
: उस उपयोगकर्ता खाते का ईमेल पता जिसके नाम पर आपको पूरे डोमेन के लिए अनुमति मिली है.SPACE_NAME
: इंपोर्ट मोड में बनाए गए स्पेस का नाम.USER_ID
: उपयोगकर्ता के लिए यूनीक आईडी.
संगठन से बाहर के स्पेस में संसाधन इंपोर्ट करना
इंपोर्ट मोड का इस्तेमाल करके, सिर्फ़ अपने Workspace संगठन के उपयोगकर्ताओं के क्रेडेंशियल से बाहरी स्पेस बनाया जा सकता है. यह सिर्फ़ तब लागू होता है, जब स्पेस इंपोर्ट मोड में हो. स्पेस के इंपोर्ट मोड पूरा होने के बाद, बाहरी उपयोगकर्ताओं को इंपोर्ट किए गए स्पेस में शामिल होने का न्योता भेजा जा सकता है. इसके लिए, ऐक्सेस सेक्शन देखें. साथ ही, उनके क्रेडेंशियल का इस्तेमाल Chat API को कॉल करने के लिए किया जा सकता है.
इंपोर्ट किए गए संसाधनों की पुष्टि करना
आपका Chat ऐप्लिकेशन, इंपोर्ट मोड वाले स्पेस के कॉन्टेंट को पढ़कर उसकी पुष्टि कर सकता है. इसके लिए, उसे Message
संसाधन पर list
तरीके को कॉल करना होगा.
वापस लाए गए किसी भी मैसेज के emojiReactionSummaries
और attachment
फ़ील्ड से, Reaction
और Attachment
संसाधनों को पढ़ा जा सकता है. चैट ऐप्लिकेशन, किसी उपयोगकर्ता की पहचान चुराकर ही उसकी ओर से इस तरीके को कॉल कर सकते हैं. ज़्यादा जानकारी के लिए, Chat ऐप्लिकेशन को अनुमति देना लेख पढ़ें.
आपका Chat ऐप्लिकेशन, पुष्टि करने के लिए अलग-अलग मैसेज भी पढ़ सकता है. इसके लिए, Message
रिसॉर्स पर get
तरीके को कॉल करें.
Chat ऐप्लिकेशन, इस तरीके का इस्तेमाल करके सिर्फ़ अपने मैसेज पढ़ सकते हैं. इसके लिए, उन्हें अपनी अनुमति का इस्तेमाल करना होगा. ज़्यादा जानकारी के लिए, Chat ऐप्लिकेशन को अनुमति देना लेख पढ़ें.
चैट ऐप्लिकेशन, Membership
संसाधन पर list
तरीके को कॉल करके, सदस्यता का इतिहास भी दिखा सकते हैं.
स्पेस के इंपोर्ट मोड से बाहर निकलने के बाद, list
तरीके से पुरानी मेंबरशिप की जानकारी नहीं मिलती. चैट ऐप्लिकेशन, उपयोगकर्ता की ओर से इस तरीके को सिर्फ़ तब कॉल कर सकते हैं, जब वे उपयोगकर्ता की पहचान छिपाकर काम कर रहे हों. ज़्यादा जानकारी के लिए, Chat ऐप्लिकेशन को अनुमति देना लेख पढ़ें.
इंपोर्ट मोड वाले स्पेस की प्रॉपर्टी पढ़ने के लिए, Space
संसाधन पर get
तरीके को कॉल करें. जवाब में importModeExpireTime
भी दिखेगा, ताकि इंपोर्ट की प्रोसेस पूरी होने में लगने वाले समय को सही तरीके से ट्रैक किया जा सके.
चैट ऐप्लिकेशन, इस तरीके को सिर्फ़ अपनी अनुमति से कॉल कर सकते हैं.
ज़्यादा जानकारी के लिए, Chat ऐप्लिकेशन को अनुमति देना लेख पढ़ें.
सोर्स डेटा से इंपोर्ट किए गए संसाधन के अंतर को मिलाना
अगर इंपोर्ट की गई कोई संसाधन, सोर्स मैसेजिंग प्लैटफ़ॉर्म की ओरिजनल इकाई से मेल नहीं खाता है, तो चैट ऐप्लिकेशन, Chat API को कॉल करके इंपोर्ट किए गए चैट संसाधन में बदलाव कर सकते हैं. ऐसा तब होता है, जब इंपोर्ट करने के दौरान ओरिजनल इकाई में बदलाव किए गए हों. उदाहरण के लिए, अगर कोई उपयोगकर्ता सोर्स मैसेजिंग प्लैटफ़ॉर्म में किसी मैसेज में बदलाव करता है, तो Chat ऐप्लिकेशन उस मैसेज को अपडेट कर सकते हैं. इससे, मैसेज में मूल मैसेज का मौजूदा कॉन्टेंट दिखेगा.
मैसेज
इंपोर्ट मोड वाले स्पेस में किसी मैसेज के लिए, साथ काम करने वाले फ़ील्ड अपडेट करने के लिए, Message
रिसोर्स पर update
तरीके को कॉल करें.
चैट ऐप्लिकेशन, इस तरीके को सिर्फ़ उसी अथॉरिटी का इस्तेमाल करके कॉल कर सकते हैं जिसका इस्तेमाल शुरुआती मैसेज बनाने के दौरान किया गया था. अगर आपने मैसेज बनाते समय उपयोगकर्ता के नाम का इस्तेमाल किया था, तो मैसेज को अपडेट करने के लिए भी आपको उसी उपयोगकर्ता के नाम का इस्तेमाल करना होगा.
इंपोर्ट मोड वाले स्पेस में मौजूद किसी मैसेज को मिटाने के लिए, Message
रिसॉर्स पर delete
तरीके को कॉल करें.
इंपोर्ट मोड वाले स्पेस में मौजूद मैसेज को मिटाने के लिए, मैसेज बनाने वाले व्यक्ति की ज़रूरत नहीं होती. डोमेन में मौजूद किसी भी उपयोगकर्ता के तौर पर काम करके, मैसेज मिटाया जा सकता है.
Chat ऐप्लिकेशन, सिर्फ़ अपने मैसेज मिटा सकते हैं. इसके लिए, उन्हें अपनी अनुमति का इस्तेमाल करना होगा. ज़्यादा जानकारी के लिए, Chat ऐप्लिकेशन को अनुमति देना लेख पढ़ें.
प्रतिक्रियाएं
इंपोर्ट मोड वाले स्पेस में किसी मैसेज पर दी गई प्रतिक्रिया को मिटाने के लिए, reactions
रिसॉर्स पर delete
तरीके का इस्तेमाल करें. इंपोर्ट मोड वाले स्पेस में, संसाधन के तरीकों और पुष्टि करने के तरीकों के बारे में जानने के लिए, Chat ऐप्लिकेशन को अनुमति देना लेख पढ़ें.
अटैचमेंट
इंपोर्ट मोड स्पेस में किसी मैसेज के अटैचमेंट अपडेट करने के लिए, media
रिसोर्स पर upload
तरीके का इस्तेमाल करें. इंपोर्ट मोड वाले स्पेस में, संसाधन के तरीकों और पुष्टि करने के टाइप के बारे में जानने के लिए, Chat ऐप्लिकेशन को अनुमति देना लेख पढ़ें.
पुरानी सदस्यताएं
इंपोर्ट मोड वाले स्पेस में, सदस्यता का पुराना डेटा मिटाने के लिए, Membership
संसाधन पर delete
तरीके का इस्तेमाल करें. स्पेस के इंपोर्ट मोड से बाहर निकलने के बाद, delete
तरीके से अब पुरानी सदस्यताओं को नहीं मिटाया जा सकता.
इंपोर्ट मोड वाले स्पेस में, पुरानी सदस्यता को अपडेट नहीं किया जा सकता. अगर आपको सदस्यता के इतिहास की गलत जानकारी को ठीक करना है, तो आपको पहले उसे मिटाना होगा. इसके बाद, स्पेस के इंपोर्ट मोड में रहते हुए उसे फिर से बनाना होगा.
Spaces
इंपोर्ट मोड वाले स्पेस में साथ काम करने वाले फ़ील्ड अपडेट करने के लिए, spaces
रिसॉर्स पर patch
तरीके का इस्तेमाल करें.
इंपोर्ट मोड वाले स्पेस को मिटाने के लिए, spaces
संसाधन पर delete
तरीके का इस्तेमाल करें.
इंपोर्ट मोड वाले स्पेस में, संसाधन के तरीकों और पुष्टि करने के टाइप के बारे में जानकारी पाने के लिए, Chat ऐप्लिकेशन को अनुमति दें पर जाएं.
पूरा इंपोर्ट मोड
completeImport
तरीके को कॉल करने से पहले, आपको यह पक्का करना होगा कि पुष्टि और संसाधन में अंतर का मिलान पूरा हो गया हो. इंपोर्ट मोड से बाहर निकलने की प्रोसेस को पहले जैसा नहीं किया जा सकता. इससे इंपोर्ट मोड वाला स्पेस, सामान्य स्पेस में बदल जाता है. चैट में ऐसा कोई इंडिकेटर नहीं है जो इन स्पेस को डेटा इंपोर्ट से जोड़ता हो.
completeImport
को कॉल करने की तारीख और समय, कॉल करने वाले उपयोगकर्ता का संसाधन नाम, और मिले जवाब को नोट करें. अगर आपको कोई समस्या आ रही है और आपको उसकी जांच करनी है, तो यह जानकारी आपके काम आ सकती है.
इंपोर्ट मोड पूरा करने और उपयोगकर्ताओं को स्पेस का ऐक्सेस देने के लिए, Chat ऐप्लिकेशन Space
संसाधन पर completeImport
तरीके को कॉल कर सकता है.
चैट ऐप्लिकेशन, उपयोगकर्ता की ओर से इस तरीके को सिर्फ़ तब कॉल कर सकते हैं, जब वे उपयोगकर्ता की पहचान का गलत इस्तेमाल कर रहे हों. ज़्यादा जानकारी के लिए, Chat ऐप्लिकेशन को अनुमति देना लेख पढ़ें.
इस तरीके के पूरा होने के बाद, जिस उपयोगकर्ता के नाम पर कार्रवाई की गई है उसे स्पेस में स्पेस मैनेजर के तौर पर जोड़ दिया जाता है. इस तरीके को, create.space
तरीके के शुरुआती कॉल के 90 दिनों के अंदर कॉल किया जाना चाहिए. अगर 90 दिनों की अवधि खत्म होने के बाद, इस तरीके को कॉल करने की कोशिश की जाती है, तो कॉल पूरा नहीं होगा. ऐसा इसलिए, क्योंकि इंपोर्ट मोड वाला स्पेस मिटा दिया जाता है और अब Chat ऐप्लिकेशन के लिए उपलब्ध नहीं होता.
completeImport
तरीके में, उपयोगकर्ता के तौर पर काम करने वाले व्यक्ति का स्पेस क्रिएटर होना ज़रूरी नहीं है.
completeImport
को importModeExpireTime
के बहुत करीब न रखें, क्योंकि हम इस बात की गारंटी नहीं दे सकते कि अनुरोध importModeExpireTime
से पहले पहुंच जाएगा. साथ ही, ऐसा हो सकता है कि समयसीमा खत्म होने पर ट्रिगर होने वाले सिस्टम में डेटा प्रोसेसिंग से जुड़ी समस्याएं आएं.
हमारा सुझाव है कि completeImport
से कम से कम 30 मिनट पहले importModeExpireTime
पर कॉल करें.
यहां दिए गए उदाहरण में, इंपोर्ट मोड को पूरा करने का तरीका बताया गया है:
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)
इनकी जगह ये डालें:
EMAIL
: उस उपयोगकर्ता खाते का ईमेल पता जिसके नाम पर आपको पूरे डोमेन के लिए अनुमति मिली है.SPACE_NAME
: इंपोर्ट मोड में बनाए गए स्पेस का नाम.
इंपोर्ट मोड के बाद स्पेस का ऐक्सेस देना
Chat के उपयोगकर्ताओं को हाल ही में इंपोर्ट किए गए स्पेस का ऐक्सेस देने के लिए, Chat ऐप्लिकेशन chat.import
स्कोप और उपयोगकर्ता के नाम पर कार्रवाई करने की सुविधा का इस्तेमाल कर सकते हैं. इसके लिए, उन्हें create.space()
तरीके से कॉल करने के 90 दिनों के अंदर ये काम करने होंगे:
- स्पेस में सदस्यों को जोड़ें:
Membership
रिसॉर्स परcreate()
तरीके को कॉल करें. हमारा सुझाव है कि स्पेस इंपोर्ट होने के तुरंत बाद, Chat ऐप्लिकेशनMembership
संसाधन बनाएं. इससे Chat ऐप्लिकेशन,chat.import
स्कोप का इस्तेमाल जारी रख पाएंगे. साथ ही, यह पक्का कर पाएंगे कि इंपोर्ट किए गए सभी सदस्यों के पास स्पेस का ऐक्सेस हो. आपको उन सदस्यों को जोड़ने को प्राथमिकता देनी चाहिए जिन पर Vault में डेटा को सुरक्षित रखने की नीति लागू हो सकती है. इससे इंपोर्ट किए गए मैसेज को सुरक्षित रखा जा सकता है, भले ही वे निजी डेटा के रखरखाव की अवधि से बाहर हों. - टारगेट ऑडियंस सेट करना:
Space
रिसोर्स परupdate()
तरीके को कॉल करें. टारगेट ऑडियंस बनाने और उन्हें जोड़ने का तरीका जानने के लिए, Google Workspace संगठन के कुछ उपयोगकर्ताओं के लिए, Google Chat स्पेस को खोजने की सुविधा चालू करना लेख पढ़ें.
chat.import
स्कोप के साथ इन तरीकों का इस्तेमाल करने के लिए, जिस उपयोगकर्ता के तौर पर कार्रवाई की जा रही है उसके पास स्पेस मैनेजर की भूमिका होनी चाहिए.
बाहरी स्पेस के लिए, create()
शामिल होने के तरीके से, Workspace संगठन से बाहर के उपयोगकर्ताओं को भी न्योता भेजा जा सकता है. पक्का करें कि आपको बाहरी उपयोगकर्ताओं के लिए, ज्ञात सीमाओं के बारे में पता हो.
समस्या का हल
अगर आपको Chat स्पेस इंपोर्ट करते समय कोई समस्या आ रही है, तो मदद पाने के लिए यहां दी गई समस्याएं देखें. अगर आपको गड़बड़ी का कोई जवाब मिलता है, तो उसे नोट कर लें. इसके लिए, टेक्स्ट को किसी दस्तावेज़ में कॉपी/चिपकाएं या स्क्रीनशॉट सेव करें. इससे आपको आने वाले समय में समस्या को ठीक करने में मदद मिलेगी.
स्पेस इंपोर्ट होने के बाद, CompleteImportSpace
OK
के साथ पूरा हो जाता है.
90 दिनों की विंडो खत्म होने से पहले इंपोर्ट पूरा नहीं किया गया
इंपोर्ट मोड में स्पेस बनाना लेख में पहले बताया गया है कि अगर स्पेस, create तरीके को कॉल किए जाने के 90 दिनों बाद भी इंपोर्ट मोड में रहता है, तो वह अपने-आप मिट जाता है. इसके बाद, उसे ऐक्सेस नहीं किया जा सकता और न ही वापस लाया जा सकता है.
माफ़ करें, मिटाया गया स्पेस अब उपलब्ध नहीं है. साथ ही, उसे वापस भी नहीं लाया जा सकता. इसलिए, आपको इंपोर्ट करने की प्रोसेस फिर से शुरू करनी होगी.
अगर स्पेस को इंपोर्ट नहीं किया गया है, तो हो सकता है कि मौजूदा इस्तेमाल की सीमाओं के साथ, 90 दिनों की अवधि में इंपोर्ट करने के लिए बहुत ज़्यादा डेटा हो. ऐसे में, स्पेस को दो या उससे ज़्यादा छोटे स्पेस में बांटें, ताकि उन्हें संग्रहित किया जा सके. इसके बाद, इंपोर्ट करने की प्रोसेस फिर से शुरू करें.
ऐसे स्पेस ढूंढना जो मौजूद नहीं हैं
अगर आपको नया Chat स्पेस नहीं मिल रहा है, तो CompleteImportSpace
से मिले जवाब के लिए, यहां दी गई टेबल देखें. इसमें समस्या के बारे में बताया गया है और उसे हल करने का तरीका भी बताया गया है.
जवाब मिल गया | जांच के चरण | जानकारी | रिज़ॉल्यूशन |
---|---|---|---|
CompleteImportSpace एक अपवाद दिखाता है और GetSpace को कॉल करने पर PERMISSION_DENIED मिलता है. |
अपने रिकॉर्ड देखें कि स्पेस कब बनाया गया था. अगर उसे बनाए हुए 90 दिन से ज़्यादा हो गए हैं, तो वह अपने-आप मिट गया होगा. इसके अलावा, इंपोर्ट किए गए स्पेस का कोई रिकॉर्ड स्पेस मैनेजमेंट टूल या ऑडिट लॉग में नहीं है. | इंपोर्ट की प्रोसेस शुरू हुए 90 दिन से ज़्यादा हो गए हैं और स्पेस को माइग्रेट नहीं किया जा सका. | नया स्पेस बनाएं और इंपोर्ट करने की प्रोसेस को फिर से चलाएं. |
CompleteImportSpace से OK और कॉलिंग
GetSpace से PERMISSION_DENIED मिलता है. |
स्पेस मैनेज करने वाले टूल में, इंपोर्ट किए गए स्पेस का कोई रिकॉर्ड नहीं है. हालांकि, ऑडिट लॉग में स्पेस को मिटाए गए के तौर पर दिखाया गया है. | स्पेस को इंपोर्ट कर लिया गया था, लेकिन बाद में उसे मिटा दिया गया. | नया स्पेस बनाएं और इंपोर्ट करने की प्रोसेस को फिर से चलाएं. |