В этом руководстве объясняется, как создать именованное пространство с помощью метода create()
ресурса Space
API Google Chat.
Именованное пространство (где spaceType
— SPACE
) — это место, где люди отправляют сообщения, делятся файлами и сотрудничают. Именованные пространства могут включать приложения Chat. Именованные пространства имеют менеджеров пространств, которые могут применять административные настройки, описания, а также добавлять или удалять людей и приложения.
Чтобы создать различные типы чат-пространств (включая прямые сообщения или групповые сообщения), используйте метод setUp()
на ресурсе Space
чтобы создать пространство и добавить участников одновременно. Подробности см. в разделе Настройка пространства .
После создания именованного пространства единственным участником пространства является аутентифицированный пользователь. Чтобы добавить участников в пространство, вызовите метод create()
на ресурсе Membership
для каждого человека или приложения, которое вы хотите добавить. Или вы можете использовать метод setUp()
, чтобы создать именованное пространство и одновременно добавить в него участников.
Предпосылки
Node.js
- Учетная запись Google Workspace Business или Enterprise с доступом к Google Chat .
- Настройте свою среду:
- Создайте проект Google Cloud .
- Настройте экран согласия OAuth .
- Включите и настройте API Google Chat, указав имя, значок и описание для вашего приложения Chat.
- Установите облачную клиентскую библиотеку Node.js.
- Создайте учетные данные для доступа на основе того, как вы хотите выполнить аутентификацию в своем запросе API Google Chat:
- Чтобы пройти аутентификацию в качестве пользователя чата, создайте учетные данные идентификатора клиента OAuth и сохраните их в виде JSON-файла с именем
credentials.json
в локальном каталоге. - Чтобы выполнить аутентификацию в приложении Chat, создайте учетные данные сервисной учетной записи и сохраните их в виде JSON-файла с именем
credentials.json
.
- Чтобы пройти аутентификацию в качестве пользователя чата, создайте учетные данные идентификатора клиента OAuth и сохраните их в виде JSON-файла с именем
- Выберите область авторизации в зависимости от того, хотите ли вы аутентифицироваться как пользователь или как приложение Chat.
Питон
- Учетная запись Google Workspace Business или Enterprise с доступом к Google Chat .
- Настройте свою среду:
- Создайте проект Google Cloud .
- Настройте экран согласия OAuth .
- Включите и настройте API Google Chat, указав имя, значок и описание для вашего приложения Chat.
- Установите клиентскую библиотеку Python Cloud .
- Создайте учетные данные для доступа на основе того, как вы хотите выполнить аутентификацию в своем запросе API Google Chat:
- Чтобы пройти аутентификацию в качестве пользователя чата, создайте учетные данные идентификатора клиента OAuth и сохраните их в виде JSON-файла с именем
credentials.json
в локальном каталоге. - Чтобы выполнить аутентификацию в приложении Chat, создайте учетные данные сервисной учетной записи и сохраните их в виде JSON-файла с именем
credentials.json
.
- Чтобы пройти аутентификацию в качестве пользователя чата, создайте учетные данные идентификатора клиента OAuth и сохраните их в виде JSON-файла с именем
- Выберите область авторизации в зависимости от того, хотите ли вы аутентифицироваться как пользователь или как приложение Chat.
Ява
- Учетная запись Google Workspace Business или Enterprise с доступом к Google Chat .
- Настройте свою среду:
- Создайте проект Google Cloud .
- Настройте экран согласия OAuth .
- Включите и настройте API Google Chat, указав имя, значок и описание для вашего приложения Chat.
- Установите клиентскую библиотеку Java Cloud .
- Создайте учетные данные для доступа на основе того, как вы хотите выполнить аутентификацию в своем запросе API Google Chat:
- Чтобы пройти аутентификацию в качестве пользователя чата, создайте учетные данные идентификатора клиента OAuth и сохраните их в виде JSON-файла с именем
credentials.json
в локальном каталоге. - Чтобы выполнить аутентификацию в приложении Chat, создайте учетные данные сервисной учетной записи и сохраните их в виде JSON-файла с именем
credentials.json
.
- Чтобы пройти аутентификацию в качестве пользователя чата, создайте учетные данные идентификатора клиента OAuth и сохраните их в виде JSON-файла с именем
- Выберите область авторизации в зависимости от того, хотите ли вы аутентифицироваться как пользователь или как приложение Chat.
Скрипт приложений
- Учетная запись Google Workspace Business или Enterprise с доступом к Google Chat .
- Настройте свою среду:
- Создайте проект Google Cloud .
- Настройте экран согласия OAuth .
- Включите и настройте API Google Chat, указав имя, значок и описание для вашего приложения Chat.
- Создайте автономный проект Apps Script и включите расширенную службу чата .
- В этом руководстве необходимо использовать либо аутентификацию пользователя, либо аутентификацию приложения . Чтобы аутентифицироваться как приложение Chat, создайте учетные данные учетной записи службы. Для получения инструкций см. раздел Аутентификация и авторизация как приложение Google Chat .
- Выберите область авторизации в зависимости от того, хотите ли вы аутентифицироваться как пользователь или как приложение Chat.
Создайте именованное пространство как пользователь
Чтобы создать именованное пространство с аутентификацией пользователя , передайте в запрос следующее:
- Укажите область авторизации
chat.spaces.create
илиchat.spaces
. - Вызовите метод
CreateSpace()
, передавspace
как экземплярSpace
со следующими полями:-
spaceType
установлен наSPACE
. -
displayName
задается в соответствии с видимым пользователем именем пространства. - При желании можно задать другие атрибуты, например следующие:
-
spaceDetails
— видимое пользователю описание и набор правил для пространства. -
predefinedPermissionSettings
— предопределенные разрешения для пространства. Например, вы можете настроить его так, чтобы все участники или только менеджеры пространства могли публиковать сообщения.
-
-
Вот как создать именованное пространство:
Node.js
Питон
Ява
Скрипт приложений
Создайте именованное пространство как приложение чата
Для аутентификации приложения требуется однократное одобрение администратора .
Чтобы пригласить или добавить пользователя в пространство с аутентификацией через приложение , передайте в запросе следующее:
- Укажите область авторизации
chat.app.spaces.create
илиchat.app.spaces
. - Вызовите метод
create
для ресурсаSpace
. - Установите
spaceType
наSPACE
. - Установите
displayName
на видимое пользователем имя пространства. В следующем примереdisplayName
устанавливается наAPI-made
. - Укажите идентификатор клиента домена Google Workspace, используя поле
customer
. - При желании можно задать другие атрибуты пространства, например
spaceDetails
(видимое пользователю описание и набор правил для пространства).
Создать ключ API
Для вызова метода API Developer Preview необходимо использовать непубличную версию Developer Preview документа API Discovery. Для аутентификации запроса необходимо передать ключ API.
Чтобы создать ключ API, откройте проект Google Cloud вашего приложения и выполните следующие действия:
- В консоли Google Cloud перейдите в > API и службы > Учетные данные .
- Нажмите Создать учетные данные > Ключ API .
- Отобразится ваш новый ключ API.
- Нажмите Copy , чтобы скопировать ваш ключ API для использования в коде вашего приложения. Ключ API также можно найти в разделе «Ключи API» учетных данных вашего проекта.
- Нажмите Ограничить ключ , чтобы обновить расширенные настройки и ограничить использование вашего ключа API. Для получения более подробной информации см. Применение ограничений ключа API .
Напишите скрипт, который вызывает Chat API
Вот как создать именованное пространство:
Питон
- В рабочем каталоге создайте файл с именем
chat_space_create_named_app.py
. Включите следующий код в
chat_space_create_named_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.create"] def main(): ''' Authenticates with Chat API using app authentication, then creates a Chat space. ''' # 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, discoveryServiceUrl='https://chat.googleapis.com/$discovery/rest?version=v1&labels=DEVELOPER_PREVIEW&key=API_KEY') # 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', # The customer ID of the Workspace domain. 'customer': 'CUSTOMER' } ).execute() # Prints details about the created space. print(result) if __name__ == '__main__': main()
В коде замените следующее:
API_KEY
: ключ API, созданный вами для создания конечной точки сервиса для API чата.CUSTOMER
: идентификатор клиента домена пространства в форматеcustomer/{customer}
, где{customer}
— этоID
из ресурса клиента Admin SDK . Чтобы создать пространство в той же организации Google Workspace, что и приложение Chat, используйтеcustomers/my_customer
.
В рабочем каталоге соберите и запустите пример:
python3 chat_space_create_named_app.py
Откройте пространство в Google Chat
Чтобы перейти к пространству, используйте идентификатор ресурса пространства для построения URL пространства. Вы можете найти идентификатор ресурса из name
пространства в теле ответа Google Chat. Например, если name
вашего пространства — spaces/1234567
, вы можете перейти к пространству, используя следующий URL: https://mail.google.com/chat/u/0/#chat/space/1234567
.
Ограничения и соображения
- При создании пространства с использованием аутентификации приложения аутентифицирующее приложение Chat добавляется как участник пространства, но в отличие от аутентификации пользователя, не как менеджер пространства. По умолчанию все участники пространства могут удалить приложение Chat. Чтобы разрешить удалять приложение Chat только менеджерам пространства, установите
permissionSettings.manageApps
наmanagersAllowed
.
Похожие темы
- Добавляйте людей и приложения в пространство, создавая участников .
- Опубликуйте сообщение в теме, создав сообщение .
- Получите подробную информацию о пространстве .
- Список пробелов .
- Обновить пространство .
- Удалить пробел .
- Организуйте пространство .
- Найдите место для прямых сообщений .
- Сделайте пространство доступным для обнаружения определенными пользователями .