Obtenir des informations sur l'état de lecture du fil de discussion d'un utilisateur

Ce guide explique comment utiliser la méthode get() sur la ressource ThreadReadState de l'API Google Chat pour obtenir des informations sur l'état de lecture d'un utilisateur dans un fil de discussion. Pour obtenir l'état de lecture d'un message dans un espace, consultez Obtenir des informations sur l'état de lecture d'un espace pour un utilisateur.

La ressource ThreadReadState est une ressource singleton qui représente les détails du dernier message lu d'un utilisateur spécifié dans un fil de discussion Google Chat.

Prérequis

Node.js

Obtenir l'état de lecture du thread de l'utilisateur appelant

Pour obtenir des informations sur l'état de lecture d'un utilisateur dans un fil de discussion, incluez les éléments suivants dans votre requête:

  • Spécifiez le champ d'application de l'autorisation chat.users.readstate ou chat.users.readstate.readonly.
  • Appelez la méthode GetThreadReadState() en transmettant l'name de l'état de lecture du thread à obtenir, qui inclut un ID utilisateur ou un alias et un ID d'espace. L'obtention de l'état de lecture du thread n'est compatible qu'avec l'obtention de l'état de lecture de l'utilisateur appelant, qui peut être spécifié en définissant l'un des éléments suivants :
    • Alias me. Exemple : users/me/spaces/SPACE/threads/THREAD/threadReadState.
    • Adresse e-mail Workspace de l'utilisateur appelant. Par exemple : users/user@example.com/spaces/SPACE/threads/THREAD/threadReadState.
    • ID utilisateur de l'appelant. Par exemple : users/USER/spaces/SPACE/threads/THREAD/threadReadState.

L'exemple suivant récupère l'état de lecture du thread de l'utilisateur appelant:

Node.js

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

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

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

  // Initialize request argument(s)
  const request = {
    // Replace SPACE_NAME and THREAD_NAME here
    name: 'users/me/spaces/SPACE_NAME/threads/THREAD_NAME/threadReadState'
  };

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

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

main().catch(console.error);

Pour exécuter cet exemple, remplacez les éléments suivants:

  • SPACE_NAME: ID de l'name de l'espace. Vous pouvez obtenir l'ID en appelant la méthode ListSpaces() ou à partir de l'URL de l'espace.
  • THREAD_NAME: ID de l'name du thread. Vous pouvez obtenir l'ID à partir du corps de la réponse renvoyé après avoir créé un message de manière asynchrone avec l'API Chat ou avec le nom personnalisé attribué au message lors de sa création.

L'API Google Chat obtient l'état de lecture du thread spécifié et renvoie une instance de ThreadReadState.