В этом руководстве объясняется, как использовать метод patch
для ресурса Space
API Google Chat для обновления пространства. Обновите пространство, чтобы изменить его атрибуты, такие как отображаемое пользователем имя, описание и рекомендации.
Ресурс Space
представляет собой место, где люди и приложения чата могут отправлять сообщения, обмениваться файлами и сотрудничать. Есть несколько типов помещений:
- Прямые сообщения (DM) — это разговоры между двумя пользователями или пользователем и приложением чата.
- Групповые чаты — это разговоры между тремя или более пользователями и приложениями чата.
- Именованные пространства — это постоянные места, где люди отправляют сообщения, обмениваются файлами и сотрудничают.
Предварительные условия
Питон
- Аккаунт Google Workspace для бизнеса или предприятия с доступом к Google Chat .
- Python 3.6 или выше
- Инструмент управления пакетами pip
- Новейшие клиентские библиотеки Google. Чтобы установить или обновить их, выполните следующую команду в интерфейсе командной строки:
pip3 install --upgrade google-api-python-client google-auth-oauthlib
- Настройте свою среду:
- Создайте проект Google Cloud .
- Настройте экран согласия OAuth .
- Включите и настройте API Google Chat, указав имя, значок и описание для вашего приложения Chat.
- Создайте учетные данные идентификатора клиента OAuth для настольного приложения. Чтобы запустить пример из этого руководства, сохраните учетные данные в виде файла JSON (
client_secrets.json
) в локальном каталоге.
- Выберите область авторизации , которая поддерживает аутентификацию пользователей.
Node.js
- Аккаунт Google Workspace для бизнеса или предприятия с доступом к Google Chat .
- Node.js 14 или более поздней версии
- Инструмент управления пакетами npm
- Новейшие клиентские библиотеки Google. Чтобы установить или обновить их, выполните следующую команду в интерфейсе командной строки:
npm install @google-cloud/local-auth @googleapis/chat
- Настройте свою среду:
- Создайте проект Google Cloud .
- Настройте экран согласия OAuth .
- Включите и настройте API Google Chat, указав имя, значок и описание для вашего приложения Chat.
- Создайте учетные данные идентификатора клиента OAuth для настольного приложения. Чтобы запустить пример из этого руководства, сохраните учетные данные в виде файла JSON (
client_secrets.json
) в локальном каталоге.
- Выберите область авторизации , которая поддерживает аутентификацию пользователей.
Обновить пространство
Чтобы обновить существующее пространство в Google Chat, передайте в запросе следующее:
- Укажите область авторизации
chat.spaces
. - Вызовите метод
patch
на ресурсеSpace
. В своем запросе вы указываете полеname
пространства, полеupdateMask
с одним или несколькими полями для обновления иbody
с обновленной информацией о пространстве.
Вы можете обновить такие параметры, как отображаемое имя, тип пространства, состояние истории и многое другое. Чтобы просмотреть все поля, которые можно обновить, смотрите справочную документацию .
Вот как обновить поле spaceDetails
существующего пространства:
Питон
- В своем рабочем каталоге создайте файл с
chat_space_update.py
. Включите следующий код
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()
В коде замените
SPACE
именем пространства, которое можно получить с помощью методаspaces.list
в Chat API или из URL-адреса пространства.В своем рабочем каталоге соберите и запустите пример:
python3 chat_space_update.py
Node.js
- В своем рабочем каталоге создайте файл с именем
update-space.js
. Включите следующий код в
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);
В коде замените
SPACE
именем пространства, которое можно получить с помощью методаspaces.list
в Chat API или из URL-адреса пространства.В своем рабочем каталоге запустите образец:
node update-space.js
API Google Chat возвращает экземпляр ресурса Space
, отражающий обновления.
Связанные темы
- Получите подробную информацию о помещении .
- Перечислите пространства .
- Удалить пробел .
- Обустройте пространство .
- Найдите место для прямых сообщений .
- Сделайте пространство доступным для просмотра определенным пользователям .