Créer un espace

Ce guide explique comment utiliser la méthode create sur la ressource Space de l'API Google Chat pour créer un espace nommé.

La ressource Space représente un emplacement 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 des applications Chat.
  • Les espaces nommés sont des espaces persistants où les utilisateurs envoient des messages, partagent des fichiers et collaborent.

Un espace nommé est un endroit où les utilisateurs envoient des messages, partagent des fichiers et collaborent. Les espaces nommés peuvent inclure des applications Chat. Les espaces nommés incluent des fonctionnalités supplémentaires qui ne sont pas disponibles dans les conversations de groupe et les messages privés sans nom. Par exemple, les gestionnaires d'espaces peuvent appliquer des paramètres administratifs et des descriptions, et ajouter ou supprimer des personnes et des applications. Après avoir créé un espace nommé, le seul membre de l'espace est l'utilisateur authentifié. L'espace n'inclut pas d'autres personnes ni applications, pas même l'application Chat qui le crée. Pour ajouter des personnes, créez des membres dans l'espace en appelant la méthode create sur la ressource Member. Pour savoir comment procéder, consultez Créer un abonnement.

Pour créer un espace nommé avec plusieurs membres (un chat de groupe sans nom entre trois personnes ou plus, une conversation par message privé entre deux personnes, ou une personne et l'application Chat appelant l'API Chat), configurez un espace à la place.

Prérequis

Python

  • Python 3.6 ou version ultérieure
  • L'outil de gestion des packages pip
  • Les dernières bibliothèques clientes Google pour Python. Pour les installer ou les mettre à jour, exécutez la commande suivante dans votre interface de ligne de commande:

    pip3 install --upgrade google-api-python-client google-auth-oauthlib
    
  • Un projet Google Cloud avec l'API Google Chat activée et configurée Pour connaître la procédure à suivre, consultez Créer une application Google Chat.
  • Autorisation configurée pour l'application Chat. La création d'un espace nécessite une authentification des utilisateurs avec le niveau d'autorisation chat.spaces.create ou chat.spaces.

Node.js

  • Node.js et npm
  • Les dernières bibliothèques clientes Google pour Node.js. Pour les installer, exécutez la commande suivante dans votre interface de ligne de commande:

    npm install @google-cloud/local-auth @googleapis/chat
    
  • Un projet Google Cloud avec l'API Google Chat activée et configurée Pour connaître la procédure à suivre, consultez Créer une application Google Chat.
  • Autorisation configurée pour l'application Chat. La création d'un espace nécessite une authentification des utilisateurs avec le niveau d'autorisation chat.spaces.create ou chat.spaces.

Créer un espace nommé

Pour créer un espace nommé, transmettez les éléments suivants dans votre requête:

  • Spécifiez le champ d'application des autorisations chat.spaces.create ou chat.spaces.
  • Appelez la méthode create sur la ressource Space.
  • Définissez spaceType sur SPACE.
  • Définissez displayName sur le nom de l'espace visible par l'utilisateur. Dans l'exemple suivant, displayName est défini sur API-made.
  • Vous pouvez également définir d'autres attributs d'espace, tels que spaceDetails (description visible par l'utilisateur et ensemble de directives pour l'espace).

Pour créer un espace nommé, procédez comme suit:

Python

  1. Dans votre répertoire de travail, créez un fichier nommé chat_space_create_named.py.
  2. Incluez le code suivant dans chat_space_create_named.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.create"]
    
    def main():
        '''
        Authenticates with Chat API via user credentials,
        then creates a Chat space.
        '''
    
        # 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().create(
    
          # Details about the space to create.
          body = {
    
            # To create a named space, set spaceType to SPACE.
            'spaceType': 'SPACE',
    
            # The user-visible name of the space.
            'displayName': 'API-made'
          }
    
          ).execute()
    
        # Prints details about the created membership.
        print(result)
    
    if __name__ == '__main__':
        main()
    
  3. Dans votre répertoire de travail, créez et exécutez l'exemple:

    python3 chat_space_create_named.py
    

Node.js

  1. Dans votre répertoire de travail, créez un fichier nommé create-space.js.
  2. Incluez le code suivant dans create-space.js:

    const chat = require('@googleapis/chat');
    const {authenticate} = require('@google-cloud/local-auth');
    
    /**
    * Creates a new chat space.
    * @return {!Promise<!Object>}
    */
    async function createSpace() {
      const scopes = [
        'https://www.googleapis.com/auth/chat.spaces.create',
      ];
    
      const authClient =
          await authenticate({scopes, keyfilePath: 'client_secrets.json'});
    
      const chatClient = await chat.chat({version: 'v1', auth: authClient});
    
      return await chatClient.spaces.create(
          {requestBody: {spaceType: 'SPACE', displayName: 'API-made'}});
    }
    
    createSpace().then(console.log);
    
  3. Dans votre répertoire de travail, exécutez l'exemple:

    node create-space.js
    

Un espace nommé est créé. Pour accéder à l'espace, utilisez son ID de ressource afin de créer son URL. Vous pouvez trouver l'ID de ressource de l'espace name dans le corps de la réponse Google Chat. Par exemple, si la name de votre espace est spaces/1234567, vous pouvez y accéder à l'aide de l'URL suivante: https://mail.google.com/chat/u/0/#chat/space/1234567.