Удалить пространство

В этом руководстве объясняется, как использовать метод delete ресурса Space API Google Chat для удаления именованного пространства, когда оно больше не нужно. Удаление пространства также удаляет все, что оно содержит, включая сообщения и вложения.

Ресурс Space представляет собой место, где люди и приложения чата могут отправлять сообщения, обмениваться файлами и сотрудничать. Есть несколько типов помещений:

  • Прямые сообщения (DM) — это разговоры между двумя пользователями или пользователем и приложением чата.
  • Групповые чаты — это разговоры между тремя или более пользователями и приложениями чата.
  • Именованные пространства — это постоянные места, где люди отправляют сообщения, обмениваются файлами и сотрудничают.

Предварительные условия

Питон

  • Python 3.6 или выше
  • Инструмент управления пакетами pip
  • Новейшие клиентские библиотеки Google для Python. Чтобы установить или обновить их, выполните следующую команду в интерфейсе командной строки:

    pip3 install --upgrade google-api-python-client google-auth-oauthlib
    
  • Проект Google Cloud с включенным и настроенным API Google Chat. Инструкции см. в разделе Создание приложения Google Chat .
  • Авторизация настроена для приложения Чат. Для удаления пространства требуется аутентификация пользователя с областью авторизации chat.delete от пользователя, у которого есть разрешение на удаление указанного пространства.

Node.js

  • Node.js и npm
  • Новейшие клиентские библиотеки Google для Node.js. Чтобы установить их, выполните следующую команду в интерфейсе командной строки:

    npm install @google-cloud/local-auth @googleapis/chat
    
  • Проект Google Cloud с включенным и настроенным API Google Chat. Инструкции см. в разделе Создание приложения Google Chat .
  • Авторизация настроена для приложения Чат. Для удаления пространства требуется аутентификация пользователя с областью авторизации chat.delete от пользователя, у которого есть разрешение на удаление указанного пространства.

Удаление именованного пространства

Чтобы удалить существующее пространство в Google Chat, передайте в своем запросе следующее:

  • Укажите область авторизации chat.delete .
  • Вызовите метод delete для ресурса Space .
  • Передайте name пространства, которое нужно удалить.

Вот как удалить пробел:

Питон

  1. В своем рабочем каталоге создайте файл с chat_space_delete.py .
  2. Включите следующий код chat_space_delete.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.delete"]
    
    def main():
        '''
        Authenticates with Chat API via user credentials,
        then deletes the specified 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().delete(
    
              # The space to delete.
              #
              # 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'
    
          ).execute()
    
        # Print Chat API's response in your command line interface.
        # When deleting a space, the response body is empty.
        print(result)
    
    if __name__ == '__main__':
        main()
    
  3. В коде замените SPACE именем пространства, которое можно получить с помощью метода spaces.list в Chat API или из URL-адреса пространства.

  4. В своем рабочем каталоге соберите и запустите пример:

    python3 chat_space_delete.py
    

Node.js

  1. В своем рабочем каталоге создайте файл с именем delete-space.js .
  2. Включите следующий код в delete-space.js :

    const chat = require('@googleapis/chat');
    const {authenticate} = require('@google-cloud/local-auth');
    
    /**
    * Deletes a Chat space.
    * @return {!Promise<!Object>}
    */
    async function deleteSpace() {
      const scopes = [
        'https://www.googleapis.com/auth/chat.delete',
      ];
    
      const authClient =
          await authenticate({scopes, keyfilePath: 'client_secrets.json'});
    
      const chatClient = await chat.chat({version: 'v1', auth: authClient});
    
      return await chatClient.spaces.delete({name: 'spaces/SPACE'});
    }
    
    deleteSpace().then(console.log);
    
  3. В коде замените SPACE именем пространства, которое можно получить с помощью метода spaces.list в Chat API или из URL-адреса пространства.

  4. В своем рабочем каталоге запустите образец:

    node delete-space.js
    

    В случае успеха тело ответа становится пустым, что указывает на то, что пробел удален.