Receber detalhes sobre um evento de um espaço do Google Chat

Neste guia, explicamos como usar o método get() no recurso SpaceEvent da API Google Chat para receber detalhes sobre um evento de um espaço do Google Chat.

O recurso SpaceEvent representa uma mudança em um espaço ou nos recursos filhos dele, como mensagens, reações e associações. Para saber mais sobre os tipos de eventos aceitos, consulte a documentação de referência do campo eventType do recurso SpaceEvent.

Você pode solicitar eventos até 28 dias antes do horário da solicitação. O evento contém a versão mais recente do recurso que foi alterado. Por exemplo, se você solicitar um evento sobre uma nova mensagem, mas ela for atualizada mais tarde, o servidor vai retornar o recurso Message atualizado no payload do evento.

Para chamar esse método, use a autenticação do usuário. Para receber um evento, o usuário autenticado precisa ser participante do espaço em que ele ocorreu.

Pré-requisitos

Node.js

Conferir detalhes sobre um evento no espaço

Para saber detalhes sobre um evento de espaço no Google Chat, transmita o seguinte na sua solicitação:

  • Especifique um escopo de autorização que ofereça suporte ao tipo de evento na sua solicitação. Como prática recomendada, escolha o escopo mais restritivo que ainda permite que o app funcione.
  • Chame o método GetSpaceEvent(), transmitindo o name do evento de espaço a ser recebido.

O exemplo a seguir recebe um evento de espaço:

Node.js

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

// Replace SCOPE_NAME here with an authorization scope based on the event type
const USER_AUTH_OAUTH_SCOPES = ['SCOPE_NAME'];

// This sample shows how to get space event 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 and SPACE_EVENT_NAME here
    name: 'spaces/SPACE_NAME/spaceEvents/SPACE_EVENT_NAME'
  };

  // Make the request
  const response = await chatClient.getSpaceEvent(request);

  // Handle the response
  console.log(response);
}

main().catch(console.error);

Para executar este exemplo, substitua o seguinte:

  • SCOPE_NAME: um escopo de autorização com base no tipo de evento. Por exemplo, se você estiver recebendo um evento de espaço sobre uma nova associação, use o escopo chat.memberships.readonly, formatado como https://www.googleapis.com/auth/chat.memberships.readonly. É possível receber o tipo de evento do método ListSpaceEvents(). Para saber como usar esse método, consulte Listar eventos de um espaço.
  • SPACE_NAME: o ID do name do espaço. Para conseguir o ID, chame o método ListSpaces() ou o URL do espaço.
  • SPACE_EVENT_NAME: o ID do name do evento no espaço. É possível extrair o ID do método ListSpaceEvents(). Para saber como usar esse método, consulte Listar eventos de um espaço.

A API Chat retorna uma instância de SpaceEvent com detalhes sobre o evento.