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 par 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 le name de l'état de lecture du thread à obtenir, qui inclut un ID ou un alias d'utilisateur, ainsi qu'un ID d'espace. L'obtention de l'état de lecture du thread n'est possible que pour 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 qui appelle. Par exemple, users/user@example.com/spaces/SPACE/threads/THREAD/threadReadState.
    • ID utilisateur de l'utilisateur 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 réponse renvoyé après la création asynchrone d'un message 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.