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 au moins trois utilisateurs et des applications Chat.
  • Les espaces nommés sont des espaces persistants où les utilisateurs peuvent envoyer des messages, partager des fichiers et collaborer.

Un espace nommé est un endroit où les utilisateurs peuvent envoyer des messages, partager des fichiers et collaborer. Les espaces nommés peuvent inclure des applications Chat. Les espaces nommés incluent des fonctionnalités supplémentaires que les conversations de groupe et les messages privés sans nom n'ont pas. Par exemple, les gestionnaires d'espaces peuvent appliquer des paramètres d'administration, des descriptions, et ajouter ou supprimer des utilisateurs 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 ou applications, pas même l'application Chat qui l'a créé. 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é comportant plusieurs membres (par exemple, 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 plutôt un espace.

Conditions préalables

Python

  • Python 3.6 ou version ultérieure
  • L'outil de gestion de 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 dans lequel l'API Google Chat est 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 de l'utilisateur avec le champ d'application 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 dans lequel l'API Google Chat est 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 de l'utilisateur avec le champ d'application 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 de l'autorisation 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 (une description et un ensemble de consignes visibles par l'utilisateur pour l'espace).

Voici comment créer un espace nommé:

Python

  1. Dans votre répertoire de travail, créez un fichier nommé chat_space_create_named.py.
  2. Ajoutez 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 space.
        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. Ajoutez 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 l'ID de ressource de l'espace afin de créer son URL. Vous pouvez trouver l'ID de ressource dans l'espace name dans le corps de la réponse Google Chat. Par exemple, si le 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.