ऐसा स्पेस सेट अप करना जिसमें शुरुआत में सदस्य शामिल हों

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

Space संसाधन एक ऐसी जगह है जहां लोग और चैट ऐप्लिकेशन मैसेज भेज सकते हैं, फ़ाइलें शेयर कर सकते हैं, और साथ मिलकर काम कर सकते हैं. स्पेस कई तरह के होते हैं:

  • डायरेक्ट मैसेज (DM), दो उपयोगकर्ताओं या किसी उपयोगकर्ता और Chat ऐप्लिकेशन के बीच होने वाली बातचीत हैं.
  • ग्रुप चैट, तीन या उससे ज़्यादा उपयोगकर्ताओं और चैट ऐप्लिकेशन के बीच होने वाली बातचीत है.
  • नाम वाले स्पेस ऐसी जगहें हैं जहां लोग मैसेज भेजते हैं, फ़ाइलें शेयर करते हैं, और साथ मिलकर काम करते हैं.

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

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

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

Python

  • Python 3.6 या इससे नया वर्शन
  • pip पैकेज मैनेजमेंट टूल
  • Python के लिए, Google की नई क्लाइंट लाइब्रेरी. इन्हें इंस्टॉल या अपडेट करने के लिए, अपने कमांड-लाइन इंटरफ़ेस में इस कमांड को चलाएं:

    pip3 install --upgrade google-api-python-client google-auth-oauthlib
    
  • ऐसा Google Cloud प्रोजेक्ट जिसमें Google Chat API चालू हो और उसे कॉन्फ़िगर किया गया हो. इसका तरीका जानने के लिए, Google Chat ऐप्लिकेशन बनाना देखें.
  • Chat ऐप्लिकेशन के लिए अनुमति देने की सेटिंग कॉन्फ़िगर की गई है. स्पेस सेट अप करने के लिए, chat.spaces.create या chat.spaces की अनुमति वाले स्कोप के साथ उपयोगकर्ता की पुष्टि करना ज़रूरी है.

Node.js

  • Node.js और npm
  • Node.js के लिए Google की नई क्लाइंट लाइब्रेरी. उन्हें इंस्टॉल करने के लिए, अपने कमांड-लाइन इंटरफ़ेस में, यहां दिए गए कमांड को चलाएं:

    npm install @google-cloud/local-auth @googleapis/chat
    
  • ऐसा Google Cloud प्रोजेक्ट जिसमें Google Chat API चालू हो और उसे कॉन्फ़िगर किया गया हो. इसका तरीका जानने के लिए, Google Chat ऐप्लिकेशन बनाना देखें.
  • Chat ऐप्लिकेशन के लिए अनुमति देने की सेटिंग को कॉन्फ़िगर किया गया. स्पेस बनाने के लिए, chat.spaces.create या chat.spaces की अनुमति वाले स्कोप के साथ उपयोगकर्ता की पुष्टि करना ज़रूरी है.

स्पेस सेट अप करना

स्पेस सेट अप करने के लिए, अपने अनुरोध में यह जानकारी दें:

  • chat.spaces.create या chat.spaces की अनुमति का दायरा बताएं.
  • Space संसाधन पर setup तरीके को कॉल करें.
  • स्पेस के सदस्य के तौर पर किसी व्यक्ति को जोड़ने के लिए, users/{user} तय करें. इसमें People API के person के लिए {user} या तो {person_id} है या डायरेक्ट्री एपीआई में user का आईडी है. उदाहरण के लिए, अगर People API के सदस्य resourceName की वैल्यू people/123456789 है, तो users/123456789 की सदस्यता को member.name के तौर पर शामिल करके, उपयोगकर्ता को स्पेस में जोड़ा जा सकता है.
  • किसी ग्रुप को स्पेस के सदस्य के तौर पर जोड़ने के लिए, groups/{group} डालें. यहां {group}, उस ग्रुप का आईडी है जिसके लिए आपको सदस्यता बनानी है. ग्रुप का आईडी, Cloud Identity API का इस्तेमाल करके वापस पाया जा सकता है. उदाहरण के लिए, अगर Cloud Identity API, groups/123456789 नाम वाले किसी ग्रुप को दिखाता है, तो membership.groupMember.name को groups/123456789 पर सेट करें. Google Groups को किसी ग्रुप चैट या DM में नहीं, बल्कि सिर्फ़ नाम वाले स्पेस में जोड़ा जा सकता है.
  • कॉल करने वाले उपयोगकर्ता और दूसरे व्यक्ति के बीच एक DM बनाने के लिए, अपने अनुरोध में उस व्यक्ति की सदस्यता की जानकारी दें.
  • कॉल करने वाले उपयोगकर्ता और कॉल करने वाले ऐप्लिकेशन के बीच DM बनाने के लिए, Space.singleUserBotDm को true पर सेट करें और पैसे चुकाकर ली जाने वाली किसी सदस्यता की जानकारी न दें. इस तरीके का इस्तेमाल, सिर्फ़ कॉलिंग ऐप्लिकेशन के साथ DM सेट अप करने के लिए किया जा सकता है. कॉल के लिए इस्तेमाल होने वाले ऐप्लिकेशन को स्पेस के सदस्य के तौर पर या दो उपयोगकर्ताओं के बीच मौजूदा DM जोड़ने के लिए, सदस्यता बनाएं देखें.

