Criar um espaço

Neste guia, explicamos como usar o método create no recurso Space da API Google Chat para criar um espaço nomeado.

O recurso Space representa um lugar onde as pessoas e os apps de chat podem enviar mensagens, compartilhar arquivos e colaborar. Existem vários tipos de espaços:

  • As mensagens diretas são conversas entre dois usuários ou um usuário e um app do Chat.
  • Chats em grupo são conversas entre três ou mais usuários e apps do Chat.
  • Os espaços nomeados são lugares persistentes onde as pessoas enviam mensagens, compartilham arquivos e colaboram.

Um espaço nomeado é um lugar onde as pessoas enviam mensagens, compartilham arquivos e colaboram. Os espaços nomeados podem incluir apps do Chat. Os espaços nomeados incluem recursos extras que as conversas em grupo e mensagens diretas sem nome não têm, como administradores de espaços que podem aplicar configurações administrativas, descrições e adicionar ou remover pessoas e apps. Depois de criar um espaço nomeado, o único participante do espaço é o usuário autenticado. O espaço não inclui outras pessoas ou apps, nem mesmo o app do Chat que o cria. Para adicionar pessoas, crie associações no espaço chamando o método create no recurso Member. Saiba como fazer isso em Criar uma assinatura.

Para criar um espaço nomeado com vários participantes, como um chat em grupo sem nome entre três ou mais pessoas, uma conversa por mensagem direta entre duas pessoas ou uma pessoa e o app do Chat chamando a API Chat, configure um espaço.

Pré-requisitos

Python

  • Python 3.6 ou superior
  • A ferramenta de gerenciamento de pacotes pip
  • As bibliotecas de cliente mais recentes do Google para Python. Para instalá-los ou atualizá-los, execute o seguinte comando na interface de linha de comando:

    pip3 install --upgrade google-api-python-client google-auth-oauthlib
    
  • Um projeto do Google Cloud com a API Google Chat ativada e configurada. Veja as etapas em Criar um app do Google Chat.
  • Autorização configurada para o app do Chat. A criação de um espaço requer a autenticação do usuário com o escopo de autorização chat.spaces.create ou chat.spaces.

Node.js

  • Node.js e npm
  • As bibliotecas de cliente mais recentes do Google para Node.js. Para instalá-los, execute o seguinte comando na interface de linha de comando:

    npm install @google-cloud/local-auth @googleapis/chat
    
  • Um projeto do Google Cloud com a API Google Chat ativada e configurada. Veja as etapas em Criar um app do Google Chat.
  • Autorização configurada para o app do Chat. A criação de um espaço requer a autenticação do usuário com o escopo de autorização chat.spaces.create ou chat.spaces.

Criar um espaço nomeado

Para criar um espaço nomeado, transmita o seguinte na sua solicitação:

  • Especifique o escopo de autorização chat.spaces.create ou chat.spaces.
  • Chame o método create no recurso Space.
  • Defina spaceType como SPACE.
  • Defina displayName como o nome visível para o usuário do espaço. No exemplo a seguir, displayName está definido como API-made.
  • Opcionalmente, defina outros atributos de espaço, como spaceDetails (uma descrição visível para o usuário e um conjunto de diretrizes para o espaço).

Veja como criar um espaço nomeado:

Python

  1. No diretório de trabalho, crie um arquivo chamado chat_space_create_named.py.
  2. Inclua o seguinte código em 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. No diretório de trabalho, crie e execute a amostra:

    python3 chat_space_create_named.py
    

Node.js

  1. No diretório de trabalho, crie um arquivo chamado create-space.js.
  2. Inclua o seguinte código em 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. No diretório de trabalho, execute o exemplo:

    node create-space.js
    

Um espaço nomeado é criado. Se você quiser navegar até o espaço, use o ID do recurso para criar o URL. Você encontra o ID do recurso no espaço name no corpo da resposta do Google Chat. Por exemplo, se o name do espaço for spaces/1234567, navegue até ele usando este URL: https://mail.google.com/chat/u/0/#chat/space/1234567.