Google Chat स्पेस में उपयोगकर्ता की सदस्यता अपडेट करना

इस गाइड में, Google Chat API के Membership संसाधन पर update() तरीके का इस्तेमाल करके, सदस्यता से जुड़े एट्रिब्यूट में बदलाव करने का तरीका बताया गया है. जैसे, किसी स्पेस के सदस्य को स्पेस मैनेजर या स्पेस का मालिक बनाना.

अगर आप Google Workspace एडमिन हैं, तो update() तरीके को कॉल करके, अपने Google Workspace संगठन में मौजूद किसी भी स्पेस की सदस्यता अपडेट की जा सकती है.

Membership संसाधन से पता चलता है कि किसी स्पेस में कोई व्यक्ति या Google Chat ऐप्लिकेशन शामिल है या नहीं. साथ ही, यह भी पता चलता है कि उसे स्पेस में शामिल होने का न्योता मिला है या नहीं.

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

Node.js

  • कारोबारी या एंटरप्राइज़ Google Workspace खाता, जिसमें Google Chat का ऐक्सेस हो.

सदस्यता अपडेट करना

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

  • अनुमति पाने का लिंक तय करें:
  • UpdateMembership() तरीका कॉल करें.
  • membership को Membership के इंस्टेंस के तौर पर पास करें. इसमें यह जानकारी शामिल होनी चाहिए:
    • अपडेट की जाने वाली सदस्यता के लिए, name फ़ील्ड सेट करें. इसमें स्पेस आईडी और सदस्य आईडी शामिल होता है.
    • सदस्यता के वे फ़ील्ड सेट करें जिन्हें अपडेट करना है. इसके लिए, नई वैल्यू सेट करें.
  • updateMask पास करें, ताकि सदस्यता के उन पहलुओं के बारे में बताया जा सके जिन्हें अपडेट करना है. इसमें यह जानकारी शामिल होती है:
    • role: Chat स्पेस में उपयोगकर्ता की भूमिका. इससे यह तय होता है कि उपयोगकर्ता, स्पेस में कौनसी कार्रवाइयां कर सकता है. अनुमति के बारे में ज़्यादा जानकारी के लिए, Chat API के रेफ़रंस दस्तावेज़ में MembershipRole देखें. इनमें से कोई वैल्यू सेट की जा सकती है:
      • ROLE_MEMBER: स्पेस का सदस्य. Chat यूज़र इंटरफ़ेस (यूआई) में, इस भूमिका को सदस्य कहा जाता है.
      • ROLE_ASSISTANT_MANAGER: स्पेस मैनेजर. Chat यूज़र इंटरफ़ेस (यूआई) में, इस भूमिका को मैनेजर कहा जाता है.
      • ROLE_MANAGER: स्पेस का मालिक. Chat यूज़र इंटरफ़ेस (यूआई) में, इस भूमिका को मालिक कहा जाता है.

किसी सदस्य को मालिक बनाना (उपयोगकर्ता की पुष्टि)

यहां दिए गए उदाहरण में, Chat API को उपयोगकर्ता की पुष्टि का इस्तेमाल करके कॉल किया गया है. इसमें, role को ROLE_MANAGERके तौर पर तय करके, किसी सामान्य सदस्य को स्पेस का मालिक बनाया गया है:

Node.js

chat/client-libraries/cloud/update-membership-user-cred.js
import {createClientWithUserCredentials} from './authentication-utils.js';

const USER_AUTH_OAUTH_SCOPES = [
  'https://www.googleapis.com/auth/chat.memberships',
];

// This sample shows how to update a membership with user credential
async function main() {
  // Create a client
  const chatClient = await createClientWithUserCredentials(
    USER_AUTH_OAUTH_SCOPES,
  );

  // Initialize request argument(s)
  const request = {
    membership: {
      // Replace SPACE_NAME and MEMBER_NAME here
      name: 'spaces/SPACE_NAME/members/MEMBER_NAME',
      // Replace ROLE_NAME here with ROLE_MEMBER or ROLE_MANAGER
      role: 'ROLE_NAME',
    },
    updateMask: {
      // The field paths to update.
      paths: ['role'],
    },
  };

  // Make the request
  const response = await chatClient.updateMembership(request);

  // Handle the response
  console.log(response);
}

await main();

