Questa guida spiega come utilizzare il list
.
sulla risorsa SpaceEvent
dell'API Google Chat per elencare le modifiche apportate alle risorse in uno spazio.
La risorsa SpaceEvent
rappresenta una modifica dello spazio di destinazione, incluse le risorse figlio dello spazio come messaggi, reazioni e adesioni. Per saperne di più sull'elenco dei tipi di eventi e dei relativi payload supportati, consulta i campi eventType
e payload
della documentazione di riferimento della risorsa SpaceEvent
.
Puoi elencare gli eventi fino a 28 giorni prima della richiesta. Il server
restituisce gli eventi che contengono la versione più recente della risorsa interessata.
Ad esempio, se elenchi eventi relativi ai nuovi membri di uno spazio, il server restituisce risorse Membership
contenenti i dettagli più recenti dell'abbonamento. Se nuovi membri sono stati rimossi durante il periodo richiesto, il payload dell'evento contiene una risorsa Membership
vuota.
Per chiamare questo metodo, devi utilizzare user autenticazione. Per elencare gli eventi di uno spazio, l'utente autenticato deve essere un membro dello spazio.
Prerequisiti
Python
- Un account Google Workspace Business o Enterprise con accesso a Google Chat.
- Configura l'ambiente:
- Creare un progetto Google Cloud.
- Configura la schermata per il consenso OAuth.
- Abilita e configura l'API Google Chat con un nome, l'icona e la descrizione dell'app Chat.
-
Creare credenziali con ID client OAuth per un'applicazione desktop. Per eseguire l'esempio in questo
guida, salva le credenziali come file JSON denominato
client_secrets.json
nel tuo nella directory locale.
- Scegli un ambito di autorizzazione che supporti l'autenticazione degli utenti.
Elenca eventi dello spazio
Per elencare gli eventi dello spazio da uno spazio di Chat, segui questi passaggi:
- Chiama il metodo
list
ilSpaceEvent
risorsa. - Specifica i tipi di eventi da elencare utilizzando il
campo
filter
. Devi specificare almeno un tipo di evento e puoi anche filtrare per data. Per un elenco dei tipi di eventi supportati, consulta ileventType
campo. - Con utente l'autenticazione, specifica uno o più ambiti di autorizzazione per supportare ciascun tipo di evento nella richiesta. Come best practice, scegli l'ambito più restrittivo che consente il funzionamento dell'app. Per scegliere un ambito, consulta Panoramica di autenticazione e autorizzazione.
Nel seguente esempio di codice sono elencati gli eventi relativi alle nuove iscrizioni e messaggi in uno spazio.
Python
- Nella directory di lavoro, crea un file denominato
chat_space_event_list.py
. Includi il seguente codice in
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)
Nel codice, sostituisci quanto segue:
SPACE
: un nome dello spazio, che puoi ottenere dal metodospaces.list
nell'API Chat o dall'URL di uno spazio.
Nella directory di lavoro, crea ed esegui l'esempio:
python3 chat_space_event_list.py
L'API Chat restituisce un elenco
SpaceEvent
risorse
eventi relativi a nuove iscrizioni e messaggi.
Personalizza l'impaginazione
Facoltativamente, passa i seguenti parametri di query per personalizzare l'impaginazione:
pageSize
: il numero massimo di risorseSpaceEvent
da restituire. Il servizio potrebbe restituire un valore inferiore a questo valore. I valori negativi restituiscono unINVALID_ARGUMENT
errore.pageToken
: un token di pagina ricevuto da una precedente chiamata di eventi dello spazio elenco. Fornisci questo token per recuperare la pagina successiva. Quando esegui la paginazione, il valore del filtro deve corrispondere alla chiamata che ha fornito il token pagina. Se passi un valore diverso, potresti ottenere risultati imprevisti.