Actualizar un espacio

En esta guía, se explica cómo usar el método patch en el recurso Space de la API de Google Chat para actualizar un espacio. Actualiza un espacio para cambiar los atributos de un espacio, como el nombre visible para el usuario, la descripción y los lineamientos.

El Recurso Space representa un lugar donde 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 Apps de Chat
  • Los espacios con nombre son lugares persistentes donde las personas envían mensajes, y colaborar.

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 instalarlas o actualizarlas, Ejecuta el siguiente comando en tu interfaz de línea de comandos:
    pip3 install --upgrade google-api-python-client google-auth-oauthlib
    

Node.js

  • Node.js 14 o versiones posteriores
  • La herramienta npm herramienta de administración de paquetes
  • Las bibliotecas cliente de Google más recientes. Para instalarlas o actualizarlas, Ejecuta el siguiente comando en tu interfaz de línea de comandos:
    npm install @google-cloud/local-auth @googleapis/chat
    

Actualiza un espacio

Para actualizar un espacio existente en Google Chat, pasa lo siguiente: en tu solicitud:

  • Especifica el alcance de la autorización chat.spaces.
  • Llama al Método patch en el recurso Space. En tu solicitud, especificas el campo name del espacio, la updateMask con uno o más campos para actualizar y una body con la información actualizada del espacio.

Puedes actualizar datos como el nombre visible, el tipo de espacio, el estado del historial y más. Para ver todos los campos que puedes actualizar, consulta la documentación de referencia.

Sigue estos pasos para actualizar el campo spaceDetails de un espacio existente:

Python

  1. En el directorio de trabajo, crea un archivo llamado chat_space_update.py.
  2. Incluye el siguiente código en chat_space_update.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"]
    
    def main():
        '''
        Authenticates with Chat API via user credentials,
        then updates the specified space description and guidelines.
        '''
    
        # 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().patch(
    
          # The space to update, and the updated space details.
          #
          # Replace {space} with a space name.
          # Obtain the space name from the spaces resource of Chat API,
          # or from a space's URL.
          name='spaces/SPACE',
          updateMask='spaceDetails',
          body={
    
            'spaceDetails': {
              'description': 'This description was updated with Chat API!',
              'guidelines': 'These guidelines were updated with Chat API!'
            }
    
          }
    
        ).execute()
    
        # Prints details about the updated space.
        print(result)
    
    if __name__ == '__main__':
        main()
    
  3. En el código, reemplaza SPACE por un nombre de espacio, que que puedes obtener de la Método spaces.list en la API de Chat o desde la URL de un espacio.

  4. En tu directorio de trabajo, compila y ejecuta la muestra:

    python3 chat_space_update.py
    

Node.js

  1. En el directorio de trabajo, crea un archivo llamado update-space.js.
  2. Incluye el siguiente código en update-space.js:

    const chat = require('@googleapis/chat');
    const {authenticate} = require('@google-cloud/local-auth');
    
    /**
    * Updates a Chat space with the description and guidelines.
    * @return {!Promise<!Object>}
    */
    async function updateSpace() {
      const scopes = [
        'https://www.googleapis.com/auth/chat.spaces',
      ];
    
      const authClient =
          await authenticate({scopes, keyfilePath: 'client_secrets.json'});
    
      const chatClient = await chat.chat({version: 'v1', auth: authClient});
    
      return await chatClient.spaces.patch({
        name: 'spaces/SPACE',
        updateMask: 'spaceDetails',
        requestBody: {
          spaceDetails: {
            description: 'This description was updated with Chat API!',
            guidelines: 'These guidelines were updated with Chat API!'
          },
        }
      });
    }
    
    updateSpace().then(console.log);
    
  3. En el código, reemplaza SPACE por un nombre de espacio, que que puedes obtener de la Método spaces.list en la API de Chat o desde la URL de un espacio.

  4. En tu directorio de trabajo, ejecuta la muestra:

    node update-space.js
    

La API de Google Chat devuelve una instancia del Recurso Space que refleja las actualizaciones.