En esta guía, se explica cómo usar list
en el recurso SpaceEvent
.
de la API de Google Chat para enumerar los cambios realizados en los recursos de un espacio.
El recurso SpaceEvent
representa un cambio en el espacio de destino, incluidos sus recursos secundarios
como mensajes, reacciones y membresías. Para obtener más información sobre el
y la lista de tipos de eventos y cargas útiles de eventos admitidas, consulta eventType
y
Campos payload
del recurso SpaceEvent
documentación de referencia.
Puedes enumerar eventos hasta 28 días antes de la hora de la solicitud. El servidor
muestra eventos que contienen la versión más reciente del recurso afectado.
Por ejemplo, si enumeras eventos sobre miembros nuevos del espacio, el servidor muestra
Membership
recursos que contienen los detalles de membresía más recientes. Si es nuevo
miembros durante el período solicitado, la carga útil del evento contiene un
recurso Membership
vacío.
Para llamar a este método, debes usar user autenticación. Para enumerar eventos de un espacio, el usuario autenticado debe ser miembro de ese espacio.
Requisitos previos
Python
- Una empresa o empresa 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. y la descripción de tu app de Chat.
-
Crea credenciales de ID de cliente de OAuth para una aplicación de escritorio. Para ejecutar la muestra
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 de usuarios.
Mostrar lista de eventos del espacio
Para enumerar los eventos de un espacio de Chat, sigue estos pasos:
- Realiza una llamada al método
list
. en elSpaceEvent
recurso. - Especifica los tipos de eventos que deseas incluir en la lista con el
filter
. Debes especificar, al menos, un tipo de evento y también puedes filtrar según los siguientes parámetros: fecha. Para obtener una lista de los tipos de eventos admitidos, consultaeventType
. - Con usuario autenticación, especifica uno o más permisos de autorización para admitir cada tipo de evento en tu solicitud. Como práctica recomendada, elige el alcance más restrictivo que aún permite que tu app funcione. Para elegir un alcance, consulta la Descripción general de la autenticación y la autorización.
En la siguiente muestra de código, enumeraste los eventos sobre las membresías nuevas y mensajes en un espacio.
Python
- En el directorio de trabajo, crea un archivo llamado
chat_space_event_list.py
. Incluye el siguiente código en
chat_space_event_list.py
:"""Lists SpaceEvent resources from the Chat API.""" from google_auth_oauthlib.flow import InstalledAppFlow from googleapiclient.discovery import build # Define your app's authorization scopes. # When modifying these scopes, delete the file token.json, if it exists. SCOPES = ["https://www.googleapis.com/auth/chat.memberships.readonly", "https://www.googleapis.com/auth/chat.messages.readonly"] # Authenticate with Google Workspace # and get user authorization. flow = InstalledAppFlow.from_client_secrets_file( 'client_secrets.json', SCOPES) creds = flow.run_local_server() # Build a service endpoint for Chat API. chat = build( 'chat', 'v1', credentials=creds, ) # Use the service endpoint to call Chat API. result = chat.spaces().spaceEvents().list( # The space from which to list events. # # Replace SPACE with a space name. # Obtain the space name from the spaces resource of Chat API, # or from a space's URL. parent='spaces/SPACE', # A required filter. Filters and returns events about new memberships and messages filter='event_types:"google.workspace.chat.membership.v1.created" OR event_types:"google.workspace.chat.message.v1.created"' ).execute() # Prints details about the created space events. print(result)
En el código, reemplaza lo siguiente:
SPACE
: Es un nombre de espacio, que puedes obtener desde Métodospaces.list
en la API de Chat o desde la URL de un espacio.
En tu directorio de trabajo, compila y ejecuta la muestra:
python3 chat_space_event_list.py
La API de Chat devuelve una lista de
Recursos de SpaceEvent
eventos sobre las membresías y los mensajes nuevos.
Personalizar paginación
De manera opcional, pasa los siguientes parámetros de consulta para personalizar la paginación:
pageSize
: La cantidad máxima de recursosSpaceEvent
que se mostrarán. Es posible que el servicio muestre menos valores que este. Los valores negativos devuelven unINVALID_ARGUMENT
error.pageToken
: Es un token de página, recibido de una llamada anterior de eventos de espacio de lista. Proporciona este token para recuperar la página siguiente. Al paginar, el valor del filtro debe coincidir con la llamada que proporcionó el token de la página. Si pasas un un valor diferente puede generar resultados inesperados.