В этом руководстве объясняется, как использовать метод patch()
ресурса Space
API Google Chat для обновления пространства. Обновите пространство, чтобы изменить его атрибуты, такие как отображаемое пользователем имя, описание и правила.
Если вы являетесь администратором Google Workspace, вы можете вызвать метод patch()
для обновления любого существующего пространства в вашей организации Google Workspace.
Ресурс Space
представляет собой место, где пользователи и чат-приложения могут отправлять сообщения, обмениваться файлами и работать вместе. Существует несколько типов пространств:
- Прямые сообщения (ЛС) — это беседы между двумя пользователями или пользователем и приложением чата.
- Групповые чаты — это беседы между тремя и более пользователями и приложениями чата.
- Именованные пространства — это постоянные места, где люди отправляют сообщения, обмениваются файлами и сотрудничают.
Предпосылки
Node.js
- Учетная запись Google Workspace Business или Enterprise с доступом к Google Chat .
- Настройте свою среду:
- Создайте проект Google Cloud .
- Настройте экран согласия OAuth .
- Включите и настройте API Google Chat, указав имя, значок и описание для вашего приложения Chat.
- Установите облачную клиентскую библиотеку Node.js.
- Создайте учётные данные OAuth-клиента для настольного приложения. Чтобы запустить пример из этого руководства, сохраните учётные данные в виде JSON-файла с именем
credentials.json
в локальном каталоге.
- Выберите область авторизации , поддерживающую аутентификацию пользователя.
- Пространство Google Chat. Чтобы создать его с помощью API Google Chat, см. раздел Создание пространства . Чтобы создать пространство в Chat, посетите документацию Справочного центра .
Питон
- Учетная запись Google Workspace Business или Enterprise с доступом к Google Chat .
- Настройте свою среду:
- Создайте проект Google Cloud .
- Настройте экран согласия OAuth .
- Включите и настройте API Google Chat, указав имя, значок и описание для вашего приложения Chat.
- Установите клиентскую библиотеку Python Cloud .
- Создайте учётные данные OAuth-клиента для настольного приложения. Чтобы запустить пример из этого руководства, сохраните учётные данные в виде JSON-файла с именем
credentials.json
в локальном каталоге.
- Выберите область авторизации , поддерживающую аутентификацию пользователя.
- Пространство Google Chat. Чтобы создать его с помощью API Google Chat, см. раздел Создание пространства . Чтобы создать пространство в Chat, посетите документацию Справочного центра .
Ява
- Учетная запись Google Workspace Business или Enterprise с доступом к Google Chat .
- Настройте свою среду:
- Создайте проект Google Cloud .
- Настройте экран согласия OAuth .
- Включите и настройте API Google Chat, указав имя, значок и описание для вашего приложения Chat.
- Установите клиентскую библиотеку Java Cloud .
- Создайте учётные данные OAuth-клиента для настольного приложения. Чтобы запустить пример из этого руководства, сохраните учётные данные в виде JSON-файла с именем
credentials.json
в локальном каталоге.
- Выберите область авторизации , поддерживающую аутентификацию пользователя.
- Пространство Google Chat. Чтобы создать его с помощью API Google Chat, см. раздел Создание пространства . Чтобы создать пространство в Chat, посетите документацию Справочного центра .
Скрипт приложений
- Учетная запись Google Workspace Business или Enterprise с доступом к Google Chat .
- Настройте свою среду:
- Создайте проект Google Cloud .
- Настройте экран согласия OAuth .
- Включите и настройте API Google Chat, указав имя, значок и описание для вашего приложения Chat.
- Создайте автономный проект Apps Script и включите расширенную службу чата .
- Выберите область авторизации , поддерживающую аутентификацию пользователя.
- Пространство Google Chat. Чтобы создать его с помощью API Google Chat, см. раздел Создание пространства . Чтобы создать пространство в Chat, посетите документацию Справочного центра .
Обновите пространство как пользователь
Чтобы обновить существующее пространство в Google Chat с аутентификацией пользователя , передайте в запросе следующее:
- Укажите область авторизации
chat.spaces
. - Вызовите метод
UpdateSpace()
. В запросе укажите полеname
пространства, полеupdateMask
с одним или несколькими полями для обновления иbody
с обновлённой информацией о пространстве.
Вы можете обновить такие данные, как отображаемое имя, тип пространства, состояние истории и т. д. Список всех полей, которые можно обновить, см. в справочной документации .
Вот как обновить поле displayName
существующего пространства:
Node.js
Питон
Ява
Скрипт приложений
Чтобы запустить этот пример, замените SPACE_NAME
на идентификатор из поля name
пространства. Идентификатор можно получить, вызвав метод ListSpaces()
или перейдя по URL-адресу пространства.
API Google Chat возвращает экземпляр Space
, отражающий обновления.
Обновите пространство как администратор Google Workspace
Если вы являетесь администратором Google Workspace, вы можете вызвать метод UpdateSpace()
для обновления любого пространства в вашей организации Google Workspace.
Чтобы вызвать этот метод от имени администратора Google Workspace, выполните следующие действия:
- Вызовите метод, используя аутентификацию пользователя, и укажите область авторизации , которая поддерживает вызов метода с использованием привилегий администратора .
- В запросе укажите параметр запроса
useAdminAccess
вtrue
.
Дополнительную информацию и примеры см. в статье Управление пространствами Google Chat в качестве администратора Google Workspace .
Обновите пространство как приложение чата
Аутентификация приложения требует однократного одобрения администратора .
Чтобы обновить существующее пространство в Google Chat с аутентификацией приложения , передайте в запросе следующее:
- Укажите область авторизации
chat.app.spaces
. При аутентификации через приложение вы можете обновлять только пространства, созданные приложениями Chat. - Вызовите метод
patch
для ресурсаSpace
. В запросе укажите полеname
пространства, полеupdateMask
с одним или несколькими полями для обновления иbody
с обновлённой информацией о пространстве.
Вы можете обновить такие данные, как отображаемое имя, тип пространства, состояние истории, настройки разрешений и многое другое. Чтобы узнать обо всех полях, которые можно обновить, см. справочную документацию .
Напишите скрипт, который вызывает Chat API
Вот как обновить поле spaceDetails
существующего пространства:
Питон
- В рабочем каталоге создайте файл с именем
chat_space_update_app.py
. Включите следующий код в
chat_space_update_app.py
:from google.oauth2 import service_account from apiclient.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.app.spaces"] def main(): ''' Authenticates with Chat API using app authentication, then updates the specified space description and guidelines. ''' # Specify service account details. creds = ( service_account.Credentials.from_service_account_file('credentials.json') .with_scopes(SCOPES) ) # 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_app.py
API Google Chat возвращает экземпляр ресурса Space
, отражающий обновления.
Ограничения и соображения
- С аутентификацией приложения , чат-приложения:
- Может обновлять только
predefinedPermissionSettings
илиpermissionSettings
в созданных ими пространствах. - Невозможно обновить
accessSettings.audience
.
- Может обновлять только
Похожие темы
- Получите подробную информацию о пространстве .
- Список пробелов .
- Удалить пробел .
- Организуйте пространство .
- Найдите место для прямых сообщений .
- Сделайте пространство видимым для определенных пользователей .