Trovare uno spazio per i messaggi diretti

Questa guida spiega come utilizzare il metodo findDirectMessage() nella risorsa Space dell'API Google Chat per ottenere i dettagli di uno spazio di messaggi diretti (DM).

La risorsa Space rappresenta un luogo in cui le persone e le app di chat possono inviare messaggi, condividere file e collaborare. Esistono diversi tipi di spazi:

  • I messaggi diretti sono conversazioni tra due utenti o tra un utente e un'app di chat.
  • Le chat di gruppo sono conversazioni tra tre o più utenti e app di Chat.
  • Gli spazi con nome sono luoghi permanenti in cui le persone inviano messaggi, condividono file e collaborano.

L'autenticazione con autenticazione app consente a un'app di chat di ricevere i messaggi diretti a cui ha accesso in Google Chat (ad esempio, i messaggi diretti di cui è membro). L'autenticazione con autenticazione utente restituisce i messaggi diretti a cui l'utente autenticato ha accesso.

Prerequisiti

Node.js

Trovare un messaggio diretto

Per trovare un messaggio diretto in Google Chat, specifica quanto segue nella richiesta:

  • Con l'autenticazione app, specifica l'ambito di autorizzazione chat.bot. Con l'autenticazione utente, specifica l'ambito di autorizzazione chat.spaces.readonly o chat.spaces.
  • Chiama il metodo FindDirectMessage() passando il name dell'altro utente nel messaggio diretto da restituire. Con l'autenticazione dell'utente, questo metodo restituisce un messaggio diretto tra l'utente chiamante e l'utente specificato. Con l'autenticazione dell'app, questo metodo restituisce un messaggio diretto tra l'app chiamante e l'utente specificato.
  • Per aggiungere un utente come membro di uno spazio, specifica users/{user}, dove {user} è il {person_id} per il person dell'API People o l'ID di un user nell'API Directory. Ad esempio, se la persona resourceName dell'API People è people/123456789, puoi aggiungere l'utente allo spazio includendo un abbonamento con users/123456789 come member.name.

Trovare un messaggio diretto con l'autenticazione utente

Ecco come trovare un messaggio diretto con autenticazione utente:

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);

Per eseguire questo esempio, sostituisci USER_NAME con l'ID del campo name dell'utente.

L'API Chat restituisce un'istanza di Space che descrive in dettaglio il messaggio diretto specificato.

Trovare un messaggio diretto con autenticazione dell'app

Ecco come trovare un messaggio diretto con autenticazione dell'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);

Per eseguire questo esempio, sostituisci USER_NAME con l'ID del campo name dell'utente.

L'API Chat restituisce un'istanza di Space che descrive il messaggio diretto specificato.