इस उदाहरण में, नाम वाला स्पेस बनाया गया है. साथ ही, एक ग्रुप और तीन लोगों (इनमें से पुष्टि किए गए उपयोगकर्ता और बताए गए दो अन्य उपयोगकर्ता शामिल हैं) के लिए, स्पेस की सदस्यताएं बनाई गई हैं.

Python

  1. अपनी वर्किंग डायरेक्ट्री में, chat_space_setup.py नाम की फ़ाइल बनाएं.
  2. chat_space_setup.py में यह कोड शामिल करें:

    from google_auth_oauthlib.flow import InstalledAppFlow
    from googleapiclient.discovery import build
    
    # Define your app's authorization scopes.
    # When modifying these scopes, delete the file token.json, if it exists.
    SCOPES = ["https://www.googleapis.com/auth/chat.spaces.create"]
    
    def main():
        '''
        Authenticates with Chat API via user credentials,
        then sets up a Chat space by creating a space and adding members.
        '''
    
        # Authenticate with Google Workspace
        # and get user authorization.
        flow = InstalledAppFlow.from_client_secrets_file(
                          'client_secrets.json', SCOPES)
        creds = flow.run_local_server()
    
        # Build a service endpoint for Chat API.
        chat = build('chat', 'v1', credentials=creds)
    
        # Use the service endpoint to call Chat API.
        result = chat.spaces().setup(
    
          # Details about the space to set up.
          body = {
    
            # Attributes of the space to set up, like space type and display name.
            'space': {
    
                # To set up a named space, set spaceType to SPACE.
                'spaceType': 'SPACE',
    
                # The user-visible name of the space
                'displayName': 'API-setup'
            },
    
            # The users and groups to add to the space.
            #
            # The authenticated user is automatically added to the space,
            # and doesn't need to be specified in the memberships array.
            'memberships': [
                {
                  'member': {
                    'name':'users/123456789',
                    'type': 'HUMAN'
                  }
                },
                {
                  'member': {
                    'name':'users/987654321',
                    'type': 'HUMAN'
                  }
                },
                {
                  'groupMember': {
                    'name': 'groups/11223344'
                  }
                }
            ]
          }
    
          ).execute()
    
        # Prints details about the created space.
        print(result)
    
    if __name__ == '__main__':
        main()
    
  3. अपनी वर्किंग डायरेक्ट्री में, सैंपल बनाएं और चलाएं:

    python3 chat_space_setup.py
    

Node.js

  1. अपनी वर्किंग डायरेक्ट्री में, setup-space.js नाम की फ़ाइल बनाएं.
  2. setup-space.js में यह कोड शामिल करें:

    const chat = require('@googleapis/chat');
    const {authenticate} = require('@google-cloud/local-auth');
    
    /**
    * Sets up a new Chat space with users.
    * @return {!Promise<!Object>}
    */
    async function setupSpace() {
      const scopes = [
        'https://www.googleapis.com/auth/chat.spaces.create',
      ];
    
      const authClient =
          await authenticate({scopes, keyfilePath: 'client_secrets.json'});
    
      const chatClient = await chat.chat({version: 'v1', auth: authClient});
    
      return await chatClient.spaces.setup({
        requestBody: {
          space: {
            spaceType: 'SPACE',
            displayName: 'API-made',
          },
          memberships: [
            {member: {name: 'users/123456789', type: 'HUMAN'}},
            {member: {name: 'users/987654321', type: 'HUMAN'}},
            {groupMember: {name: 'groups/11223344'}},
          ]
        }
      });
    }
    
    setupSpace().then(console.log);
    
  3. अपनी वर्किंग डायरेक्ट्री में, सैंपल चलाएं:

    node setup-space.js
    

नाम वाले चैट स्पेस को एक ग्रुप और तीन लोगों के साथ सेट अप किया जाता है. इसमें, पुष्टि करने वाला उपयोगकर्ता भी शामिल होता है.

स्पेस में जाने के लिए, उसके संसाधन आईडी का इस्तेमाल करके स्पेस का यूआरएल बनाएं. आपको Google Chat के जवाब वाले मुख्य हिस्से में, name स्पेस से संसाधन आईडी मिल सकता है. उदाहरण के लिए, अगर आपके स्पेस का name spaces/1234567 है, तो इस यूआरएल का इस्तेमाल करके स्पेस में जाया जा सकता है: https://mail.google.com/chat/u/0/#chat/space/1234567.