একটি Google চ্যাট স্পেসে একটি ব্যবহারকারীর সদস্যতা আপডেট করুন, একটি Google চ্যাট স্পেসে একটি ব্যবহারকারীর সদস্যতা আপডেট করুন

এই নির্দেশিকাটি ব্যাখ্যা করে যে কীভাবে Google Chat API-এর Membership রিসোর্সে update() পদ্ধতি ব্যবহার করে সদস্যপদ সম্পর্কিত বৈশিষ্ট্যগুলি পরিবর্তন করতে হয়, যেমন একজন স্পেস সদস্যকে স্পেস ম্যানেজার বা স্পেসের মালিকে পরিবর্তন করা।

আপনি যদি একজন Google Workspace অ্যাডমিনিস্ট্রেটর হন, তাহলে আপনার Google Workspace প্রতিষ্ঠানের যেকোনো স্পেসের সদস্যপদ আপডেট করতে update() পদ্ধতি ব্যবহার করতে পারেন।

Membership রিসোর্সটি প্রতিনিধিত্ব করে যে কোনও মানব ব্যবহারকারী বা Google Chat অ্যাপ কোনও স্পেসে আমন্ত্রিত, আংশিক, নাকি অনুপস্থিত।

পূর্বশর্ত

নোড.জেএস

  • Google Chat অ্যাক্সেস সহ একটি ব্যবসা বা এন্টারপ্রাইজ Google Workspace অ্যাকাউন্ট।

সদস্যপদ আপডেট করুন

স্পেসের সদস্যপদ আপডেট করতে, আপনার অনুরোধে নিম্নলিখিতগুলি পাস করুন:

  • একটি অনুমোদনের সুযোগ নির্দিষ্ট করুন:
    • ব্যবহারকারী প্রমাণীকরণের সাথে, chat.memberships অনুমোদনের সুযোগ নির্দিষ্ট করুন।
    • অ্যাপ প্রমাণীকরণের ক্ষেত্রে, chat.app.memberships অনুমোদনের সুযোগ নির্দিষ্ট করুন। অ্যাপ প্রমাণীকরণের মাধ্যমে সদস্যপদ আপডেট করার সময়, আপনি কেবল চ্যাট অ্যাপ দ্বারা তৈরি স্পেসে সদস্যপদ আপডেট করতে পারবেন। অ্যাপ প্রমাণীকরণের জন্য এককালীন প্রশাসকের অনুমোদন প্রয়োজন।
  • UpdateMembership() পদ্ধতিটি কল করুন।
  • নিম্নলিখিত বিষয়গুলি সহ Membership পাস করার জন্য membership উদাহরণ:
    • name ক্ষেত্রটি "সদস্যপদ আপডেট করার জন্য" হিসেবে সেট করা হয়েছে, যার মধ্যে একটি স্পেস আইডি এবং একটি সদস্য আইডি অন্তর্ভুক্ত রয়েছে।
    • আপডেট করার জন্য সদস্যপদ ক্ষেত্রগুলি নতুন মানের সাথে সেট করা আছে।
  • updateMask পাস করুন যাতে সদস্যপদ আপডেট করার দিকগুলি নির্দিষ্ট করা যায়, এতে নিম্নলিখিতগুলি অন্তর্ভুক্ত রয়েছে:
    • role : চ্যাট স্পেসের মধ্যে ব্যবহারকারীর ভূমিকা, যা স্পেসে তাদের অনুমোদিত ক্রিয়াকলাপ নির্ধারণ করে। বিস্তারিত অনুমতি ব্যাখ্যার জন্য, চ্যাট API রেফারেন্স ডকুমেন্টেশনে MembershipRole দেখুন। সম্ভাব্য মানগুলি হল:
      • ROLE_MEMBER : স্পেসের একজন সদস্য। চ্যাট UI-তে, এই ভূমিকাটিকে সদস্য বলা হয়।
      • ROLE_ASSISTANT_MANAGER : একজন স্পেস ম্যানেজার। চ্যাট UI-তে, এই ভূমিকাটিকে ম্যানেজার বলা হয়।
      • ROLE_MANAGER : একজন স্পেস মালিক। চ্যাট UI তে, এই ভূমিকাটিকে মালিক বলা হয়।

