Crea un espacio

En esta guía, se explica cómo usar el método create en el recurso Space de la API de Google Chat para crear un espacio con nombre.

El recurso Space representa un lugar en el que las personas y las apps de Chat pueden enviar mensajes, compartir archivos y colaborar. Existen varios tipos de espacios:

  • Los mensajes directos (MD) son conversaciones entre dos usuarios o un usuario y una app de Chat.
  • Los chats en grupo son conversaciones entre tres o más usuarios y las apps de Chat.
  • Los espacios con nombre son lugares persistentes donde las personas envían mensajes, comparten archivos y colaboran.

Un espacio con nombre es un lugar en el que las personas envían mensajes, comparten archivos y colaboran. Los espacios con nombre pueden incluir apps de Chat. Los espacios con nombre incluyen funciones adicionales que las conversaciones grupales y los mensajes directos sin nombre no tienen, como administradores de espacios que pueden aplicar parámetros de configuración administrativa y descripciones, y agregar o quitar personas y apps. Después de crear un espacio con nombre, el único miembro del espacio es el usuario autenticado. El espacio no incluye a otras personas o apps, ni siquiera la app de Chat que lo crea. Para agregar personas, crea membresías en el espacio llamando al método create en el recurso Member. Si quieres obtener más información, consulta Cómo crear una membresía.

Para crear un espacio con nombre con varios miembros, un chat en grupo sin nombre entre tres o más personas, una conversación de mensaje directo entre dos personas o una persona y la app de Chat que llaman a la API de Chat, configura un espacio.

Requisitos previos

Python

  • Python 3.6 o superior
  • La herramienta de administración de paquetes pip
  • Las bibliotecas cliente de Google más recientes para Python. Para instalarlos o actualizarlos, ejecuta el siguiente comando en tu interfaz de línea de comandos:

    pip3 install --upgrade google-api-python-client google-auth-oauthlib
    
  • Un proyecto de Google Cloud con la API de Google Chat habilitada y configurada. Para conocer los pasos, consulta Compila una app de Google Chat.
  • La autorización configurada para la app de Chat. La creación de un espacio requiere la autenticación de usuarios con el permiso de autorización chat.spaces.create o chat.spaces.

Node.js

  • Node.js y npm
  • Las bibliotecas cliente de Google más recientes para Node.js. Para instalarlos, ejecuta el siguiente comando en tu interfaz de línea de comandos:

    npm install @google-cloud/local-auth @googleapis/chat
    
  • Un proyecto de Google Cloud con la API de Google Chat habilitada y configurada. Para conocer los pasos, consulta Compila una app de Google Chat.
  • La autorización configurada para la app de Chat. La creación de un espacio requiere la autenticación de usuarios con el permiso de autorización chat.spaces.create o chat.spaces.

Crea un espacio con nombre

Para crear un espacio con nombre, pasa lo siguiente en la solicitud:

  • Especifica el permiso de autorización chat.spaces.create o chat.spaces.
  • Llama al método create en el recurso Space.
  • Configura spaceType como SPACE.
  • Configura displayName con el nombre del espacio visible para el usuario. En el siguiente ejemplo, displayName se configura como API-made.
  • De manera opcional, configura otros atributos del espacio, como spaceDetails (una descripción visible para el usuario y un conjunto de lineamientos para el espacio).

A continuación, te mostramos cómo crear un espacio con nombre:

Python

  1. En el directorio de trabajo, crea un archivo llamado chat_space_create_named.py.
  2. Incluye el siguiente código en 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. En tu directorio de trabajo, compila y ejecuta la muestra:

    python3 chat_space_create_named.py
    

Node.js

  1. En el directorio de trabajo, crea un archivo llamado create-space.js.
  2. Incluye el siguiente código en 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. En tu directorio de trabajo, ejecuta la muestra:

    node create-space.js
    

Se crea un espacio con nombre. Para navegar al espacio, usa su ID de recurso para compilar la URL del espacio. Puedes encontrar el ID del recurso en el espacio name, en el cuerpo de la respuesta de Google Chat. Por ejemplo, si el name de tu espacio es spaces/1234567, puedes navegar al espacio con la siguiente URL: https://mail.google.com/chat/u/0/#chat/space/1234567.