Encontrar um espaço de mensagem direta

Este guia explica como usar o método findDirectMessage() no recurso Space da API Google Chat para conferir detalhes sobre um espaço de mensagem direta (DM).

O recurso Space representa um lugar onde as pessoas e os apps de chat podem enviar mensagens, compartilhar arquivos e colaborar. Há vários tipos de espaços:

  • As mensagens diretas (DMs) são conversas entre dois usuários ou um usuário e um app do Chat.
  • As conversas em grupo são conversas entre três ou mais usuários e apps de chat.
  • Os espaços nomeados são lugares persistentes em que as pessoas enviam mensagens, compartilham arquivos e colaboram.

A autenticação com autenticação de app permite que um app de chat receba mensagens diretas a que ele tem acesso no Google Chat, por exemplo, mensagens diretas de que ele é membro. A autenticação com autenticação do usuário retorna mensagens diretas a que o usuário autenticado tem acesso.

Pré-requisitos

Node.js

Encontrar uma mensagem direta

Para encontrar uma mensagem direta no Google Chat, transmita o seguinte na sua solicitação:

  • Com a autenticação de app, especifique o escopo de autorização chat.bot. Com a autenticação do usuário, especifique o escopo de autorização chat.spaces.readonly ou chat.spaces.
  • Chame o método FindDirectMessage(), transmitindo o name do outro usuário na DM para retornar. Com a autenticação do usuário, esse método retorna uma mensagem direta entre o usuário que fez a chamada e o usuário especificado. Com a autenticação de app, esse método retorna uma DM entre o app de chamada e o usuário especificado.
  • Para adicionar um usuário como membro do espaço, especifique users/{user}, em que {user} é o {person_id} do person da API People ou o ID de um user na API Directory. Por exemplo, se a pessoa da API People resourceName for people/123456789, você poderá adicionar o usuário ao espaço incluindo uma associação com users/123456789 como member.name.

Encontrar uma mensagem direta com autenticação do usuário

Saiba como encontrar uma mensagem direta com autenticação do usuário:

Node.js

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

const USER_AUTH_OAUTH_SCOPES = ['https://www.googleapis.com/auth/chat.spaces.readonly'];

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

  // Initialize request argument(s)
  const request = {
    // Replace USER_NAME here
    name: 'users/USER_NAME'
  };

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

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

main().catch(console.error);

Para executar este exemplo, substitua USER_NAME pelo ID do campo name do usuário.

A API Chat retorna uma instância de Space que detalha a mensagem direta especificada.

Encontrar uma mensagem direta com a autenticação de apps

Veja como encontrar uma mensagem direta com a autenticação de app:

Node.js

chat/client-libraries/cloud/find-dm-space-app-cred.js
import {createClientWithAppCredentials} from './authentication-utils.js';

// This sample shows how to find a Direct Message space with app credential
async function main() {
  // Create a client
  const chatClient = createClientWithAppCredentials();

  // Initialize request argument(s)
  const request = {
    // Replace USER_NAME here
    name: 'users/USER_NAME'
  };

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

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

main().catch(console.error);

Para executar este exemplo, substitua USER_NAME pelo ID do campo name do usuário.

A API Chat retorna uma instância de Space que detalha a mensagem direta especificada.