এই নির্দেশিকাটি ব্যাখ্যা করে যে কীভাবে গুগল চ্যাট এপিআই-এর Membership রিসোর্সের create() মেথড ব্যবহার করে কোনো ব্যবহারকারী, গুগল গ্রুপ বা চ্যাট অ্যাপকে একটি স্পেসে আমন্ত্রণ জানানো বা যুক্ত করা যায়, যা মেম্বারশিপ তৈরি করা নামেও পরিচিত। মেম্বারশিপ তৈরি করার সময়, যদি নির্দিষ্ট সদস্যের অটো-অ্যাকসেপ্ট পলিসি বন্ধ করা থাকে, তাহলে তাকে আমন্ত্রণ জানানো হয় এবং যোগদানের আগে তাকে অবশ্যই স্পেসের আমন্ত্রণটি গ্রহণ করতে হবে। অন্যথায়, মেম্বারশিপ তৈরি করলে সদস্য সরাসরি নির্দিষ্ট স্পেসে যুক্ত হয়ে যান।
আপনি যদি একজন গুগল ওয়ার্কস্পেস অ্যাডমিনিস্ট্রেটর হন, তাহলে আপনার গুগল ওয়ার্কস্পেস অর্গানাইজেশনের যেকোনো স্পেসে ব্যবহারকারী, গুগল গ্রুপ বা চ্যাট অ্যাপ যোগ করতে পারবেন।
Membership রিসোর্সটি নির্দেশ করে যে কোনো মানব ব্যবহারকারী বা গুগল চ্যাট অ্যাপ কোনো স্পেসে আমন্ত্রিত, তার অংশ, নাকি অনুপস্থিত।
পূর্বশর্ত
নোড.জেএস
- গুগল চ্যাট ব্যবহারের সুবিধাসহ একটি ব্যবসায়িক বা এন্টারপ্রাইজ গুগল ওয়ার্কস্পেস অ্যাকাউন্ট।
- আপনার পরিবেশ প্রস্তুত করুন:
- একটি গুগল ক্লাউড প্রজেক্ট তৈরি করুন ।
- OAuth সম্মতি স্ক্রিনটি কনফিগার করুন ।
- আপনার চ্যাট অ্যাপের জন্য একটি নাম, আইকন এবং বিবরণ দিয়ে গুগল চ্যাট এপিআই সক্রিয় ও কনফিগার করুন ।
- Node.js ক্লাউড ক্লায়েন্ট লাইব্রেরি ইনস্টল করুন।
- আপনার গুগল চ্যাট এপিআই অনুরোধে আপনি যেভাবে প্রমাণীকরণ করতে চান, তার উপর ভিত্তি করে অ্যাক্সেস ক্রেডেনশিয়াল তৈরি করুন:
- চ্যাট ব্যবহারকারী হিসেবে প্রমাণীকরণের জন্য, OAuth ক্লায়েন্ট আইডি ক্রেডেনশিয়াল তৈরি করুন এবং ক্রেডেনশিয়ালগুলো আপনার স্থানীয় ডিরেক্টরিতে
credentials.jsonনামের একটি JSON ফাইল হিসেবে সংরক্ষণ করুন। - চ্যাট অ্যাপ হিসেবে প্রমাণীকরণের জন্য, পরিষেবা অ্যাকাউন্টের ক্রেডেনশিয়াল তৈরি করুন এবং ক্রেডেনশিয়ালগুলো
credentials.jsonনামের একটি JSON ফাইল হিসেবে সংরক্ষণ করুন।
- চ্যাট ব্যবহারকারী হিসেবে প্রমাণীকরণের জন্য, OAuth ক্লায়েন্ট আইডি ক্রেডেনশিয়াল তৈরি করুন এবং ক্রেডেনশিয়ালগুলো আপনার স্থানীয় ডিরেক্টরিতে
- আপনি ব্যবহারকারী হিসেবে নাকি চ্যাট অ্যাপ হিসেবে প্রমাণীকরণ করতে চান, তার উপর ভিত্তি করে অনুমোদনের পরিধি বেছে নিন ।
পাইথন
- গুগল চ্যাট ব্যবহারের সুবিধাসহ একটি ব্যবসায়িক বা এন্টারপ্রাইজ গুগল ওয়ার্কস্পেস অ্যাকাউন্ট।
- আপনার পরিবেশ প্রস্তুত করুন:
- একটি গুগল ক্লাউড প্রজেক্ট তৈরি করুন ।
- OAuth সম্মতি স্ক্রিনটি কনফিগার করুন ।
- আপনার চ্যাট অ্যাপের জন্য একটি নাম, আইকন এবং বিবরণ দিয়ে গুগল চ্যাট এপিআই সক্রিয় ও কনফিগার করুন ।
- পাইথন ক্লাউড ক্লায়েন্ট লাইব্রেরি ইনস্টল করুন।
- আপনার গুগল চ্যাট এপিআই অনুরোধে আপনি যেভাবে প্রমাণীকরণ করতে চান, তার উপর ভিত্তি করে অ্যাক্সেস ক্রেডেনশিয়াল তৈরি করুন:
- চ্যাট ব্যবহারকারী হিসেবে প্রমাণীকরণের জন্য, OAuth ক্লায়েন্ট আইডি ক্রেডেনশিয়াল তৈরি করুন এবং ক্রেডেনশিয়ালগুলো আপনার স্থানীয় ডিরেক্টরিতে
credentials.jsonনামের একটি JSON ফাইল হিসেবে সংরক্ষণ করুন। - চ্যাট অ্যাপ হিসেবে প্রমাণীকরণের জন্য, পরিষেবা অ্যাকাউন্টের ক্রেডেনশিয়াল তৈরি করুন এবং ক্রেডেনশিয়ালগুলো
credentials.jsonনামের একটি JSON ফাইল হিসেবে সংরক্ষণ করুন।
- চ্যাট ব্যবহারকারী হিসেবে প্রমাণীকরণের জন্য, OAuth ক্লায়েন্ট আইডি ক্রেডেনশিয়াল তৈরি করুন এবং ক্রেডেনশিয়ালগুলো আপনার স্থানীয় ডিরেক্টরিতে
- আপনি ব্যবহারকারী হিসেবে নাকি চ্যাট অ্যাপ হিসেবে প্রমাণীকরণ করতে চান, তার উপর ভিত্তি করে অনুমোদনের পরিধি বেছে নিন ।
জাভা
- গুগল চ্যাট ব্যবহারের সুবিধাসহ একটি ব্যবসায়িক বা এন্টারপ্রাইজ গুগল ওয়ার্কস্পেস অ্যাকাউন্ট।
- আপনার পরিবেশ প্রস্তুত করুন:
- একটি গুগল ক্লাউড প্রজেক্ট তৈরি করুন ।
- OAuth সম্মতি স্ক্রিনটি কনফিগার করুন ।
- আপনার চ্যাট অ্যাপের জন্য একটি নাম, আইকন এবং বিবরণ দিয়ে গুগল চ্যাট এপিআই সক্রিয় ও কনফিগার করুন ।
- জাভা ক্লাউড ক্লায়েন্ট লাইব্রেরি ইনস্টল করুন।
- আপনার গুগল চ্যাট এপিআই অনুরোধে আপনি যেভাবে প্রমাণীকরণ করতে চান, তার উপর ভিত্তি করে অ্যাক্সেস ক্রেডেনশিয়াল তৈরি করুন:
- চ্যাট ব্যবহারকারী হিসেবে প্রমাণীকরণের জন্য, OAuth ক্লায়েন্ট আইডি ক্রেডেনশিয়াল তৈরি করুন এবং ক্রেডেনশিয়ালগুলো আপনার স্থানীয় ডিরেক্টরিতে
credentials.jsonনামের একটি JSON ফাইল হিসেবে সংরক্ষণ করুন। - চ্যাট অ্যাপ হিসেবে প্রমাণীকরণের জন্য, পরিষেবা অ্যাকাউন্টের ক্রেডেনশিয়াল তৈরি করুন এবং ক্রেডেনশিয়ালগুলো
credentials.jsonনামের একটি JSON ফাইল হিসেবে সংরক্ষণ করুন।
- চ্যাট ব্যবহারকারী হিসেবে প্রমাণীকরণের জন্য, OAuth ক্লায়েন্ট আইডি ক্রেডেনশিয়াল তৈরি করুন এবং ক্রেডেনশিয়ালগুলো আপনার স্থানীয় ডিরেক্টরিতে
- আপনি ব্যবহারকারী হিসেবে নাকি চ্যাট অ্যাপ হিসেবে প্রমাণীকরণ করতে চান, তার উপর ভিত্তি করে অনুমোদনের পরিধি বেছে নিন ।
অ্যাপস স্ক্রিপ্ট
- গুগল চ্যাট ব্যবহারের সুবিধাসহ একটি ব্যবসায়িক বা এন্টারপ্রাইজ গুগল ওয়ার্কস্পেস অ্যাকাউন্ট।
- আপনার পরিবেশ প্রস্তুত করুন:
- একটি গুগল ক্লাউড প্রজেক্ট তৈরি করুন ।
- OAuth সম্মতি স্ক্রিনটি কনফিগার করুন ।
- আপনার চ্যাট অ্যাপের জন্য একটি নাম, আইকন এবং বিবরণ দিয়ে গুগল চ্যাট এপিআই সক্রিয় ও কনফিগার করুন ।
- একটি স্বতন্ত্র অ্যাপস স্ক্রিপ্ট প্রজেক্ট তৈরি করুন এবং অ্যাডভান্সড চ্যাট সার্ভিসটি চালু করুন।
- এই নির্দেশিকায়, আপনাকে অবশ্যই ব্যবহারকারী অথবা অ্যাপ প্রমাণীকরণ ব্যবহার করতে হবে। চ্যাট অ্যাপ হিসেবে প্রমাণীকরণের জন্য, পরিষেবা অ্যাকাউন্টের ক্রেডেনশিয়াল তৈরি করুন। ধাপগুলোর জন্য, ‘গুগল চ্যাট অ্যাপ হিসেবে প্রমাণীকরণ ও অনুমোদন’ দেখুন।
- আপনি ব্যবহারকারী হিসেবে নাকি চ্যাট অ্যাপ হিসেবে প্রমাণীকরণ করতে চান, তার উপর ভিত্তি করে অনুমোদনের পরিধি বেছে নিন ।
কোনো ব্যবহারকারীকে একটি স্পেসে ব্যবহারকারী হিসেবে আমন্ত্রণ জানান বা যুক্ত করুন।
ব্যবহারকারী প্রমাণীকরণ সহ কোনো স্পেসে একজন ব্যবহারকারীকে আমন্ত্রণ জানাতে বা যুক্ত করতে, আপনার অনুরোধে নিম্নলিখিতগুলি প্রদান করুন:
-
chat.membershipsএর অনুমোদনের পরিধি নির্দিষ্ট করুন। -
CreateMembership()মেথডটি কল করুন। - যে স্পেসে মেম্বারশিপ তৈরি করতে হবে, তার রিসোর্স নেম হিসেবে
parentপাস করুন। -
Membershipএর একটি ইনস্ট্যান্স হিসেবেmembershipপাস করুন এবং এরmemberফিল্ডটি নিম্নলিখিতভাবে সেট করুন:-
typeফিল্ডটিHUMANএ সেট করা হয়েছে। -
nameফিল্ডটিusers/{user}হিসেবে সেট করুন, যেখানে{user}হলো সেই ব্যক্তি যাকে আপনি স্পেসটিতে যুক্ত করতে চান। চ্যাট ব্যবহারকারীকে নির্দিষ্ট করতে,{user}কে নিম্নলিখিত যেকোনো একটি দিয়ে প্রতিস্থাপন করুন:- People API-তে থাকা ব্যক্তির আইডি। উদাহরণস্বরূপ, যদি People API-এর ব্যক্তি
resourceNameহয়people/123456789, তাহলেusers/123456789মানটি ব্যবহার করুন। - ডিরেক্টরি এপিআই-তে ব্যবহারকারীর আইডি।
- ব্যবহারকারীর ইমেল ঠিকানা। উদাহরণস্বরূপ,
users/222larabrown@gmail.comঅথবাusers/larabrown@cymbalgroup.com। যদি ব্যবহারকারী একটি গুগল অ্যাকাউন্ট ব্যবহার করেন বা অন্য কোনো গুগল ওয়ার্কস্পেস অর্গানাইজেশনের সদস্য হন, তাহলে আপনাকে অবশ্যই তাদের ইমেল ঠিকানা ব্যবহার করতে হবে।
- People API-তে থাকা ব্যক্তির আইডি। উদাহরণস্বরূপ, যদি People API-এর ব্যক্তি
-
নিম্নলিখিত উদাহরণটি ব্যবহারকারী প্রমাণীকরণের মাধ্যমে একটি স্পেসে একজন ব্যবহারকারীকে যুক্ত করে:
নোড.জেএস
পাইথন
জাভা
অ্যাপস স্ক্রিপ্ট
নমুনাটি চালানোর জন্য, নিম্নলিখিতগুলি প্রতিস্থাপন করুন:
-
SPACE_NAME: স্পেসটিরnameথেকে প্রাপ্ত আইডি। আপনিListSpaces()মেথড কল করে অথবা স্পেসটির URL থেকে আইডিটি পেতে পারেন। -
USER_NAME: একটি ব্যবহারকারী আইডি।
চ্যাট এপিআই Membership একটি ইনস্ট্যান্স রিটার্ন করে, যা তৈরি করা ব্যবহারকারীর মেম্বারশিপের বিবরণ প্রদান করে।
একটি স্পেসে একটি গুগল গ্রুপকে আমন্ত্রণ জানান বা যুক্ত করুন
ব্যবহারকারী প্রমাণীকরণের মাধ্যমে কোনো স্পেসে একটি গুগল গ্রুপকে আমন্ত্রণ জানাতে বা যুক্ত করতে ( অ্যাপ প্রমাণীকরণ কোনো স্পেসে গুগল গ্রুপকে আমন্ত্রণ জানানো বা যুক্ত করা সমর্থন করে না), আপনার অনুরোধে নিম্নলিখিতটি পাস করুন:
-
chat.membershipsএর অনুমোদনের পরিধি নির্দিষ্ট করুন। -
CreateMembership()মেথডটি কল করুন। - যে স্পেসে মেম্বারশিপ তৈরি করতে হবে, তার রিসোর্স নেম হিসেবে
parentপাস করুন। -
membershipএর একটি ইনস্ট্যান্স হিসেবেMembershipপাস করুন এবংgroupMemberফিল্ডেরnamegroups/{group}সেট করুন, যেখানে{group}হলো সেই গ্রুপ আইডি যার জন্য আপনি মেম্বারশিপ তৈরি করতে চান। ক্লাউড আইডেন্টিটি এপিআই (Cloud Identity API) ব্যবহার করে গ্রুপটির আইডি সংগ্রহ করা যেতে পারে।
গুগল গ্রুপকে গ্রুপ চ্যাট বা ডিরেক্ট মেসেজে যুক্ত করা যায় না, শুধুমাত্র একটি নামযুক্ত স্পেসে যুক্ত করা যায়।
নিম্নলিখিত উদাহরণটি ব্যবহারকারী প্রমাণীকরণের মাধ্যমে একটি নেমড স্পেসে একটি গ্রুপ যুক্ত করে:
নোড.জেএস
পাইথন
জাভা
অ্যাপস স্ক্রিপ্ট
নমুনাটি চালানোর জন্য, নিম্নলিখিতগুলি প্রতিস্থাপন করুন:
-
SPACE_NAME: স্পেসটিরnameথেকে প্রাপ্ত আইডি। আপনিListSpaces()মেথড কল করে অথবা স্পেসটির URL থেকে আইডিটি পেতে পারেন। -
GROUP_NAME: একটি গ্রুপ আইডি।
চ্যাট এপিআই Membership একটি ইনস্ট্যান্স রিটার্ন করে, যা তৈরি করা ব্যবহারকারীর মেম্বারশিপের বিবরণ প্রদান করে।
একটি স্পেসে একটি চ্যাট অ্যাপ যোগ করুন
একটি চ্যাট অ্যাপ কোনো স্পেসে অন্য কোনো অ্যাপকে সদস্য হিসেবে যুক্ত করতে পারে না। কোনো স্পেসে একটি চ্যাট অ্যাপ যুক্ত করতে অথবা দুজন ব্যবহারকারীর মধ্যে সরাসরি বার্তা আদান-প্রদান করতে, ব্যবহারকারী প্রমাণীকরণের সাথে আপনার অনুরোধে নিম্নলিখিতটি প্রদান করুন ( অ্যাপ প্রমাণীকরণ কোনো স্পেসে চ্যাট অ্যাপকে আমন্ত্রণ জানানো বা যুক্ত করা সমর্থন করে না):
-
chat.memberships.appঅনুমোদনের পরিধি নির্দিষ্ট করুন। -
CreateMembership()মেথডটি কল করুন। - যে স্পেসে মেম্বারশিপ তৈরি করতে হবে, তার রিসোর্স নেম হিসেবে
parentপাস করুন। -
Membershipএর একটি ইনস্ট্যান্স হিসেবেmembershipপাস করুন এবং এরmemberফিল্ডটি নিম্নলিখিতভাবে সেট করুন:-
typeফিল্ডটিBOTতে সেট করা হয়েছে। -
nameফিল্ডটিusers/appএ সেট করা হয়েছে; এটি একটি অ্যালিয়াস যা চ্যাট এপিআই কল করা অ্যাপটিকে প্রতিনিধিত্ব করে।
-
নিম্নলিখিত উদাহরণটি একটি স্পেসে একটি চ্যাট অ্যাপ যোগ করে:
নোড.জেএস
পাইথন
জাভা
অ্যাপস স্ক্রিপ্ট
নমুনাটি চালানোর জন্য, SPACE_NAME জায়গায় স্পেসটির name থেকে পাওয়া ID-টি বসান। আপনি ListSpaces() মেথডটি কল করে অথবা স্পেসটির URL থেকে ID-টি পেতে পারেন।
চ্যাট এপিআই Membership একটি ইনস্ট্যান্স রিটার্ন করে, যা তৈরি করা ব্যবহারকারীর মেম্বারশিপের বিবরণ প্রদান করে।
চ্যাট অ্যাপ হিসেবে কোনো স্পেসে একজন ব্যবহারকারীকে আমন্ত্রণ জানান বা যুক্ত করুন।
অ্যাপ প্রমাণীকরণের জন্য প্রশাসকের এককালীন অনুমোদন প্রয়োজন।
অ্যাপ অথেন্টিকেশন ব্যবহার করে কোনো স্পেসে ব্যবহারকারীকে আমন্ত্রণ জানাতে বা যুক্ত করতে, আপনার অনুরোধে নিম্নলিখিত তথ্যগুলো দিন:
-
chat.app.membershipsঅনুমোদনের পরিধি নির্দিষ্ট করুন। -
membershipরিসোর্সের উপরcreateমেথডটি কল করুন। - যে স্পেসে মেম্বারশিপ তৈরি করতে হবে, তার রিসোর্স নামটিকে
parentহিসেবে সেট করুন। -
memberহিসেবেusers/{user}সেট করুন, যেখানে{user}হলেন সেই ব্যক্তি যার জন্য আপনি সদস্যপদ তৈরি করতে চান, এবং তিনি হলেন:- People API-তে থাকা ব্যক্তির আইডি। উদাহরণস্বরূপ, যদি People API-এর ব্যক্তি
resourceNameহয়people/123456789, তাহলেmembership.member.nameকেusers/123456789এ সেট করুন। - ডিরেক্টরি এপিআই-তে ব্যবহারকারীর আইডি।
- ব্যবহারকারীর ইমেল ঠিকানা। উদাহরণস্বরূপ,
users/222larabrown@gmail.comঅথবাusers/larabrown@cymbalgroup.com। যদি ব্যবহারকারী একটি গুগল অ্যাকাউন্ট ব্যবহার করেন বা অন্য কোনো গুগল ওয়ার্কস্পেস অর্গানাইজেশনের সদস্য হন, তাহলে আপনাকে অবশ্যই তাদের ইমেল ঠিকানা ব্যবহার করতে হবে।
- People API-তে থাকা ব্যক্তির আইডি। উদাহরণস্বরূপ, যদি People API-এর ব্যক্তি
একটি স্ক্রিপ্ট লিখুন যা চ্যাট এপিআই কল করে
নিম্নলিখিত উদাহরণটি অ্যাপ প্রমাণীকরণের মাধ্যমে একজন ব্যবহারকারীকে একটি স্পেসে যুক্ত করে:
পাইথন
- আপনার ওয়ার্কিং ডিরেক্টরিতে
chat_membership_app_create.pyনামে একটি ফাইল তৈরি করুন। chat_membership_app_create.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 adds a user to a Chat space by creating a membership. ''' # 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().create( # The space in which to create a membership. parent = 'spaces/SPACE', # Specify which user the membership is for. body = { 'member': { 'name':'users/USER', 'type': 'HUMAN' } } ).execute() # Prints details about the created membership. print(result) if __name__ == '__main__': main()কোডে নিম্নলিখিতটি প্রতিস্থাপন করুন:
SPACE: একটি স্পেসের নাম, যা আপনি চ্যাট এপিআই-এরspaces.listমেথড থেকে অথবা কোনো স্পেসের ইউআরএল থেকে পেতে পারেন।USER: একটি ব্যবহারকারী আইডি।
আপনার ওয়ার্কিং ডিরেক্টরিতে, স্যাম্পলটি বিল্ড ও রান করুন:
python3 chat_membership_app_create.py
Google Workspace প্রশাসক হিসেবে একটি স্পেসে ব্যবহারকারী বা Google Group যোগ করুন
আপনি যদি একজন গুগল ওয়ার্কস্পেস অ্যাডমিনিস্ট্রেটর হন, তাহলে আপনার গুগল ওয়ার্কস্পেস অর্গানাইজেশনের যেকোনো স্পেসে ব্যবহারকারী, গুগল গ্রুপ বা চ্যাট অ্যাপ যোগ করার জন্য create() মেথডটি কল করতে পারেন।
গুগল ওয়ার্কস্পেস প্রশাসক হিসেবে এই পদ্ধতিটি কল করতে, নিম্নলিখিতগুলি করুন:
- ব্যবহারকারী প্রমাণীকরণ ব্যবহার করে মেথডটি কল করুন, এবং এমন একটি অনুমোদন পরিধি নির্দিষ্ট করুন যা প্রশাসক বিশেষাধিকার ব্যবহার করে মেথডটি কল করা সমর্থন করে।
- আপনার অনুরোধে,
useAdminAccessকোয়েরি প্যারামিটারটির মানtrueউল্লেখ করুন।
আরও তথ্য ও উদাহরণের জন্য, Google Workspace প্রশাসক হিসেবে Google Chat স্পেস পরিচালনা দেখুন।
সীমাবদ্ধতা এবং বিবেচ্য বিষয়
- অ্যাপ অথেনটিকেশনের মাধ্যমে, একটি চ্যাট অ্যাপ ব্যবহারকারীদের আমন্ত্রণ জানাতে বা যুক্ত করতে পারে, কিন্তু গুগল গ্রুপ বা চ্যাট অ্যাপগুলোকে পারে না। নিজেকে যুক্ত করার জন্য, একটি চ্যাট অ্যাপকে অবশ্যই
chat.membershipsঅথরাইজেশন স্কোপ সহ ইউজার অথেনটিকেশন ব্যবহার করতে হবে।
সম্পর্কিত বিষয়
- কোনো ব্যবহারকারী বা চ্যাট অ্যাপের সদস্যপদ সম্পর্কে বিস্তারিত তথ্য জানুন ।
- একটি স্পেসের সদস্যদের তালিকা করুন ।
- গুগল চ্যাট স্পেসে কোনো ব্যবহারকারীর সদস্যপদ আপডেট করুন ।
- কোনো স্পেস থেকে একজন ব্যবহারকারী বা চ্যাট অ্যাপ সরান ।