এই নির্দেশিকায় গুগল চ্যাট এপিআই-এর SpaceReadState রিসোর্সের update() মেথড ব্যবহার করে স্পেস কী-কে পঠিত বা অপঠিত হিসেবে চিহ্নিত করতে হয়, তা ব্যাখ্যা করা হয়েছে।
SpaceReadState রিসোর্সটি একটি সিঙ্গেলটন রিসোর্স যা একটি গুগল চ্যাট স্পেসে কোনো নির্দিষ্ট ব্যবহারকারীর শেষ পড়া মেসেজের বিবরণ উপস্থাপন করে।
পূর্বশর্ত
নোড.জেএস
- গুগল চ্যাট ব্যবহারের সুবিধাসহ একটি ব্যবসায়িক বা এন্টারপ্রাইজ গুগল ওয়ার্কস্পেস অ্যাকাউন্ট।
- আপনার পরিবেশ প্রস্তুত করুন:
- একটি গুগল ক্লাউড প্রজেক্ট তৈরি করুন ।
- OAuth সম্মতি স্ক্রিনটি কনফিগার করুন ।
- আপনার চ্যাট অ্যাপের জন্য একটি নাম, আইকন এবং বিবরণ দিয়ে গুগল চ্যাট এপিআই সক্রিয় ও কনফিগার করুন ।
- Node.js ক্লাউড ক্লায়েন্ট লাইব্রেরি ইনস্টল করুন।
- একটি ডেস্কটপ অ্যাপ্লিকেশনের জন্য OAuth ক্লায়েন্ট আইডি ক্রেডেনশিয়াল তৈরি করুন । এই গাইডের নমুনাটি চালানোর জন্য, ক্রেডেনশিয়ালগুলো আপনার স্থানীয় ডিরেক্টরিতে
credentials.jsonনামের একটি JSON ফাইল হিসেবে সংরক্ষণ করুন।
- এমন একটি অনুমোদন পরিধি বেছে নিন যা ব্যবহারকারী প্রমাণীকরণ সমর্থন করে।
কলকারী ব্যবহারকারীর স্পেসের পঠন অবস্থা আপডেট করুন
একটি স্পেসের মধ্যে কোনো ব্যবহারকারীর পঠন অবস্থা (read state) আপডেট করতে, আপনার অনুরোধে নিম্নলিখিত বিষয়গুলো অন্তর্ভুক্ত করুন:
-
chat.users.readstateএর অনুমোদন পরিধি নির্দিষ্ট করুন। -
UpdateSpaceReadState()মেথডটি কল করুন। -
lastReadTimeমানটি দিয়েupdateMaskপাস করুন। - নিম্নলিখিতভাবে
spaceReadStateSpaceReadStateএর একটি ইনস্ট্যান্স হিসেবে পাস করুন:- আপডেট করার জন্য '
name' ফিল্ডটিতে স্পেসের রিড স্টেট সেট করতে হয়, যার মধ্যে একটি ইউজার আইডি বা অ্যালিয়াস এবং একটি স্পেস আইডি অন্তর্ভুক্ত থাকে। স্পেস রিড স্টেট আপডেট করার মাধ্যমে শুধুমাত্র কলিং ইউজারের রিড স্টেট আপডেট করা যায়, যা নিম্নলিখিতগুলির মধ্যে একটি সেট করার মাধ্যমে নির্দিষ্ট করা যেতে পারে:-
meউপনাম। উদাহরণস্বরূপ,users/me/spaces/ SPACE /spaceReadState। - কলকারী ব্যবহারকারীর ওয়ার্কস্পেস ইমেল ঠিকানা। উদাহরণস্বরূপ,
users/user@example.com/spaces/ SPACE /spaceReadState। - কলকারী ব্যবহারকারীর ইউজার আইডি। উদাহরণস্বরূপ,
users/ USER /spaces/ SPACE /spaceReadState।
-
-
lastReadTimeফিল্ডটি ব্যবহারকারীর স্পেসের পঠিত অবস্থা আপডেট হওয়ার সময়ের হালনাগাদকৃত মানে সেট করা হয়। সাধারণত এটি সর্বশেষ পঠিত বার্তার টাইমস্ট্যাম্প, অথবা স্পেসের সর্বশেষ পঠিত অবস্থান চিহ্নিত করার জন্য ব্যবহারকারীর দ্বারা নির্দিষ্ট করা কোনো টাইমস্ট্যাম্পের সাথে মিলে যায়। যখনlastReadTimeসর্বশেষ বার্তা তৈরির সময়ের আগে হয়, তখন UI-তে স্পেসটি অপঠিত হিসেবে প্রদর্শিত হয়। স্পেসটিকে পঠিত হিসেবে চিহ্নিত করতে,lastReadTimeসর্বশেষ বার্তা তৈরির সময়ের চেয়ে পরবর্তী (বৃহত্তর) যেকোনো মানে সেট করুন।lastReadTimeসর্বশেষ বার্তা তৈরির সময়ের সাথে মেলানোর জন্য জোর করা হয়। মনে রাখবেন যে, স্পেসের পঠিত অবস্থা শুধুমাত্র সেইসব বার্তার পঠিত অবস্থাকে প্রভাবিত করে যা স্পেসের শীর্ষ-স্তরের কথোপকথনে দৃশ্যমান। থ্রেডের উত্তরগুলো এই টাইমস্ট্যাম্প দ্বারা প্রভাবিত হয় না, এবং এর পরিবর্তে থ্রেডের পঠিত অবস্থার উপর নির্ভর করে।
- আপডেট করার জন্য '
নিম্নলিখিত উদাহরণটি কলকারী ব্যবহারকারীর স্পেসের পঠিত অবস্থা আপডেট করে:
নোড.জেএস
এই নমুনাটি চালানোর জন্য, SPACE_NAME জায়গায় স্পেসটির name থেকে পাওয়া ID-টি বসান। আপনি ListSpaces() মেথডটি কল করে অথবা স্পেসটির URL থেকে ID-টি পেতে পারেন।
গুগল চ্যাট এপিআই নির্দিষ্ট স্পেসের পঠিত অবস্থা আপডেট করে এবং SpaceReadState এর একটি ইনস্ট্যান্স ফেরত দেয়।