सैंपल चलाने के लिए, इनकी जगह ये डालें:

  • SPACE_NAME: स्पेस के name से मिला आईडी. यह आईडी, ListSpaces() तरीके को कॉल करके या स्पेस के यूआरएल से पाया जा सकता है.
  • MEMBER_NAME: सदस्यता के name से मिला आईडी. यह आईडी, ListMemberships() तरीके को कॉल करके पाया जा सकता है. इसके अलावा, Chat API के साथ एसिंक्रोनस तरीके से सदस्यता बनाने के बाद, रिस्पॉन्स बॉडी से भी यह आईडी पाया जा सकता है.
  • ROLE_NAME: अपडेट की गई भूमिका, ROLE_MANAGER. इस वैल्यू को MembershipRole की किसी भी वैल्यू पर सेट किया जा सकता है. उदाहरण के लिए, किसी सामान्य सदस्य को स्पेस मैनेजर बनाने के लिए, ROLE_NAME को ROLE_ASSISTANT_MANAGER पर सेट करें.

Google Chat API, तय की गई सदस्यता को स्पेस के मालिक के तौर पर अपडेट करता है. साथ ही, Membership का इंस्टेंस दिखाता है.

किसी मालिक को सदस्य बनाना (उपयोगकर्ता की पुष्टि)

यहां दिए गए उदाहरण में, Chat API को उपयोगकर्ता की पुष्टि का इस्तेमाल करके कॉल किया गया है. इसमें, role को ROLE_MEMBER के तौर पर तय करके, किसी स्पेस के मालिक को सामान्य सदस्य बनाया गया है:

Node.js

chat/client-libraries/cloud/update-membership-user-cred.js
import {createClientWithUserCredentials} from './authentication-utils.js';

const USER_AUTH_OAUTH_SCOPES = [
  'https://www.googleapis.com/auth/chat.memberships',
];

// This sample shows how to update a membership with user credential
async function main() {
  // Create a client
  const chatClient = await createClientWithUserCredentials(
    USER_AUTH_OAUTH_SCOPES,
  );

  // Initialize request argument(s)
  const request = {
    membership: {
      // Replace SPACE_NAME and MEMBER_NAME here
      name: 'spaces/SPACE_NAME/members/MEMBER_NAME',
      // Replace ROLE_NAME here with ROLE_MEMBER or ROLE_MANAGER
      role: 'ROLE_NAME',
    },
    updateMask: {
      // The field paths to update.
      paths: ['role'],
    },
  };

  // Make the request
  const response = await chatClient.updateMembership(request);

  // Handle the response
  console.log(response);
}

await main();

सैंपल चलाने के लिए, इनकी जगह ये डालें:

  • SPACE_NAME: स्पेस के name से मिला आईडी. यह आईडी, ListSpaces() तरीके को कॉल करके या स्पेस के यूआरएल से पाया जा सकता है.
  • MEMBER_NAME: सदस्यता के name से मिला आईडी. यह आईडी, ListMemberships() तरीके को कॉल करके पाया जा सकता है. इसके अलावा, Chat API के साथ एसिंक्रोनस तरीके से सदस्यता बनाने के बाद, रिस्पॉन्स बॉडी से भी यह आईडी पाया जा सकता है.
  • ROLE_NAME: अपडेट की गई भूमिका, ROLE_MEMBER.

Google Chat API, तय की गई सदस्यता को स्पेस के मालिक के तौर पर अपडेट करता है. साथ ही, Membership का इंस्टेंस दिखाता है.

किसी सदस्य को मालिक बनाना (Chat ऐप्लिकेशन की पुष्टि)

ऐप्लिकेशन की पुष्टि के लिए, एडमिन की अनुमति सिर्फ़ एक बार ज़रूरी होती है .

Chat API को कॉल करने वाला स्क्रिप्ट लिखना

यहां दिए गए उदाहरण में, Chat API को ऐप्लिकेशन की पुष्टि का इस्तेमाल करके कॉल किया गया है. इसमें, role को ROLE_MANAGER के तौर पर तय करके, किसी सामान्य सदस्य को स्पेस का मालिक बनाया गया है. body में, सदस्यता के अपडेट किए गए एट्रिब्यूट की जानकारी दी जाती है:

