В этом руководстве объясняется, как использовать метод create()
ресурса Membership
API Google Chat, чтобы пригласить или добавить пользователя, группу Google или приложение чата в пространство, также известное как создание членства. Если при создании членства у указанного участника отключена политика автоматического принятия, он будет приглашен и должен принять приглашение в пространство, прежде чем присоединиться. В противном случае при создании членства участник добавляется непосредственно в указанное пространство.
Если вы администратор Google Workspace, вы можете добавлять пользователей, группы Google или приложения чата в любое пространство вашей организации Google Workspace.
Ресурс Membership
указывает, приглашен ли пользователь или приложение Google Chat в пространство, участвует в нем или отсутствует в нем.
Предварительные условия
Node.js
- Аккаунт Google Workspace для бизнеса или предприятия с доступом к Google Chat .
- Настройте свою среду:
- Создайте проект Google Cloud .
- Настройте экран согласия OAuth .
- Включите и настройте API Google Chat , указав имя, значок и описание для вашего приложения Chat.
- Установите облачную клиентскую библиотеку Node.js.
- Создайте учетные данные доступа в зависимости от того, как вы хотите пройти аутентификацию в запросе к API Google Chat:
- Чтобы пройти аутентификацию в качестве пользователя Chat, создайте учетные данные идентификатора клиента OAuth и сохраните их в виде файла JSON с именем
client_secrets.json
в локальном каталоге. - Чтобы пройти аутентификацию в качестве приложения Chat, создайте учетные данные учетной записи службы и сохраните их в виде файла JSON с именем
credentials.json
.
- Чтобы пройти аутентификацию в качестве пользователя Chat, создайте учетные данные идентификатора клиента OAuth и сохраните их в виде файла JSON с именем
- Выберите область авторизации в зависимости от того, хотите ли вы пройти аутентификацию как пользователь или приложение Chat.
Питон
- Аккаунт Google Workspace для бизнеса или предприятия с доступом к Google Chat .
- Настройте свою среду:
- Создайте проект Google Cloud .
- Настройте экран согласия OAuth .
- Включите и настройте API Google Chat , указав имя, значок и описание для вашего приложения Chat.
- Установите облачную клиентскую библиотеку Python.
- Создайте учетные данные доступа в зависимости от того, как вы хотите пройти аутентификацию в запросе к API Google Chat:
- Чтобы пройти аутентификацию в качестве пользователя Chat, создайте учетные данные идентификатора клиента OAuth и сохраните их в виде файла JSON с именем
client_secrets.json
в локальном каталоге. - Чтобы пройти аутентификацию в качестве приложения Chat, создайте учетные данные учетной записи службы и сохраните их в виде файла JSON с именем
credentials.json
.
- Чтобы пройти аутентификацию в качестве пользователя Chat, создайте учетные данные идентификатора клиента OAuth и сохраните их в виде файла JSON с именем
- Выберите область авторизации в зависимости от того, хотите ли вы пройти аутентификацию как пользователь или приложение Chat.
Ява
- Аккаунт Google Workspace для бизнеса или предприятия с доступом к Google Chat .
- Настройте свою среду:
- Создайте проект Google Cloud .
- Настройте экран согласия OAuth .
- Включите и настройте API Google Chat , указав имя, значок и описание для вашего приложения Chat.
- Установите облачную клиентскую библиотеку Java.
- Создайте учетные данные доступа в зависимости от того, как вы хотите пройти аутентификацию в запросе к API Google Chat:
- Чтобы пройти аутентификацию в качестве пользователя Chat, создайте учетные данные идентификатора клиента OAuth и сохраните их в виде файла JSON с именем
client_secrets.json
в локальном каталоге. - Чтобы пройти аутентификацию в качестве приложения Chat, создайте учетные данные учетной записи службы и сохраните их в виде файла JSON с именем
credentials.json
.
- Чтобы пройти аутентификацию в качестве пользователя Chat, создайте учетные данные идентификатора клиента OAuth и сохраните их в виде файла JSON с именем
- Выберите область авторизации в зависимости от того, хотите ли вы пройти аутентификацию как пользователь или приложение Chat.
Скрипт приложений
- Аккаунт Google Workspace для бизнеса или предприятия с доступом к Google Chat .
- Настройте свою среду:
- Создайте проект Google Cloud .
- Настройте экран согласия OAuth .
- Включите и настройте API Google Chat , указав имя, значок и описание для вашего приложения Chat.
- Создайте автономный проект Apps Script и включите расширенную службу чата .
- В этом руководстве вы должны использовать аутентификацию пользователя или приложения . Для аутентификации в качестве приложения Chat создайте учетные данные сервисной учетной записи. Инструкции см. в разделе Аутентификация и авторизация в качестве приложения Google Chat .
- Выберите область авторизации в зависимости от того, хотите ли вы пройти аутентификацию как пользователь или приложение Chat.
Пригласить или добавить пользователя в пространство в качестве пользователя
Чтобы пригласить или добавить пользователя в пространство с аутентификацией пользователя , передайте в запросе следующее:
- Укажите область авторизации
chat.memberships
. - Вызовите метод
CreateMembership()
. - Передайте
parent
в качестве имени ресурса пространства, в котором необходимо создать членство. - Передайте
membership
как экземплярMembership
с его наборомmember
поля со следующим:- В поле
type
установлено значениеHUMAN
. - В поле
name
установленоusers/{user}
, где{user}
— это человек, которого вы хотите добавить в пространство. Чтобы указать пользователя чата , замените{user}
любым из следующих значений:- Идентификатор человека в People API. Например, если
resourceName
Person API People —people/123456789
, тогда используйте значениеusers/123456789
. - Идентификатор пользователя в API каталога.
- Адрес электронной почты пользователя. Например,
users/222larabrown@gmail.com
илиusers/larabrown@cymbalgroup.com
. Если пользователь использует учетную запись Google или принадлежит к другой организации Google Workspace, вы должны использовать его адрес электронной почты.
- Идентификатор человека в People API. Например, если
- В поле
В следующем примере пользователь добавляется в пространство с аутентификацией пользователя :
Node.js
Питон
Ява
Скрипт приложений
Чтобы запустить образец, замените следующее:
-
SPACE_NAME
: идентификатор изname
пространства. Вы можете получить идентификатор, вызвав методListSpaces()
или по URL-адресу пространства. -
USER_NAME
: идентификатор пользователя.
API чата возвращает экземпляр Membership
, в котором подробно описано созданное членство пользователя.
Пригласите или добавьте группу Google в пространство
Чтобы пригласить или добавить группу Google в пространство с аутентификацией пользователя ( аутентификация приложения не поддерживает приглашение или добавление группы Google в пространство), передайте в своем запросе следующее:
- Укажите область авторизации
chat.memberships
. - Вызовите метод
CreateMembership()
. - Передайте
parent
в качестве имени ресурса пространства, в котором необходимо создать членство. - Передайте
membership
как экземплярMembership
сname
поляgroupMember
установленным вgroups/{group}
где{group}
— это идентификатор группы, для которой вы хотите создать членство. Идентификатор группы можно получить с помощью API Cloud Identity .
Группы Google нельзя добавить в групповой чат или прямое сообщение, а только в именованное пространство.
В следующем примере группа добавляется в именованное пространство с аутентификацией пользователя:
Node.js
Питон
Ява
Скрипт приложений
Чтобы запустить образец, замените следующее:
-
SPACE_NAME
: идентификатор изname
пространства. Вы можете получить идентификатор, вызвав методListSpaces()
или по URL-адресу пространства. -
GROUP_NAME
: идентификатор группы.
API чата возвращает экземпляр Membership
, в котором подробно описано созданное членство пользователя.
Добавьте приложение Chat в пространство
Приложение чата не может добавить другое приложение в качестве участника в пространство. Чтобы добавить приложение чата в пространство или прямое сообщение между двумя пользователями-людьми, передайте в своем запросе с аутентификацией пользователя следующее ( аутентификация приложения не поддерживает приглашение или добавление приложения чата в пространство):
- Укажите область авторизации
chat.memberships.app
. - Вызовите метод
CreateMembership()
. - Передайте
parent
в качестве имени ресурса пространства, в котором необходимо создать членство. - Передайте
membership
как экземплярMembership
с его наборомmember
поля со следующим:- В поле
type
установлено значениеBOT
. - В поле
name
установленоusers/app
; псевдоним, представляющий приложение, вызывающее API чата.
- В поле
В следующем примере приложение Chat добавляется в пространство:
Node.js
Питон
Ява
Скрипт приложений
Чтобы запустить пример, замените SPACE_NAME
идентификатором из name
пространства. Вы можете получить идентификатор, вызвав метод ListSpaces()
или по URL-адресу пространства.
API чата возвращает экземпляр Membership
, в котором подробно описано созданное членство пользователя.
Пригласите или добавьте пользователя в пространство как приложение чата.
Для аутентификации приложения требуется однократное одобрение администратора .
Чтобы пригласить или добавить пользователя в пространство с аутентификацией приложения , передайте в запросе следующее:
- Укажите область авторизации
chat.app.memberships
. - Вызовите метод
create
для ресурсаmembership
. - Задайте для параметра
parent
имя ресурса пространства, в котором необходимо создать членство. - Установите для
member
users/{user}
, где{user}
— это человек, для которого вы хотите создать членство, и может быть:- Идентификатор человека в People API. Например, если
resourceName
Person API People —people/123456789
, задайтеmembership.member.name
users/123456789
. - Идентификатор пользователя в API каталога.
- Адрес электронной почты пользователя. Например,
users/222larabrown@gmail.com
илиusers/larabrown@cymbalgroup.com
. Если пользователь использует учетную запись Google или принадлежит к другой организации Google Workspace, вы должны использовать его адрес электронной почты.
- Идентификатор человека в People API. Например, если
Создайте ключ API
Чтобы вызвать метод API Developer Preview, необходимо использовать закрытую предварительную версию документа обнаружения API для разработчиков. Для аутентификации запроса необходимо передать ключ API.
Чтобы создать ключ API, откройте проект Google Cloud вашего приложения и выполните следующие действия:
- В консоли Google Cloud выберите > API и службы > Учетные данные .
- Нажмите Создать учетные данные > Ключ API .
- Отобразится ваш новый ключ API.
- Нажмите «Копировать , чтобы скопировать ключ API для использования в коде вашего приложения. Ключ API также можно найти в разделе «Ключи API» учетных данных вашего проекта.
- Нажмите «Ограничить ключ» , чтобы обновить дополнительные настройки и ограничить использование вашего ключа API. Дополнительные сведения см. в разделе «Применение ограничений ключей API» .
Напишите скрипт, вызывающий Chat API.
В следующем примере пользователь добавляется в пространство с аутентификацией приложения :
Питон
- В своем рабочем каталоге создайте файл с
chat_membership_app_create.py
. Включите следующий код в
chat_membership_app_create.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.memberships"] def main(): ''' Authenticates with Chat API using app authentication, then adds a user to a Chat space by creating a membership. ''' # 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().members().create( # The space in which to create a membership. parent = 'spaces/SPACE', # Specify which user the membership is for. body = { 'member': { 'name':'users/USER', 'type': 'HUMAN' } } ).execute() # Prints details about the created membership. print(result) if __name__ == '__main__': main()
В коде замените следующее:
API_KEY
: ключ API, который вы создали для создания конечной точки службы для Chat API.SPACE
: имя пространства, которое можно получить с помощью методаspaces.list
в Chat API или из URL-адреса пространства.USER
: идентификатор пользователя.
В своем рабочем каталоге соберите и запустите пример:
python3 chat_membership_app_create.py
Добавляйте пользователей или группы Google в пространство в качестве администратора Google Workspace.
Если вы администратор Google Workspace, вы можете вызвать метод create()
чтобы добавить пользователей, группы Google или приложения чата в любое пространство в вашей организации Google Workspace.
Чтобы вызвать этот метод от имени администратора Google Workspace, выполните следующие действия:
- Вызовите метод, используя аутентификацию пользователя, и укажите область авторизации , которая поддерживает вызов метода с правами администратора .
- В своем запросе укажите для параметра запроса
useAdminAccess
значениеtrue
.
Дополнительную информацию и примеры см. в разделе «Управление пространствами Google Chat от имени администратора Google Workspace» .
Ограничения и соображения
- Благодаря аутентификации приложений приложение Chat может приглашать или добавлять пользователей, но не Google Groups или приложения Chat. Чтобы добавить себя, приложение Chat должно использовать аутентификацию пользователя с областью авторизации
chat.memberships
.
Связанные темы
- Получите подробную информацию о членстве пользователя или приложения Chat .
- Список участников в пространстве .
- Обновите членство пользователя в чате Google .
- Удаление пользователя или приложения Chat из пространства .