এই নির্দেশিকায় ব্যাখ্যা করা হয়েছে কীভাবে গুগল চ্যাট এপিআই-এর Membership রিসোর্সের update() মেথড ব্যবহার করে কোনো মেম্বারশিপের অ্যাট্রিবিউট পরিবর্তন করা যায়, যেমন—একজন স্পেস মেম্বারকে স্পেস ম্যানেজার বা স্পেস ওনারে পরিবর্তন করা।
আপনি যদি একজন গুগল ওয়ার্কস্পেস অ্যাডমিনিস্ট্রেটর হন, তাহলে আপনার গুগল ওয়ার্কস্পেস অর্গানাইজেশনের যেকোনো স্পেসের মেম্বারশিপ আপডেট করার জন্য update() মেথডটি কল করতে পারেন।
Membership রিসোর্সটি নির্দেশ করে যে কোনো মানব ব্যবহারকারী বা গুগল চ্যাট অ্যাপ কোনো স্পেসে আমন্ত্রিত, তার অংশ, নাকি অনুপস্থিত।
পূর্বশর্ত
নোড.জেএস
- গুগল চ্যাট ব্যবহারের সুবিধাসহ একটি ব্যবসায়িক বা এন্টারপ্রাইজ গুগল ওয়ার্কস্পেস অ্যাকাউন্ট।
- আপনার পরিবেশ প্রস্তুত করুন:
- একটি গুগল ক্লাউড প্রজেক্ট তৈরি করুন ।
- OAuth সম্মতি স্ক্রিনটি কনফিগার করুন ।
- আপনার চ্যাট অ্যাপের জন্য একটি নাম, আইকন এবং বিবরণ দিয়ে গুগল চ্যাট এপিআই সক্রিয় ও কনফিগার করুন ।
- Node.js ক্লাউড ক্লায়েন্ট লাইব্রেরি ইনস্টল করুন।
- আপনার গুগল চ্যাট এপিআই অনুরোধে আপনি যেভাবে প্রমাণীকরণ করতে চান, তার উপর ভিত্তি করে অ্যাক্সেস ক্রেডেনশিয়াল তৈরি করুন:
- চ্যাট ব্যবহারকারী হিসেবে প্রমাণীকরণের জন্য, OAuth ক্লায়েন্ট আইডি ক্রেডেনশিয়াল তৈরি করুন এবং ক্রেডেনশিয়ালগুলো আপনার স্থানীয় ডিরেক্টরিতে
credentials.jsonনামের একটি JSON ফাইল হিসেবে সংরক্ষণ করুন। - চ্যাট অ্যাপ হিসেবে প্রমাণীকরণের জন্য, পরিষেবা অ্যাকাউন্টের ক্রেডেনশিয়াল তৈরি করুন এবং ক্রেডেনশিয়ালগুলো
credentials.jsonনামের একটি JSON ফাইল হিসেবে সংরক্ষণ করুন।
- চ্যাট ব্যবহারকারী হিসেবে প্রমাণীকরণের জন্য, OAuth ক্লায়েন্ট আইডি ক্রেডেনশিয়াল তৈরি করুন এবং ক্রেডেনশিয়ালগুলো আপনার স্থানীয় ডিরেক্টরিতে
- আপনি ব্যবহারকারী হিসেবে নাকি চ্যাট অ্যাপ হিসেবে প্রমাণীকরণ করতে চান, তার উপর ভিত্তি করে অনুমোদনের পরিধি বেছে নিন ।
সদস্যপদ হালনাগাদ করুন
স্পেস মেম্বারশিপ আপডেট করতে, আপনার অনুরোধে নিম্নলিখিত তথ্যগুলো প্রদান করুন:
- অনুমোদনের পরিধি নির্দিষ্ট করুন:
- ব্যবহারকারী প্রমাণীকরণের ক্ষেত্রে,
chat.membershipsঅনুমোদনের পরিধি নির্দিষ্ট করুন। - অ্যাপ অথেন্টিকেশন ব্যবহার করতে,
chat.app.membershipsঅথরাইজেশন স্কোপটি নির্দিষ্ট করুন। অ্যাপ অথেন্টিকেশন ব্যবহার করে মেম্বারশিপ আপডেট করার সময়, আপনি শুধুমাত্র চ্যাট অ্যাপ দ্বারা তৈরি স্পেসের মেম্বারশিপগুলোই আপডেট করতে পারবেন। অ্যাপ অথেন্টিকেশনের জন্য অ্যাডমিনিস্ট্রেটরের এককালীন অনুমোদন প্রয়োজন।
- ব্যবহারকারী প্রমাণীকরণের ক্ষেত্রে,
-
UpdateMembership()মেথডটি কল করুন। - নিম্নলিখিত বিষয়গুলো সহ
Membershipএর একটি ইনস্ট্যান্স হিসেবেmembershipপাস করুন:- আপডেট করার জন্য
nameফিল্ডটিতে সদস্যপদটি সেট করা হয়েছে, যার মধ্যে একটি স্পেস আইডি এবং একটি মেম্বার আইডি অন্তর্ভুক্ত রয়েছে। - আপডেট করার জন্য সদস্যপদ ফিল্ডগুলো নতুন মানগুলিতে সেট করা হয়েছে।
- আপডেট করার জন্য
- মেম্বারশিপের যে দিকগুলো আপডেট করতে চান, তা নির্দিষ্ট করার জন্য
updateMaskপাস করুন, এর মধ্যে নিম্নলিখিত বিষয়গুলো অন্তর্ভুক্ত রয়েছে:-
role: একটি চ্যাট স্পেসের মধ্যে ব্যবহারকারীর ভূমিকা, যা সেই স্পেসে তার অনুমোদিত কার্যকলাপ নির্ধারণ করে। অনুমতির বিস্তারিত ব্যাখ্যার জন্য, চ্যাট এপিআই রেফারেন্স ডকুমেন্টেশনেMembershipRoleদেখুন। সম্ভাব্য মানগুলো হলো:-
ROLE_MEMBER: এই স্পেসের একজন সদস্য। চ্যাট UI-তে এই রোলটিকে Member বলা হয়। -
ROLE_ASSISTANT_MANAGER: একজন স্পেস ম্যানেজার। চ্যাট UI-তে এই রোলটিকে ম্যানেজার বলা হয়। -
ROLE_MANAGER: একজন স্পেসের মালিক। চ্যাট UI-তে এই রোলটিকে Owner বলা হয়।
-
-
একজন সদস্যকে মালিক হিসেবে পরিবর্তন করুন (ব্যবহারকারীর প্রমাণীকরণ)
নিম্নলিখিত উদাহরণটি ব্যবহারকারী প্রমাণীকরণ ব্যবহার করে চ্যাট এপিআই-কে কল করে, যেখানে role হিসেবে ROLE_MANAGER নির্দিষ্ট করে একজন সাধারণ স্পেস সদস্যকে স্পেসের মালিক বানানো হয়:
নোড.জেএস
নমুনাটি চালানোর জন্য, নিম্নলিখিতগুলি প্রতিস্থাপন করুন:
-
SPACE_NAME: স্পেসটিরnameথেকে প্রাপ্ত আইডি। আপনিListSpaces()মেথড কল করে অথবা স্পেসটির URL থেকে আইডিটি পেতে পারেন। -
MEMBER_NAME: সদস্যপদেরnameথেকে প্রাপ্ত আইডি। আপনিListMemberships()মেথড কল করে, অথবা Chat API ব্যবহার করে অ্যাসিঙ্ক্রোনাসভাবে সদস্যপদ তৈরি করার পর ফেরত আসা রেসপন্স বডি থেকে এই আইডিটি পেতে পারেন। -
ROLE_NAME: হালনাগাদকৃত ভূমিকা,ROLE_MANAGER। আপনি এই মানটিMembershipRoleএর যেকোনো মানে সেট করতে পারেন। উদাহরণস্বরূপ, সাধারণ সদস্যকে স্পেস ম্যানেজার বানাতে,ROLE_NAMEপরিবর্তন করেROLE_ASSISTANT_MANAGERকরুন।
গুগল চ্যাট এপিআই নির্দিষ্ট মেম্বারশিপটিকে একজন স্পেস ওনার হিসেবে আপডেট করে এবং Membership এর একটি ইনস্ট্যান্স রিটার্ন করে।
মালিককে সদস্যে পরিবর্তন করুন (ব্যবহারকারীর প্রমাণীকরণ)
নিম্নলিখিত উদাহরণটি ব্যবহারকারী প্রমাণীকরণ ব্যবহার করে চ্যাট এপিআই-কে কল করে, যেখানে role হিসেবে ROLE_MEMBER নির্দিষ্ট করে একজন স্পেস মালিককে একজন সাধারণ স্পেস সদস্য করা হয়:
নোড.জেএস
নমুনাটি চালানোর জন্য, নিম্নলিখিতগুলি প্রতিস্থাপন করুন:
-
SPACE_NAME: স্পেসটিরnameথেকে প্রাপ্ত আইডি। আপনিListSpaces()মেথড কল করে অথবা স্পেসটির URL থেকে আইডিটি পেতে পারেন। -
MEMBER_NAME: সদস্যপদেরnameথেকে প্রাপ্ত আইডি। আপনিListMemberships()মেথড কল করে, অথবা Chat API ব্যবহার করে অ্যাসিঙ্ক্রোনাসভাবে সদস্যপদ তৈরি করার পর ফেরত আসা রেসপন্স বডি থেকে এই আইডিটি পেতে পারেন। -
ROLE_NAME: হালনাগাদকৃত ভূমিকা,ROLE_MEMBER.
গুগল চ্যাট এপিআই নির্দিষ্ট মেম্বারশিপটিকে একজন স্পেস ওনার হিসেবে আপডেট করে এবং Membership এর একটি ইনস্ট্যান্স রিটার্ন করে।
একজন সদস্যকে মালিক হিসেবে পরিবর্তন করুন (চ্যাট অ্যাপ প্রমাণীকরণ)
অ্যাপ প্রমাণীকরণের জন্য প্রশাসকের এককালীন অনুমোদন প্রয়োজন।
একটি স্ক্রিপ্ট লিখুন যা চ্যাট এপিআই কল করে।
নিম্নলিখিত উদাহরণটি অ্যাপ অথেনটিকেশন ব্যবহার করে চ্যাট এপিআই-কে কল করে, যেখানে আপডেট করা মেম্বারশিপ অ্যাট্রিবিউটগুলো নির্দিষ্ট করার body role হিসেবে ROLE_MANAGER উল্লেখ করে একজন সাধারণ স্পেস মেম্বারকে স্পেস ওনার বানানো হয়:
পাইথন
- আপনার ওয়ার্কিং ডিরেক্টরিতে
chat_membership_update_to_owner_app.pyনামে একটি ফাইল তৈরি করুন। 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()কোডে নিম্নলিখিতটি প্রতিস্থাপন করুন:
SPACE: একটি স্পেসের নাম, যা আপনি চ্যাট এপিআই-এরspaces.listমেথড থেকে অথবা কোনো স্পেসের ইউআরএল থেকে পেতে পারেন।MEMBERSHIP: একটি সদস্যপদের নাম, যা আপনি চ্যাট এপিআই-এরspaces.members.listমেথড থেকে পেতে পারেন।ROLE: হালনাগাদকৃত ভূমিকা,ROLE_MANAGER। আপনি এই মানটিMembershipRoleএর যেকোনো মানে সেট করতে পারেন। উদাহরণস্বরূপ, সাধারণ সদস্যকে স্পেস ম্যানেজার বানাতে,ROLEপরিবর্তন করেROLE_ASSISTANT_MANAGERকরুন।
আপনার ওয়ার্কিং ডিরেক্টরিতে, স্যাম্পলটি বিল্ড ও রান করুন:
python3 chat_membership_update_to_owner_app.py
মালিককে সদস্যে পরিবর্তন করুন (চ্যাট অ্যাপ প্রমাণীকরণ)
অ্যাপ প্রমাণীকরণের জন্য প্রশাসকের এককালীন অনুমোদন প্রয়োজন।
একটি স্ক্রিপ্ট লিখুন যা চ্যাট এপিআই কল করে।
নিম্নলিখিত উদাহরণটি অ্যাপ অথেনটিকেশন ব্যবহার করে চ্যাট এপিআই-কে কল করে, যেখানে আপডেট করা মেম্বারশিপ অ্যাট্রিবিউটগুলো নির্দিষ্ট করার body role হিসেবে ROLE_MEMBER উল্লেখ করে একজন স্পেস মালিককে একজন সাধারণ স্পেস সদস্যে পরিণত করা হয়:
পাইথন
- আপনার ওয়ার্কিং ডিরেক্টরিতে
chat_membership_update_to_member_app.pyনামে একটি ফাইল তৈরি করুন। 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()কোডে নিম্নলিখিতটি প্রতিস্থাপন করুন:
SPACE: একটি স্পেসের নাম, যা আপনি চ্যাট এপিআই-এরspaces.listমেথড থেকে অথবা কোনো স্পেসের ইউআরএল থেকে পেতে পারেন।MEMBERSHIP: একটি সদস্যপদের নাম, যা আপনি চ্যাট এপিআই-এরspaces.members.listমেথড থেকে পেতে পারেন।
আপনার ওয়ার্কিং ডিরেক্টরিতে, স্যাম্পলটি বিল্ড ও রান করুন:
python3 chat_membership_update_to_member_app.py
Google Workspace প্রশাসক হিসেবে সদস্যপদগুলি আপডেট করুন
আপনি যদি একজন গুগল ওয়ার্কস্পেস অ্যাডমিনিস্ট্রেটর হন, তাহলে আপনার গুগল ওয়ার্কস্পেস অর্গানাইজেশনের যেকোনো স্পেসের মেম্বারশিপ আপডেট করার জন্য update() মেথডটি কল করতে পারেন।
গুগল ওয়ার্কস্পেস প্রশাসক হিসেবে এই পদ্ধতিটি কল করতে, নিম্নলিখিতগুলি করুন:
- ব্যবহারকারী প্রমাণীকরণ ব্যবহার করে মেথডটি কল করুন, এবং এমন একটি অনুমোদন স্কোপ নির্দিষ্ট করুন যা প্রশাসক বিশেষাধিকার ব্যবহার করে মেথডটি কল করা সমর্থন করে।
- আপনার অনুরোধে,
useAdminAccessকোয়েরি প্যারামিটারটির মানtrueউল্লেখ করুন।
আরও তথ্য ও উদাহরণের জন্য, Google Workspace প্রশাসক হিসেবে Google Chat স্পেস পরিচালনা দেখুন।
সম্পর্কিত বিষয়
- কোনো স্পেসে একজন ব্যবহারকারী বা গুগল চ্যাট অ্যাপকে আমন্ত্রণ জানান বা যুক্ত করুন ।
- কোনো ব্যবহারকারী বা চ্যাট অ্যাপের সদস্যপদ সম্পর্কে বিস্তারিত তথ্য জানুন ।
- একটি স্পেসের সদস্যদের তালিকা করুন ।
- কোনো স্পেস থেকে একজন ব্যবহারকারী বা চ্যাট অ্যাপ সরান ।