Ce guide explique comment utiliser la méthode findDirectMessage
sur Space
.
ressource de l'API Google Chat pour obtenir des informations sur un espace de message privé.
La
Ressource Space
représente un endroit où les utilisateurs et les applications Chat peuvent envoyer des messages,
partager des fichiers et collaborer. Il existe plusieurs types d'espaces:
- Les messages privés (MP) sont des conversations entre deux utilisateurs ou un utilisateur et une application Chat.
- Les chats de groupe sont des conversations entre trois utilisateurs ou plus et Applications de chat
- Les espaces nommés sont des espaces permanents où les utilisateurs envoient des messages, partagent des fichiers et collaborer.
Authentification avec authentification des applications permet à une application Chat de recevoir les MP L'application Chat a accès dans Google Chat (par exemple, les MP dont il est membre). Authentification avec user authentication (authentification des utilisateurs) renvoie les MP que le auquel l'utilisateur authentifié a accès.
Prérequis
Python
- Une entreprise Un compte Google Workspace ayant accès à Google Chat :
- Configurez votre environnement:
<ph type="x-smartling-placeholder">
- </ph>
- Créez un projet Google Cloud.
- Configurer l'écran de consentement OAuth
- activer et configurer l'API Google Chat à l'aide d'un nom ; et la description de votre application Chat.
- Installez la Python Bibliothèque cliente des API Google.
- Créez des identifiants d'accès en fonction de la manière dont vous souhaitez vous authentifier dans votre API Google Chat.
requête:
<ph type="x-smartling-placeholder">
- </ph>
- Pour vous authentifier en tant
qu'utilisateur de Chat,
créer un ID client OAuth
identifiants et enregistrez-les dans un fichier JSON nommé
client_secrets.json
dans votre répertoire local. - Pour vous authentifier en tant qu'application Chat,
créer un compte de service
identifiants et enregistrez-les dans un fichier JSON nommé
credentials.json
- Pour vous authentifier en tant
qu'utilisateur de Chat,
créer un ID client OAuth
identifiants et enregistrez-les dans un fichier JSON nommé
- <ph type="x-smartling-placeholder"></ph> Choisissez un champ d'application d'autorisation selon que vous souhaitez vous authentifier en tant qu'utilisateur Application Chat
Node.js
- Une entreprise Un compte Google Workspace ayant accès à Google Chat :
- Configurez votre environnement:
<ph type="x-smartling-placeholder">
- </ph>
- Créez un projet Google Cloud.
- Configurer l'écran de consentement OAuth
- activer et configurer l'API Google Chat à l'aide d'un nom ; et la description de votre application Chat.
- Installez la Node.js Bibliothèque cliente des API Google.
- Créez des identifiants d'accès en fonction de la manière dont vous souhaitez vous authentifier dans votre API Google Chat.
requête:
<ph type="x-smartling-placeholder">
- </ph>
- Pour vous authentifier en tant
qu'utilisateur de Chat,
créer un ID client OAuth
identifiants et enregistrez-les dans un fichier JSON nommé
client_secrets.json
dans votre répertoire local. - Pour vous authentifier en tant qu'application Chat,
créer un compte de service
identifiants et enregistrez-les dans un fichier JSON nommé
credentials.json
- Pour vous authentifier en tant
qu'utilisateur de Chat,
créer un ID client OAuth
identifiants et enregistrez-les dans un fichier JSON nommé
- <ph type="x-smartling-placeholder"></ph> Choisissez un champ d'application d'autorisation selon que vous souhaitez vous authentifier en tant qu'utilisateur Application Chat
Rechercher un message privé
Pour rechercher un message privé dans Google Chat, transmettez ce qui suit dans votre demande:
- Avec l'authentification des applications, spécifiez
Champ d'application de l'autorisation
chat.bot
. Avec authentification des utilisateurs, spécifiez le champ d'application de l'autorisationchat.spaces.readonly
ouchat.spaces
. - Appelez la méthode
Méthode
findDirectMessage
sur la ressourceUser
, en transmettantname
de l'autre utilisateur dans le MP. Avec authentification des utilisateurs, cette méthode renvoie un MP entre l'utilisateur appelant et l'utilisateur spécifié. Avec authentification des applications, cette méthode renvoie une MP entre l'application appelante et l'utilisateur spécifié. - Pour ajouter un utilisateur humain en tant que membre de l'espace, spécifiez
users/{user}
, où{user}
est soit la{person_id}
de laperson
de l'API People ou de l'identifiant d'unuser
dans l'API Directory. Par exemple, si l'utilisateur de l'API PeopleresourceName
estpeople/123456789
, vous pouvez ajouter l'utilisateur à l'espace en incluant un Abonnement avecusers/123456789
commemember.name
.
Rechercher un message privé avec l'authentification de l'utilisateur
Pour trouver un message privé avec authentification de l'utilisateur:
Python
- Dans votre répertoire de travail, créez un fichier nommé
chat_space_find_dm_user.py
. Ajoutez le code suivant dans
chat_space_find_dm_user.py
:from google_auth_oauthlib.flow import InstalledAppFlow from googleapiclient.discovery import build # Define your app's authorization scopes. # When modifying these scopes, delete the file token.json, if it exists. SCOPES = ["https://www.googleapis.com/auth/chat.spaces.readonly"] def main(): ''' Authenticates with Chat API via user credentials, then returns details about a specified DM. ''' # Authenticate with Google Workspace # and get user authorization. flow = InstalledAppFlow.from_client_secrets_file( 'client_secrets.json', SCOPES) creds = flow.run_local_server() # Build a service endpoint for Chat API. chat = build('chat', 'v1', credentials=creds) # Use the service endpoint to call Chat API. result = chat.spaces().findDirectMessage( # The other user in the direct message (DM) to return. # # Replace USER with a user name. name='users/USER' ).execute() # Prints details about the direct message. print(result) if __name__ == '__main__': main()
Dans le code, remplacez
USER
par lename
d'unUser
dans Google Chat.Dans votre répertoire de travail, créez et exécutez l'exemple:
python3 chat_space_find_dm_user.py
Node.js
Dans votre répertoire de travail, créez un fichier nommé
find-direct-message-space.js
Ajoutez le code suivant dans
find-direct-message-space.js
:const chat = require('@googleapis/chat'); const {authenticate} = require('@google-cloud/local-auth'); /** * Find a direct message Chat space for a user. * @return {!Promise<!Object>} */ async function findDirectMessageSpace() { const scopes = [ 'https://www.googleapis.com/auth/chat.spaces.readonly', ]; const authClient = await authenticate({scopes, keyfilePath: 'client_secrets.json'}); const chatClient = await chat.chat({version: 'v1', auth: authClient}); return await chatClient.spaces.findDirectMessage( {name: 'users/USER'}); } findDirectMessageSpace().then(console.log);
Dans le code, remplacez
USER
par lename
d'unUser
dans Google Chat.Dans votre répertoire de travail, exécutez l'exemple:
node find-direct-message-space.js
L'API Chat renvoie une instance de
Space
qui détaille le DM spécifié.
Rechercher un message privé avec l'authentification par application
Pour trouver un message privé avec authentification de l'application:
Python
- Dans votre répertoire de travail, créez un fichier nommé
chat_space_find_dm_app.py
. Ajoutez le code suivant dans
chat_space_find_dm_app.py
:from google.oauth2 import service_account from apiclient.discovery import build # Specify required scopes. SCOPES = ['https://www.googleapis.com/auth/chat.bot'] # Specify service account details. CREDENTIALS = ( service_account.Credentials.from_service_account_file('credentials.json') .with_scopes(SCOPES) ) # Build the URI and authenticate with the service account. chat = build('chat', 'v1', credentials=CREDENTIALS) # Use the service endpoint to call Chat API. result = chat.spaces().findDirectMessage( # The other user in the direct message (DM) to return. # # Replace USER with a user name. name='users/USER' ).execute() print(result)
Dans le code, remplacez
USER
par lename
d'unUser
dans Google Chat.Dans votre répertoire de travail, créez et exécutez l'exemple:
python3 chat_space_find_dm_app.py
Node.js
Dans votre répertoire de travail, créez un fichier nommé
app-find-direct-message-space.js
Ajoutez le code suivant dans
app-find-direct-message-space.js
:const chat = require('@googleapis/chat'); /** * Find a direct message Chat space for a user. * @return {!Promise<!Object>} */ async function findDirectMessageSpace() { const scopes = [ 'https://www.googleapis.com/auth/chat.bot', ]; const auth = new chat.auth.GoogleAuth({ scopes, keyFilename: 'credentials.json', }); const authClient = await auth.getClient(); const chatClient = await chat.chat({version: 'v1', auth: authClient}); return await chatClient.spaces.findDirectMessage( {name: 'users/USER'}); } findDirectMessageSpace().then(console.log);
Dans le code, remplacez
USER
par lename
d'unUser
dans Google Chat.Dans votre répertoire de travail, exécutez l'exemple:
node app-find-direct-message-space.js
L'API Chat renvoie une instance de
Space
qui détaille le MP spécifié.
Articles associés
- Créez un espace.
- Configurer un espace
- En savoir plus sur un espace
- Répertorier les espaces
- Mettre à jour un espace
- Supprimer un espace