Python

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

    from google.oauth2 import service_account
    from apiclient.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.app.memberships"]
    
    def main():
        '''
        Authenticates with Chat API using app authentication,
        then updates a specified space member to change
        it from a regular member to a space owner.
        '''
    
        # Specify service account details.
        creds = (
            service_account.Credentials.from_service_account_file('credentials.json')
            .with_scopes(SCOPES)
        )
    
        # Build a service endpoint for Chat API.
        chat = build('chat', 'v1', credentials=creds)
    
        # Use the service endpoint to call Chat API.
        result = chat.spaces().members().patch(
    
            # The membership to update, and the updated role.
            #
            # Replace SPACE with a space name.
            # Obtain the space name from the spaces resource of Chat API,
            # or from a space's URL.
            #
            # Replace MEMBERSHIP with a membership name.
            # Obtain the membership name from the membership of Chat API.
            name='spaces/SPACE/members/MEMBERSHIP',
            updateMask='role',
    
            # Replace ROLE with a MembershipRole value.
            # Obtain the MembershipRole values from the membership of Chat API.
            body={'role': 'ROLE'}
    
          ).execute()
    
        # Prints details about the updated membership.
        print(result)
    
    if __name__ == '__main__':
        main()
    
  3. कोड में, इनकी जगह ये डालें:

  4. अपनी वर्किंग डायरेक्ट्री में, सैंपल बनाएं और चलाएं:

    python3 chat_membership_update_to_owner_app.py

किसी मालिक को सदस्य बनाना (Chat ऐप्लिकेशन की पुष्टि)

ऐप्लिकेशन की पुष्टि के लिए, एडमिन की अनुमति सिर्फ़ एक बार ज़रूरी होती है .

Chat API को कॉल करने वाला स्क्रिप्ट लिखना

यहां दिए गए उदाहरण में, Chat API को ऐप्लिकेशन की पुष्टि का इस्तेमाल करके कॉल किया गया है. इसमें, role को ROLE_MEMBER के तौर पर तय करके, किसी स्पेस के मालिक को सामान्य सदस्य बनाया गया है. body में, सदस्यता के अपडेट किए गए एट्रिब्यूट की जानकारी दी जाती है:

Python

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

    from google.oauth2 import service_account
    from apiclient.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.app.memberships"]
    
    def main():
        '''
        Authenticates with Chat API via user credentials,
        then updates a specified space owner to change
        it to a regular member.
        '''
    
        # Specify service account details.
        creds = (
            service_account.Credentials.from_service_account_file('credentials.json')
            .with_scopes(SCOPES)
        )
    
        # Build a service endpoint for Chat API.
        chat = build('chat', 'v1', credentials=creds)
    
        # Use the service endpoint to call Chat API.
        result = chat.spaces().members().patch(
    
            # The membership to update, and the updated role.
            #
            # Replace SPACE with a space name.
            # Obtain the space name from the spaces resource of Chat API,
            # or from a space's URL.
            #
            # Replace MEMBERSHIP with a membership name.
            # Obtain the membership name from the membership of Chat API.
            name='spaces/SPACE/members/MEMBERSHIP',
            updateMask='role',
            body={'role': 'ROLE_MEMBER'}
    
          ).execute()
    
        # Prints details about the updated membership.
        print(result)
    
    if __name__ == '__main__':
        main()
    
  3. कोड में, इनकी जगह ये डालें:

  4. अपनी वर्किंग डायरेक्ट्री में, सैंपल बनाएं और चलाएं:

    python3 chat_membership_update_to_member_app.py

Google Workspace एडमिन के तौर पर सदस्यताएं अपडेट करना

अगर आप Google Workspace एडमिन हैं, तो update() तरीके को कॉल करके, अपने Google Workspace संगठन में मौजूद किसी भी स्पेस की सदस्यताएं अपडेट की जा सकती हैं.

Google Workspace एडमिन के तौर पर इस तरीके को कॉल करने के लिए, यह तरीका अपनाएं:

  • उपयोगकर्ता की पुष्टि का इस्तेमाल करके, इस तरीके को कॉल करें. साथ ही, अनुमति पाने का ऐसा लिंक तय करें जिससे एडमिन के अधिकारोंका इस्तेमाल करके, इस तरीके को कॉल किया जा सके.
  • अपने अनुरोध में, क्वेरी पैरामीटर useAdminAccess को true पर सेट करें.

ज़्यादा जानकारी और उदाहरणों के लिए, Google Workspace एडमिन के तौर पर Google Chat के स्पेस मैनेज करना लेख पढ़ें.