একজন সদস্যকে মালিকে পরিবর্তন করুন (ব্যবহারকারী প্রমাণীকরণ)

নিম্নলিখিত উদাহরণে ব্যবহারকারী প্রমাণীকরণ ব্যবহার করে চ্যাট API কে কল করা হয়েছে যাতে ROLE_MANAGER হিসাবে role নির্দিষ্ট করে একজন নিয়মিত স্পেস সদস্যকে স্পেসের মালিক করা যায়:

নোড.জেএস

চ্যাট/ক্লায়েন্ট-লাইব্রেরি/ক্লাউড/আপডেট-সদস্যতা-ব্যবহারকারী-ক্রেড.জেএস
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() পদ্ধতিতে কল করে অথবা স্পেসের URL থেকে আইডিটি পেতে পারেন।
  • MEMBER_NAME : সদস্যের name থেকে প্রাপ্ত আইডি। আপনি ListMemberships() পদ্ধতিতে কল করে অথবা Chat API-এর সাথে অ্যাসিঙ্ক্রোনাসভাবে সদস্যপদ তৈরি করার পরে ফিরে আসা প্রতিক্রিয়া বডি থেকে আইডিটি পেতে পারেন।
  • ROLE_NAME : আপডেট করা ভূমিকা, ROLE_MANAGER । আপনি এই মানটি MembershipRole এর যেকোনো মানে সেট করতে পারেন। উদাহরণস্বরূপ, নিয়মিত সদস্যকে স্পেস ম্যানেজার করতে, ROLE_NAME কে ROLE_ASSISTANT_MANAGER এ পরিবর্তন করুন।

Google Chat API স্পেসের মালিকের কাছে নির্দিষ্ট সদস্যপদ আপডেট করে এবং Membership এর একটি উদাহরণ ফেরত দেয়।

মালিককে সদস্যে পরিবর্তন করুন (ব্যবহারকারী প্রমাণীকরণ)

নিচের উদাহরণে ব্যবহারকারী প্রমাণীকরণ ব্যবহার করে চ্যাট API কল করা হয়েছে যাতে ROLE_MEMBER এর role উল্লেখ করে একজন স্পেস মালিককে নিয়মিত স্পেস সদস্য করা যায়:

নোড.জেএস

চ্যাট/ক্লায়েন্ট-লাইব্রেরি/ক্লাউড/আপডেট-সদস্যতা-ব্যবহারকারী-ক্রেড.জেএস
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() পদ্ধতিতে কল করে অথবা স্পেসের URL থেকে আইডিটি পেতে পারেন।
  • MEMBER_NAME : সদস্যের name থেকে প্রাপ্ত আইডি। আপনি ListMemberships() পদ্ধতিতে কল করে অথবা Chat API-এর সাথে অ্যাসিঙ্ক্রোনাসভাবে সদস্যপদ তৈরি করার পরে ফিরে আসা প্রতিক্রিয়া বডি থেকে আইডিটি পেতে পারেন।
  • ROLE_NAME : আপডেট করা ভূমিকা, ROLE_MEMBER

Google Chat API স্পেসের মালিকের কাছে নির্দিষ্ট সদস্যপদ আপডেট করে এবং Membership এর একটি উদাহরণ ফেরত দেয়।

একজন সদস্যকে মালিকে পরিবর্তন করুন (চ্যাট অ্যাপ প্রমাণীকরণ)

অ্যাপ প্রমাণীকরণের জন্য এককালীন প্রশাসকের অনুমোদন প্রয়োজন।

চ্যাট এপিআই কল করে এমন একটি স্ক্রিপ্ট লিখুন

