В этом руководстве объясняется, как использовать метод create()
ресурса Membership
API Google Chat для приглашения или добавления пользователя, группы Google или приложения Chat в пространство, что также называется созданием членства. Если при создании членства у указанного участника отключена политика автоматического принятия, он получает приглашение и должен принять приглашение перед присоединением. В противном случае создание членства добавляет участника непосредственно в указанное пространство.
Если вы являетесь администратором Google Workspace, вы можете добавлять пользователей, группы Google или приложения чата в любое пространство в вашей организации Google Workspace.
Ресурс Membership
показывает, приглашен ли пользователь-человек или приложение Google Chat в пространство, является его частью или отсутствует в нем.
Предпосылки
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-файла с именем
- Выберите область авторизации в зависимости от того, хотите ли вы пройти аутентификацию как пользователь или как приложение чата.
Питон
- Учетная запись 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-файла с именем
- Выберите область авторизации в зависимости от того, хотите ли вы пройти аутентификацию как пользователь или как приложение чата.
Ява
- Учетная запись 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-файла с именем
- Выберите область авторизации в зависимости от того, хотите ли вы пройти аутентификацию как пользователь или как приложение чата.
Скрипт приложений
- Учетная запись Google Workspace Business или Enterprise с доступом к Google Chat .
- Настройте свою среду:
- Создайте проект Google Cloud .
- Настройте экран согласия OAuth .
- Включите и настройте API Google Chat, указав имя, значок и описание для вашего приложения Chat.
- Создайте автономный проект Apps Script и включите расширенную службу чата .
- В этом руководстве необходимо использовать аутентификацию пользователя или приложения . Для аутентификации в приложении Chat создайте учетные данные сервисной учетной записи. Инструкции см. в разделе «Аутентификация и авторизация в приложении Google Chat» .
- Выберите область авторизации в зависимости от того, хотите ли вы пройти аутентификацию как пользователь или как приложение чата.
Пригласить или добавить пользователя в пространство в качестве пользователя
Чтобы пригласить или добавить пользователя в пространство с аутентификацией пользователя , передайте в запросе следующее:
- Укажите область авторизации
chat.memberships
. - Вызовите метод
CreateMembership()
. - Передайте
parent
как имя ресурса пространства, в котором необходимо создать членство. - Передайте
membership
как экземплярMembership
со следующим набором полейmember
:- Поле
type
установлено наHUMAN
. - Поле
name
имеет значениеusers/{user}
, где{user}
— имя человека, которого вы хотите добавить в чат. Чтобы указать пользователя чата , замените{user}
на любое из следующих значений:- Идентификатор пользователя в API People. Например, если
resourceName
пользователя API People —people/123456789
, то следует использовать значениеusers/123456789
. - Идентификатор пользователя в API каталога.
- Адрес электронной почты пользователя. Например,
users/222larabrown@gmail.com
илиusers/larabrown@cymbalgroup.com
. Если пользователь использует учётную запись Google или принадлежит к другой организации Google Workspace, необходимо указать его адрес электронной почты.
- Идентификатор пользователя в API People. Например, если
- Поле
В следующем примере пользователь добавляется в пространство с аутентификацией пользователя :
Node.js
Питон
Ява
Скрипт приложений
Чтобы запустить образец, замените следующее:
-
SPACE_NAME
: идентификатор изname
пространства. Идентификатор можно получить, вызвав методListSpaces()
или указав URL пространства. -
USER_NAME
: идентификатор пользователя.
API чата возвращает экземпляр Membership
, который подробно описывает созданное членство пользователя.
Пригласите или добавьте группу Google в пространство
Чтобы пригласить или добавить группу Google в пространство с аутентификацией пользователя ( аутентификация приложения не поддерживает приглашение или добавление группы Google в пространство), передайте в запросе следующее:
- Укажите область авторизации
chat.memberships
. - Вызовите метод
CreateMembership()
. - Передайте
parent
как имя ресурса пространства, в котором необходимо создать членство. - Передайте
membership
как экземплярMembership
, задав для поляgroupMember
name
groups/{group}
, где{group}
— идентификатор группы, для которой вы хотите создать членство. Идентификатор группы можно получить с помощью API Cloud Identity .
Группы Google нельзя добавлять в групповой чат или личное сообщение, можно только в именованное пространство.
В следующем примере группа добавляется в именованное пространство с аутентификацией пользователя:
Node.js
Питон
Ява
Скрипт приложений
Чтобы запустить образец, замените следующее:
-
SPACE_NAME
: идентификатор изname
пространства. Идентификатор можно получить, вызвав методListSpaces()
или указав URL пространства. -
GROUP_NAME
: идентификатор группы.
API чата возвращает экземпляр Membership
, который подробно описывает созданное членство пользователя.
Добавьте приложение чата в пространство
Приложение чата не может добавлять другие приложения в качестве участников пространства. Чтобы добавить приложение чата в пространство или отправить прямое сообщение между двумя пользователями, передайте в запросе следующую информацию с аутентификацией пользователя ( аутентификация приложения не поддерживает приглашение или добавление приложения чата в пространство):
- Укажите область авторизации
chat.memberships.app
. - Вызовите метод
CreateMembership()
. - Передайте
parent
как имя ресурса пространства, в котором необходимо создать членство. - Передайте
membership
как экземплярMembership
со следующим набором полейmember
:- Поле
type
установлено наBOT
. - Поле
name
установлено наusers/app
; псевдоним, представляющий приложение, вызывающее API чата.
- Поле
В следующем примере приложение чата добавляется в пространство:
Node.js
Питон
Ява
Скрипт приложений
Чтобы запустить пример, замените SPACE_NAME
на идентификатор из name
пространства. Идентификатор можно получить, вызвав метод ListSpaces()
или указав URL пространства.
API чата возвращает экземпляр Membership
, который подробно описывает созданное членство пользователя.
Пригласите или добавьте пользователя в пространство как приложение чата
Аутентификация приложения требует однократного одобрения администратора .
Чтобы пригласить или добавить пользователя в пространство с аутентификацией через приложение , передайте в запросе следующее:
- Укажите область авторизации
chat.app.memberships
. - Вызовите метод
create
для ресурсаmembership
. - Установите
parent
на имя ресурса пространства, в котором необходимо создать членство. - Установите для
member
users/{user}
, где{user}
— это человек, для которого вы хотите создать членство, и он может быть:- Идентификатор пользователя в API People. Например, если
resourceName
пользователя API People —people/123456789
, то установитеmembership.member.name
равнымusers/123456789
. - Идентификатор пользователя в API каталога.
- Адрес электронной почты пользователя. Например,
users/222larabrown@gmail.com
илиusers/larabrown@cymbalgroup.com
. Если пользователь использует учётную запись Google или принадлежит к другой организации Google Workspace, необходимо указать его адрес электронной почты.
- Идентификатор пользователя в API People. Например, если
Напишите скрипт, который вызывает 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) # 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()
В коде замените следующее:
SPACE
: имя пространства, которое можно получить из методаspaces.list
в 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
.
Похожие темы
- Получите подробную информацию о членстве пользователя или чат-приложения .
- Перечислите участников в пространстве .
- Обновите членство пользователя в чат-пространстве Google .
- Удалить пользователя или чат-приложение из пространства .