Elencare gli eventi da uno spazio di Google Chat

Questa guida spiega come utilizzare il metodo list() nella risorsa SpaceEvent dell'API Google Chat per elencare le modifiche apportate alle risorse di 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 dell'ora della richiesta. Il server restituisce gli eventi che contengono la versione più recente della risorsa interessata. Ad esempio, se elenchi eventi relativi a nuovi membri dello spazio, il server restituisce Membership risorse contenenti i dettagli più recenti dell'iscrizione. 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 l'autenticazione utente. Per elencare gli eventi di uno spazio, l'utente autenticato deve essere un membro dello spazio.

Prerequisiti

Node.js

Elenca eventi dello spazio

Per elencare gli eventi dello spazio da uno spazio di Chat, specifica quanto segue nella richiesta:

L'esempio seguente elenca gli eventi relativi a nuovi abbonamenti e messaggi in uno spazio:

Node.js

chat/client-libraries/cloud/list-space-events-user-cred.js
import {createClientWithUserCredentials} from './authentication-utils.js';

// Authorization scopes based on the event types
const USER_AUTH_OAUTH_SCOPES = [
  'https://www.googleapis.com/auth/chat.memberships.readonly',
  'https://www.googleapis.com/auth/chat.messages.readonly'
];

// This sample shows how to list space events with user credential
async function main() {
  // Create a client
  const chatClient = await createClientWithUserCredentials(USER_AUTH_OAUTH_SCOPES);

  // Initialize request argument(s)
  const request = {
    // Replace SPACE_NAME here
    parent: 'spaces/SPACE_NAME',
    // A required filter. Filters events about new memberships and messages
    filter: 'eventTypes:"google.workspace.chat.membership.v1.created" OR eventTypes:"google.workspace.chat.message.v1.created"'
  };

  // Make the request
  const pageResult = chatClient.listSpaceEventsAsync(request);

  // Handle the response. Iterating over pageResult will yield results and
  // resolve additional pages automatically.
  for await (const response of pageResult) {
    console.log(response);
  }
}

main().catch(console.error);

Per eseguire questo sample, sostituisci SPACE_NAME con l'ID di name dello spazio. Puoi ottenere l'ID chiamando il metodo ListSpaces() o dall'URL dello spazio.

L'API Chat restituisce un elenco paginato di eventi dello spazio relativi a nuovi adesioni e messaggi.