একটি ব্যবহারকারীর স্থান পড়ার অবস্থা আপডেট করুন৷

এই নির্দেশিকায় গুগল চ্যাট এপিআই-এর SpaceReadState রিসোর্সের update() মেথড ব্যবহার করে স্পেস কী-কে পঠিত বা অপঠিত হিসেবে চিহ্নিত করতে হয়, তা ব্যাখ্যা করা হয়েছে।

SpaceReadState রিসোর্সটি একটি সিঙ্গেলটন রিসোর্স যা একটি গুগল চ্যাট স্পেসে কোনো নির্দিষ্ট ব্যবহারকারীর শেষ পড়া মেসেজের বিবরণ উপস্থাপন করে।

পূর্বশর্ত

নোড.জেএস

কলকারী ব্যবহারকারীর স্পেসের পঠন অবস্থা আপডেট করুন

একটি স্পেসের মধ্যে কোনো ব্যবহারকারীর পঠন অবস্থা (read state) আপডেট করতে, আপনার অনুরোধে নিম্নলিখিত বিষয়গুলো অন্তর্ভুক্ত করুন:

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

নিম্নলিখিত উদাহরণটি কলকারী ব্যবহারকারীর স্পেসের পঠিত অবস্থা আপডেট করে:

নোড.জেএস

chat/client-libraries/cloud/update-space-read-state-user-cred.js
import {createClientWithUserCredentials} from './authentication-utils.js';

const USER_AUTH_OAUTH_SCOPES = [
  'https://www.googleapis.com/auth/chat.users.readstate',
];

// This sample shows how to update a space read state for the calling user
async function main() {
  // Create a client
  const chatClient = await createClientWithUserCredentials(
    USER_AUTH_OAUTH_SCOPES,
  );

  // Initialize request argument(s)
  const timestamp = new Date('2000-01-01').getTime();
  const request = {
    spaceReadState: {
      // Replace SPACE_NAME here
      name: 'users/me/spaces/SPACE_NAME/spaceReadState',
      lastReadTime: {
        seconds: Math.floor(timestamp / 1000),
        nanos: (timestamp % 1000) * 1000000,
      },
    },
    updateMask: {
      // The field paths to update.
      paths: ['last_read_time'],
    },
  };

  // Make the request
  const response = await chatClient.updateSpaceReadState(request);

  // Handle the response
  console.log(response);
}

await main();

এই নমুনাটি চালানোর জন্য, SPACE_NAME জায়গায় স্পেসটির name থেকে পাওয়া ID-টি বসান। আপনি ListSpaces() মেথডটি কল করে অথবা স্পেসটির URL থেকে ID-টি পেতে পারেন।

গুগল চ্যাট এপিআই নির্দিষ্ট স্পেসের পঠিত অবস্থা আপডেট করে এবং SpaceReadState এর একটি ইনস্ট্যান্স ফেরত দেয়।