এই নির্দেশিকায় ব্যাখ্যা করা হয়েছে কীভাবে গুগল চ্যাট এপিআই-এর Message রিসোর্সের list() মেথড ব্যবহার করে কোনো একটি স্পেসের মেসেজগুলোর একটি পেজিনেটেড ও ফিল্টারযোগ্য তালিকা দেখা যায়।
চ্যাট এপিআই-তে, একটি চ্যাট মেসেজকে Message রিসোর্স দ্বারা উপস্থাপন করা হয়। যদিও চ্যাট ব্যবহারকারীরা শুধুমাত্র টেক্সট-ভিত্তিক মেসেজ পাঠাতে পারেন, চ্যাট অ্যাপগুলো আরও অনেক মেসেজিং ফিচার ব্যবহার করতে পারে, যার মধ্যে রয়েছে স্ট্যাটিক বা ইন্টারেক্টিভ ইউজার ইন্টারফেস প্রদর্শন করা, ব্যবহারকারীদের কাছ থেকে তথ্য সংগ্রহ করা এবং ব্যক্তিগতভাবে মেসেজ পাঠানো। চ্যাট এপিআই-এর জন্য উপলব্ধ মেসেজিং ফিচারগুলো সম্পর্কে আরও জানতে, গুগল চ্যাট মেসেজ ওভারভিউ দেখুন।
পূর্বশর্ত
নোড.জেএস
- গুগল চ্যাট ব্যবহারের সুবিধাসহ একটি ব্যবসায়িক বা এন্টারপ্রাইজ গুগল ওয়ার্কস্পেস অ্যাকাউন্ট।
- আপনার পরিবেশ প্রস্তুত করুন:
- একটি গুগল ক্লাউড প্রজেক্ট তৈরি করুন ।
- 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.messages.readonlyঅথবাchat.messagesঅথরাইজেশন স্কোপ নির্দিষ্ট করুন। -
ListMessages()মেথডটি কল করুন।
নিম্নলিখিত উদাহরণটি একটি চ্যাট স্পেসের বার্তাগুলি তালিকাভুক্ত করে:
নোড.জেএস
পাইথন
জাভা
অ্যাপস স্ক্রিপ্ট
এই নমুনাটি চালানোর জন্য, SPACE_NAME জায়গায় স্পেসটির name ফিল্ড থেকে পাওয়া ID-টি বসান। আপনি ListSpaces() মেথড কল করে অথবা স্পেসটির URL থেকে ID-টি পেতে পারেন।
চ্যাট এপিআই নির্দিষ্ট স্পেসে পাঠানো মেসেজগুলোর একটি তালিকা ফেরত দেয়। অনুরোধে কোনো মেসেজ না থাকলে, চ্যাট এপিআই রেসপন্স একটি খালি অবজেক্ট ফেরত দেয়। REST/HTTP ইন্টারফেস ব্যবহার করার সময়, রেসপন্সে একটি খালি JSON অবজেক্ট, {} থাকে।
চ্যাট অ্যাপ হিসেবে বার্তা তালিকাভুক্ত করুন
অ্যাপ প্রমাণীকরণের জন্য প্রশাসকের এককালীন অনুমোদন প্রয়োজন।
চ্যাট REST API ব্যবহার করে অ্যাপ অথেন্টিকেশন সহ কোনো স্পেস থেকে মেসেজ তালিকাভুক্ত করতে, আপনার অনুরোধে নিম্নলিখিতগুলি পাস করুন:
- নিম্নলিখিত অনুমোদন পরিধিগুলির মধ্যে একটি নির্দিষ্ট করুন:
-
https://www.googleapis.com/auth/chat.app.messages.readonly
-
-
messagesরিসোর্সেরlistমেথডটি কল করুন। - যে স্পেস থেকে মেসেজ তালিকাভুক্ত করতে চান, তার
nameদিন।
একটি স্ক্রিপ্ট লিখুন যা চ্যাট এপিআই কল করে
অ্যাপ অথেন্টিকেশন এবং চ্যাট REST API ব্যবহার করে মেসেজ তালিকাভুক্ত করার পদ্ধতি নিচে দেওয়া হলো:
পাইথন
- আপনার ওয়ার্কিং ডিরেক্টরিতে
chat_messages_list_app.pyনামে একটি ফাইল তৈরি করুন। chat_messages_list_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.messages.readonly"] def main(): ''' Authenticates with Chat API using app authentication, then lists messages from a specified space. ''' # 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().messages().list( # The space to list messages from. # # Replace SPACE_NAME with a space name. # Obtain the space name from the spaces resource of Chat API, # or from a space's URL. parent='spaces/SPACE_NAME' ).execute() # Print Chat API's response in your command line interface. print(result) if __name__ == '__main__': main()কোডে নিম্নলিখিতটি প্রতিস্থাপন করুন:
-
SPACE_NAME: একটি স্পেসের নাম, যা আপনি চ্যাট এপিআই-এরspaces.listমেথড থেকে অথবা কোনো স্পেসের ইউআরএল থেকে পেতে পারেন।
-
আপনার ওয়ার্কিং ডিরেক্টরিতে, স্যাম্পলটি বিল্ড ও রান করুন:
python3 chat_messages_list_app.py
চ্যাট এপিআই নির্দিষ্ট স্পেসে পাঠানো মেসেজগুলোর একটি তালিকা ফেরত দেয়। অনুরোধে কোনো মেসেজ না থাকলে, চ্যাট এপিআই রেসপন্স একটি খালি অবজেক্ট ফেরত দেয়। REST/HTTP ইন্টারফেস ব্যবহার করার সময়, রেসপন্সে একটি খালি JSON অবজেক্ট, {} থাকে।
সম্পর্কিত বিষয়
- একটি বার্তা বিন্যাস করুন ।
- একটি বার্তা মুছে ফেলুন ।
- একটি বার্তা সম্পর্কে বিস্তারিত জানুন ।
- একটি বার্তা হালনাগাদ করুন ।
- একটি বার্তা পাঠান ।