En esta guía, se explica cómo usar el método update()
en el recurso SpaceReadState
de la API de Google Chat para marcar espacios como leídos o no leídos.
El recurso SpaceReadState
es un recurso singleton que representa detalles sobre el último mensaje leído de un usuario específico en un espacio de Google Chat.
Requisitos previos
Node.js
- Una cuenta empresarial o empresarial de Google Workspace con acceso a Google Chat
- Configura tu entorno:
- Crea un proyecto de Google Cloud
- Configura la pantalla de consentimiento de OAuth.
- Habilita y configura la API de Google Chat con un nombre, un ícono y una descripción para tu app de Chat.
- Instala la biblioteca cliente de Cloud para Node.js.
-
Crea credenciales de ID de cliente de OAuth para una aplicación para computadoras. Para ejecutar la muestra de esta guía, guarda las credenciales como un archivo JSON llamado
client_secrets.json
en tu directorio local.
- Elige un alcance de autorización que admita la autenticación del usuario.
Actualiza el estado de lectura del espacio del usuario que realiza la llamada
Para actualizar el estado de lectura de un usuario en un espacio, incluye lo siguiente en tu solicitud:
- Especifica el alcance de autorización de
chat.users.readstate
. - Realiza una llamada al método
UpdateSpaceReadState()
. - Pasa
updateMask
con el valorlastReadTime
. - Pasa
spaceReadState
como instancia deSpaceReadState
con lo siguiente:- El campo
name
configurado en el estado de lectura del espacio que se actualizará, que incluye un ID de usuario o un alias y un ID de espacio. La actualización del estado de lectura del espacio solo admite la actualización del estado de lectura del usuario que realiza la llamada, que se puede especificar configurando una de las siguientes opciones:- El alias
me
. Por ejemplo,users/me/spaces/SPACE/spaceReadState
- Es la dirección de correo electrónico de Workspace del usuario que realiza la llamada. Por ejemplo,
users/user@example.com/spaces/SPACE/spaceReadState
. - El ID de usuario del usuario que llama. Por ejemplo,
users/USER/spaces/SPACE/spaceReadState
.
- El alias
- El campo
lastReadTime
se establece en el valor actualizado de la hora en la que se actualizó el estado de lectura del espacio del usuario. Por lo general, corresponde a la marca de tiempo del último mensaje leído o a una marca de tiempo que especifica el usuario para marcar la última posición de lectura en un espacio. Cuando ellastReadTime
es anterior a la hora de creación del mensaje más reciente, el espacio aparece como no leído en la IU. Para marcar el espacio como leído, establecelastReadTime
en cualquier valor posterior (mayor) que el tiempo de creación del mensaje más reciente. EllastReadTime
se obliga a coincidir con la hora de creación del mensaje más reciente. Ten en cuenta que el estado de lectura del espacio solo afecta el estado de lectura de los mensajes que son visibles en la conversación de nivel superior del espacio. Las respuestas en las conversaciones no se ven afectadas por esta marca de tiempo y, en su lugar, dependen del estado de lectura de la conversación.
- El campo
En el siguiente ejemplo, se actualiza el estado de lectura del espacio del usuario que realiza la llamada:
Node.js
Para ejecutar esta muestra, reemplaza SPACE_NAME
por el ID del name
del espacio.
Para obtener el ID, llama al método ListSpaces()
o desde la URL del espacio.
La API de Google Chat actualiza el estado de lectura del espacio especificado y muestra una instancia de SpaceReadState
.
Temas relacionados
- Obtén el estado de lectura del espacio del usuario que llama.
- Obtén el estado de lectura del subproceso del usuario que realiza la llamada.