Bir kullanıcının alan okuma durumunu güncelleme

Bu kılavuzda, update() Google Chat API'nin SpaceReadState kaynağında, alanları okundu veya okunmadı.

İlgili içeriği oluşturmak için kullanılan SpaceReadState kaynak hakkındaki ayrıntıları temsil eden tekil bir kaynaktır: Belirtilen kullanıcının bir Google Chat alanında son okunan mesajı.

Ön koşullar

Node.js

Arayan kullanıcının alan okuma durumunu güncelleme

Bir kullanıcının alandaki okuma durumunu güncellemek için isteğinize aşağıdakileri ekleyin:

  • chat.users.readstate yetkilendirme kapsamını belirtin.
  • Şunu çağırın: UpdateSpaceReadState() yöntemidir.
  • lastReadTime değeriyle updateMask öğesini iletin.
  • spaceReadState değerini, aşağıdakilerle birlikte SpaceReadState örneği olarak iletin:
    • Güncellenecek alan okuma durumuna ayarlanan name alanı, şunları içerir: Kullanıcı kimliği veya takma ad ve alan kimliği. Alan okuma durumu güncelleniyor, yalnızca destekleniyor arayan kullanıcının okuma durumunu güncelleme. Bu işlem, şunlardan birini ayarlayın:
      • me takma adı. Örneğin, users/me/spaces/SPACE/spaceReadState
      • Arayan kullanıcının Workspace e-posta adresi. Örneğin, users/user@example.com/spaces/SPACE/spaceReadState
      • Arayan kullanıcının kullanıcı kimliği. Örneğin, users/USER/spaces/SPACE/spaceReadState.
    • lastReadTime alanı, aşağıdaki zamanın güncel değerine ayarlanır Kullanıcının alan okuma durumu güncellendi. Bu, genelde son okunan mesajın zaman damgası veya kullanıcı tarafından belirtilen bir zaman damgası bir alandaki son okunma konumunu işaretlemek için kullanılır. lastReadTime şundan önce olduğunda: en son mesajın oluşturulma zamanı geldiğinde alan, kullanıcı arayüzünde okunmamış olarak görünür. İşaretlemek için alanını okundu olarak ayarlamak, lastReadTime öğesini en son mesajın oluşturulma zamanı. lastReadTime, en son ileti oluşturma zamanıyla eşleşecek şekilde zorlanmalıdır. Alanın okunma durumunun yalnızca alanın üst düzey ileti dizisinde görünen mesajların okunma durumunu etkilediğini unutmayın. İleti dizilerindeki yanıtlar bu zaman damgasından etkilenmez ve ileti dizisi okuma durumu.

Aşağıdaki örnekte, çağrı yapan kullanıcının alan okuma durumu güncellenir:

Node.js

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);
}

main().catch(console.error);

Bu örneği çalıştırmak için SPACE_NAME yerine alanın name kimliğini girin. Kimliği, ListSpaces() yöntemini çağırarak veya alanın URL'sinden alabilirsiniz.

Google Chat API, belirtilen alanın okuma durumunu günceller ve SpaceReadState örneği döndürür.