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

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

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

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

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

  • कॉल करने वाले (पुष्टि करने वाले) उपयोगकर्ता को स्पेस में अपने-आप जोड़ दिया जाता है. इसलिए, आपको अनुरोध में उपयोगकर्ता की सदस्यता के बारे में जानकारी देने की ज़रूरत नहीं होती.
  • डायरेक्ट मैसेज (DM) बनाते समय अगर दो उपयोगकर्ताओं के बीच 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} डालें. यहां {user}, People API से person के लिए {person_id} है या डायरेक्ट्री एपीआई में user का आईडी है. उदाहरण के लिए, अगर People API व्यक्ति resourceName people/123456789 है, तो आपके पास उपयोगकर्ता को स्पेस में जोड़ने का विकल्प है. इसके लिए, आपको users/123456789 की सदस्यता को member.name के तौर पर जोड़ना होगा.
  • कॉल करने वाले उपयोगकर्ता और दूसरे उपयोगकर्ता के बीच 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 people and app 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'
                  }
                }
            ]
          }
    
          ).execute()
    
        # Prints details about the created membership.
        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'}},
          ]
        }
      });
    }
    
    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.