Ce guide explique comment utiliser la méthode update()
sur la ressource SpaceReadState
de l'API Google Chat pour marquer des espaces comme lus ou non lus.
La ressource SpaceReadState
est une ressource singleton qui représente les détails du dernier message lu par un utilisateur spécifié dans un espace Google Chat.
Prérequis
Node.js
- Compte Google Workspace Business ou Enterprise ayant accès à Google Chat.
- Configurez votre environnement :
- Créez un projet Google Cloud.
- Configurez l'écran de consentement OAuth.
- Activez et configurez l'API Google Chat avec un nom, une icône et une description pour votre application Chat.
- Installez la bibliothèque cliente Cloud Node.js.
-
Créez des identifiants d'ID client OAuth pour une application de bureau. Pour exécuter l'exemple de ce guide, enregistrez les identifiants dans un fichier JSON nommé
client_secrets.json
dans votre répertoire local.
- Choisissez un niveau d'autorisation compatible avec l'authentification des utilisateurs.
Mettre à jour l'état de lecture de l'espace de l'utilisateur appelant
Pour mettre à jour l'état de lecture d'un utilisateur dans un espace, incluez les éléments suivants dans votre requête:
- Spécifiez le champ d'application de l'autorisation
chat.users.readstate
. - Appelez la méthode
UpdateSpaceReadState()
. - Transmettez
updateMask
avec la valeurlastReadTime
. - Transmettez
spaceReadState
en tant qu'instance deSpaceReadState
avec les éléments suivants :- Champ
name
défini sur l'état de lecture de l'espace à mettre à jour, qui inclut un ID utilisateur ou un alias, ainsi qu'un ID d'espace. La mise à jour de l'état de lecture de l'espace n'est compatible qu'avec la mise à jour de l'état de lecture de l'utilisateur appelant, qui peut être spécifiée en définissant l'un des éléments suivants :- Alias
me
. Exemple :users/me/spaces/SPACE/spaceReadState
. - Adresse e-mail Workspace de l'utilisateur appelant. Par exemple :
users/user@example.com/spaces/SPACE/spaceReadState
. - ID utilisateur de l'appelant. Par exemple :
users/USER/spaces/SPACE/spaceReadState
.
- Alias
- Le champ
lastReadTime
défini sur la valeur mise à jour de l'heure à laquelle l'état de lecture de l'espace de l'utilisateur a été mis à jour. En général, il s'agit du code temporel du dernier message lu ou d'un code temporel spécifié par l'utilisateur pour marquer la dernière position de lecture dans un espace. Lorsque l'lastReadTime
est antérieur à l'heure de création du dernier message, l'espace apparaît comme non lu dans l'UI. Pour marquer l'espace comme lu, définissezlastReadTime
sur une valeur postérieure à la dernière date de création du message (supérieure).lastReadTime
est forcé à correspondre à l'heure de création du dernier message. Notez que l'état de lecture de l'espace n'affecte que l'état de lecture des messages visibles dans la conversation de niveau supérieur de l'espace. Les réponses dans les fils de discussion ne sont pas affectées par cet horodatage, mais dépendent plutôt de l'état de lecture du fil de discussion.
- Champ
L'exemple suivant met à jour l'état de lecture de l'espace de l'utilisateur appelant:
Node.js
Pour exécuter cet exemple, remplacez SPACE_NAME
par l'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.
L'API Google Chat met à jour l'état de lecture de l'espace spécifié et renvoie une instance de SpaceReadState
.
Articles associés
- Obtenez l'état de lecture de l'espace de l'utilisateur appelant.
- Obtenir l'état de lecture du thread de l'utilisateur appelant