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

এই নির্দেশিকাটি ব্যাখ্যা করে যে কীভাবে Google Chat API-এর SpaceReadState রিসোর্সে update() পদ্ধতি ব্যবহার করে স্পেসগুলিকে পঠিত বা অপঠিত হিসেবে চিহ্নিত করতে হয়।

SpaceReadState রিসোর্স হল একটি সিঙ্গেলটন রিসোর্স যা Google Chat স্পেসে নির্দিষ্ট ব্যবহারকারীর শেষ পঠিত বার্তার বিশদ বিবরণ উপস্থাপন করে।

পূর্বশর্ত

নোড.জেএস

  • Google Chat অ্যাক্সেস সহ একটি ব্যবসা বা এন্টারপ্রাইজ Google Workspace অ্যাকাউন্ট।

কলিং ব্যবহারকারীর স্পেস রিড স্ট্যাটাস আপডেট করুন

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

  • 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 সর্বশেষ বার্তা তৈরির সময়ের সাথে মেলাতে বাধ্য করা হয়। মনে রাখবেন যে স্পেস রিড স্ট্যাটাস শুধুমাত্র স্পেসের শীর্ষ-স্তরের কথোপকথনে দৃশ্যমান বার্তাগুলির পঠিত অবস্থাকে প্রভাবিত করে। থ্রেডের উত্তরগুলি এই টাইমস্ট্যাম্প দ্বারা প্রভাবিত হয় না এবং পরিবর্তে থ্রেড রিড স্ট্যাটার উপর নির্ভর করে।

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

নোড.জেএস

চ্যাট/ক্লায়েন্ট-লাইব্রেরি/ক্লাউড/আপডেট-স্পেস-রিড-স্টেট-ইউজার-ক্রেড.জেএস
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 আইডিটি ব্যবহার করুন। আপনি ListSpaces() পদ্ধতিতে কল করে অথবা স্পেসের URL থেকে আইডিটি পেতে পারেন।

Google Chat API নির্দিষ্ট স্পেস রিড স্ট্যাটাস আপডেট করে এবং SpaceReadState এর একটি ইনস্ট্যান্স ফেরত দেয়।