নিচের উদাহরণে অ্যাপ প্রমাণীকরণ ব্যবহার করে চ্যাট API কে কল করা হয়েছে যাতে নিয়মিত স্পেস সদস্যকে স্পেসের মালিক করা যায়, যেখানে আপডেট করা সদস্যতার বৈশিষ্ট্যগুলি নির্দিষ্ট করে এমন body ROLE_MANAGER হিসেবে role উল্লেখ করা হয়:

পাইথন

  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. কোডে, নিম্নলিখিতগুলি প্রতিস্থাপন করুন:

    • SPACE : একটি স্পেস নাম, যা আপনি চ্যাট API-এর spaces.list পদ্ধতি থেকে অথবা একটি স্পেসের URL থেকে পেতে পারেন।

    • MEMBERSHIP : একটি সদস্যপদ নাম, যা আপনি চ্যাট API-এর spaces.members.list পদ্ধতি থেকে পেতে পারেন।

    • ROLE : আপডেট করা ভূমিকা, ROLE_MANAGER । আপনি এই মানটি MembershipRole এর যেকোনো মানের উপর সেট করতে পারেন। উদাহরণস্বরূপ, নিয়মিত সদস্যকে স্পেস ম্যানেজার করতে, ROLE ROLE_ASSISTANT_MANAGER এ পরিবর্তন করুন।

  4. আপনার কার্যকরী ডিরেক্টরিতে, নমুনাটি তৈরি করুন এবং চালান:

    python3 chat_membership_update_to_owner_app.py

একজন মালিককে সদস্যে পরিবর্তন করুন (চ্যাট অ্যাপ প্রমাণীকরণ)

অ্যাপ প্রমাণীকরণের জন্য এককালীন প্রশাসকের অনুমোদন প্রয়োজন।

চ্যাট এপিআই কল করে এমন একটি স্ক্রিপ্ট লিখুন

নিচের উদাহরণে অ্যাপ প্রমাণীকরণ ব্যবহার করে চ্যাট API কল করা হয়েছে, যাতে স্পেস মালিককে নিয়মিত স্পেস সদস্য করা যায়, যেখানে আপডেট করা সদস্যপদ বৈশিষ্ট্যগুলি নির্দিষ্ট করে এমন body ROLE_MEMBER হিসেবে role উল্লেখ করা হয়:

পাইথন

  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. কোডে, নিম্নলিখিতগুলি প্রতিস্থাপন করুন:

    • SPACE : একটি স্পেস নাম, যা আপনি চ্যাট API-এর spaces.list পদ্ধতি থেকে অথবা একটি স্পেসের URL থেকে পেতে পারেন।

    • MEMBERSHIP : একটি সদস্যপদ নাম, যা আপনি চ্যাট API-এর spaces.members.list পদ্ধতি থেকে পেতে পারেন।

  4. আপনার কার্যকরী ডিরেক্টরিতে, নমুনাটি তৈরি করুন এবং চালান:

    python3 chat_membership_update_to_member_app.py

Google Workspace অ্যাডমিনিস্ট্রেটর হিসেবে সদস্যপদ আপডেট করুন

আপনি যদি একজন Google Workspace অ্যাডমিনিস্ট্রেটর হন, তাহলে আপনার Google Workspace প্রতিষ্ঠানের যেকোনো স্পেসের সদস্যপদ আপডেট করতে update() পদ্ধতি ব্যবহার করতে পারেন।

এই পদ্ধতিটিকে Google Workspace অ্যাডমিনিস্ট্রেটর হিসেবে কল করতে, নিম্নলিখিতগুলি করুন:

  • ব্যবহারকারী প্রমাণীকরণ ব্যবহার করে পদ্ধতিটি কল করুন, এবং একটি অনুমোদনের সুযোগ নির্দিষ্ট করুন যা প্রশাসকের অধিকার ব্যবহার করে পদ্ধতিটি কল করা সমর্থন করে।
  • আপনার অনুরোধে, useAdminAccess থেকে true কোয়েরি প্যারামিটারটি উল্লেখ করুন।

আরও তথ্য এবং উদাহরণের জন্য, Google Workspace অ্যাডমিনিস্ট্রেটর হিসেবে Google Chat স্পেস পরিচালনা করুন দেখুন।