Cómo buscar un espacio de mensaje directo (MD)

En esta guía, se explica cómo usar el método findDirectMessage() en el recurso Space de la API de Google Chat para obtener detalles sobre un espacio de mensaje directo (MD).

El recurso Space representa un lugar donde las personas y las apps de Chat pueden enviar mensajes, compartir archivos y colaborar. Existen varios tipos de espacios:

  • Los mensajes directos (MD) son conversaciones entre dos usuarios o entre un usuario y una app de Chat.
  • Los chats grupales son conversaciones entre tres o más usuarios y apps de Chat.
  • Los espacios con nombre son lugares persistentes donde las personas envían mensajes, comparten archivos y colaboran.

Cuando un administrador de Google Workspace instala una app de Chat para toda su organización de Google Workspace, Google Chat crea un MD entre la app de Chat instalada y cada usuario de la organización.

La autenticación con autenticación de la app permite que una app de Chat obtenga MD a los que tiene acceso en Google Chat (por ejemplo, MD de los que es miembro). La autenticación con autenticación de usuarios devuelve los MD a los que tiene acceso el usuario autenticado.

Requisitos previos

Node.js

Cómo encontrar un mensaje directo

Para encontrar un mensaje directo en Google Chat, pasa lo siguiente en tu solicitud:

  • Con la autenticación de la app, especifica el alcance de autorización chat.bot. Con la autenticación de usuarios, especifica el alcance de autorización chat.spaces.readonly o chat.spaces.
  • Llama al método FindDirectMessage() y pasa el name del otro usuario en el MD que se devolverá. Con la autenticación del usuario, este método devuelve un MD entre el usuario que llama y el usuario especificado. Con la autenticación de la app, este método devuelve un MD entre la app que llama y el usuario especificado.
  • Para agregar un usuario humano como miembro de un espacio, especifica users/{user}, donde {user} es el {person_id} del person de la API de People o el ID de un user de la API de Directory. Por ejemplo, si la persona resourceName de la API de People es people/123456789, puedes agregar al usuario al espacio incluyendo una membresía con users/123456789 como member.name.

Cómo encontrar un mensaje directo con autenticación de usuario

Sigue estos pasos para encontrar un mensaje directo con autenticación de usuario:

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 ejecutar este ejemplo, reemplaza USER_NAME por el ID del campo name del usuario.

La API de Chat devuelve una instancia de Space que detalla el MD especificado.

Cómo encontrar un mensaje directo con autenticación de la app

Sigue estos pasos para encontrar un mensaje directo con autenticación de la 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 ejecutar este ejemplo, reemplaza USER_NAME por el ID del campo name del usuario.

La API de Chat devuelve una instancia de Space que detalla el MD especificado.