В этом руководстве объясняется, как использовать метод 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, задав для поляgroupMembernamegroups/{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на имя ресурса пространства, в котором необходимо создать членство. - Установите для
memberusers/{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 .
- Удалить пользователя или чат-приложение из пространства .