Este guia explica como usar o método create
no recurso membership
da API Google Chat para convidar ou adicionar um usuário, um Grupo do Google
app do Chat para um espaço, também conhecido como criação de
assinatura. Ao criar uma assinatura, se o membro especificado tiver
Se a política de aceitação automática for desativada, eles serão convidados e precisarão aceitar o espaço
antes de entrar. Caso contrário, a criação da assinatura adicionará o membro
diretamente ao espaço especificado.
A
Recurso Membership
representa se um usuário humano ou um app do Google Chat foi convidado.
ausente ou faz parte de um espaço.
Pré-requisitos
Python
- Uma empresa Conta do Google Workspace com acesso a Google Chat.
- Configure o ambiente:
- Crie um projeto do Google Cloud.
- Configure a tela de permissão OAuth.
- Ative e configure a API Google Chat com um nome. o ícone e a descrição do app do Chat.
- Instale o Python biblioteca de cliente das APIs do Google.
-
Criar credenciais de ID do cliente OAuth para um aplicativo para computador. Para executar o exemplo
salve as credenciais como um arquivo JSON chamado
client_secrets.json
em seu no diretório local.
- Escolha um escopo de autorização que ofereça suporte à autenticação de usuários.
Node.js
- Uma empresa Conta do Google Workspace com acesso a Google Chat.
- Configure o ambiente:
- Crie um projeto do Google Cloud.
- Configure a tela de permissão OAuth.
- Ative e configure a API Google Chat com um nome. o ícone e a descrição do app do Chat.
- Instale o Node.js biblioteca de cliente das APIs do Google.
-
Criar credenciais de ID do cliente OAuth para um aplicativo para computador. Para executar o exemplo
salve as credenciais como um arquivo JSON chamado
client_secrets.json
em seu no diretório local.
- Escolha um escopo de autorização que ofereça suporte à autenticação de usuários.
Convidar ou adicionar um usuário a um espaço
Para convidar ou adicionar um usuário a um espaço, transmita o seguinte no seu solicitação:
- Especifique o escopo de autorização
chat.memberships
. - Chame o método
Método
create
no(a) Recursomembership
. - Defina
parent
como o nome do recurso do espaço em que a associação será criada. - Defina
member
comousers/{user}
, em que{user}
é a pessoa que você quer criar associação e for:- O ID do
pessoa
na API People. Por exemplo, se a API People,
pessoa
resourceName
épeople/123456789
, depois definamembership.member.name
parausers/123456789
. - O ID do usuário na API Directory.
- O endereço de e-mail do usuário. Por exemplo,
users/222larabrown@gmail.com
ouusers/larabrown@cymbalgroup.com
. Se o usuário utiliza uma Conta do Google ou pertencer a outra organização do Google Workspace, use as endereço de e-mail.
- O ID do
pessoa
na API People. Por exemplo, se a API People,
pessoa
O exemplo abaixo adiciona um usuário a um espaço:
Python
- Em seu diretório de trabalho, crie um arquivo chamado
chat_membership_user_create.py
: Inclua o seguinte código em
chat_membership_user_create.py
:from google_auth_oauthlib.flow import InstalledAppFlow from googleapiclient.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.memberships"] def main(): ''' Authenticates with Chat API via user credentials, then adds a user to a Chat space by creating a membership. ''' # Authenticate with Google Workspace # and get user authorization. flow = InstalledAppFlow.from_client_secrets_file( 'client_secrets.json', SCOPES) creds = flow.run_local_server() # 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()
No código, substitua o seguinte:
SPACE
: um nome de espaço, que que você pode conseguir na Métodospaces.list
na API Chat ou pelo URL de um espaço.USER
: um ID do usuário.
No diretório de trabalho, crie e execute o exemplo:
python3 chat_membership_user_create.py
Node.js
- No diretório de trabalho, crie um arquivo chamado
add-user-to-space.js
. Inclua o seguinte código em
add-user-to-space.js
:const chat = require('@googleapis/chat'); const {authenticate} = require('@google-cloud/local-auth'); /** * Adds the user to the Chat space. * @return {!Promise<!Object>} */ async function addUserToSpace() { const scopes = [ 'https://www.googleapis.com/auth/chat.memberships', ]; const authClient = await authenticate({scopes, keyfilePath: 'client_secrets.json'}); const chatClient = await chat.chat({version: 'v1', auth: authClient}); return await chatClient.spaces.members.create({ parent: 'spaces/SPACE', requestBody: {member: {name: 'users/USER', type: 'HUMAN'}} }); } addUserToSpace().then(console.log);
No código, substitua o seguinte:
SPACE
: um nome de espaço, que você pode conferir no Métodospaces.list
na API Chat ou pelo URL de um espaço.USER
: um ID do usuário.
No diretório de trabalho, execute o exemplo:
node add-user-to-space.js
A API Chat retorna uma instância do
membership
que detalha a associação de usuário que foi criada.
Convidar ou adicionar um grupo do Google a um espaço
Para convidar ou adicionar um grupo do Google a um espaço, transmita o seguinte no seu solicitação:
- Especifique o escopo de autorização
chat.memberships
. - Chame o método
Método
create
no(a) Recursomembership
. - Defina
parent
como o nome do recurso do espaço em que a associação será criada. - Defina
groupMember
comogroups/{group}
, em que{group}
é o ID do grupo que você para os quais você quer criar a assinatura. O ID do grupo pode ser recuperado com a função API Cloud Identity. Por exemplo, se a API Cloud Identity retorna um grupo com o nomegroups/123456789
e, em seguida, definemembership.groupMember.name
paragroups/123456789
.
Não é possível adicionar os Grupos do Google a um grupo de chat ou a uma mensagem direta, apenas a um um espaço nomeado. O exemplo abaixo adiciona um grupo a um espaço nomeado:
Python
- Em seu diretório de trabalho, crie um arquivo chamado
chat_membership_group_create.py
: Inclua o seguinte código em
chat_membership_group_create.py
:from google_auth_oauthlib.flow import InstalledAppFlow from googleapiclient.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.memberships"] def main(): ''' Authenticates with Chat API via user credentials, then adds a group to a Chat space by creating a membership. ''' # Authenticate with Google Workspace # and get user authorization. flow = InstalledAppFlow.from_client_secrets_file( 'client_secrets.json', SCOPES) creds = flow.run_local_server() # 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 named space in which to create a membership. parent = 'spaces/SPACE', # Specify which group the membership is for. body = { 'groupMember': { 'name':'groups/GROUP', } } ).execute() # Prints details about the created membership. print(result) if __name__ == '__main__': main()
No código, substitua o seguinte:
SPACE
: um nome de espaço, que que você pode conseguir na Métodospaces.list
na API Chat ou pelo URL de um espaço.GROUP
: um ID de grupo.
No diretório de trabalho, crie e execute o exemplo:
python3 chat_membership_group_create.py
Node.js
- No diretório de trabalho, crie um arquivo chamado
add-group-to-space.js
. Inclua o seguinte código em
add-group-to-space.js
:const chat = require('@googleapis/chat'); const {authenticate} = require('@google-cloud/local-auth'); /** * Adds the group to the Chat space. * @return {!Promise<!Object>} */ async function addUserToSpace() { const scopes = [ 'https://www.googleapis.com/auth/chat.memberships', ]; const authClient = await authenticate({scopes, keyfilePath: 'client_secrets.json'}); const chatClient = await chat.chat({version: 'v1', auth: authClient}); return await chatClient.spaces.members.create({ parent: 'spaces/SPACE', requestBody: {groupMember: {name: 'groups/GROUP'}} }); } addUserToSpace().then(console.log);
No código, substitua o seguinte:
SPACE
: um nome de espaço, que você pode conferir no Métodospaces.list
na API Chat ou pelo URL de um espaço.GROUP
: um ID de grupo.
No diretório de trabalho, execute o exemplo:
node add-group-to-space.js
A API Chat retorna uma instância do
membership
que detalha a associação ao grupo que foi criada.
Adicionar um app do Chat a um espaço
Um app do Chat não pode adicionar outro app como participante espaço. Para adicionar um app do Chat a um espaço ou uma mensagem direta entre dois usuários humanos, transmita o seguinte na sua solicitação:
- Especifique o escopo de autorização
chat.memberships.app
. - Chame o método
Método
create
no recursomembership
. - Defina
parent
como o nome do recurso do espaço em que a associação será criada. - Defina
member
comousers/app
. um alias que represente o aplicativo que está chamando o API Chat.
O exemplo abaixo adiciona um app do Chat a um espaço:
Python
- Em seu diretório de trabalho, crie um arquivo chamado
chat_membership_app_create.py
: Inclua o seguinte código em
chat_membership_app_create.py
:from google_auth_oauthlib.flow import InstalledAppFlow from googleapiclient.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.memberships.app"] def main(): ''' Authenticates with Chat API via user credentials, then adds the Chat app to a Chat space. ''' # Authenticate with Google Workspace # and get user authorization. flow = InstalledAppFlow.from_client_secrets_file( 'client_secrets.json', SCOPES) creds = flow.run_local_server() # 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', # Set the Chat app as the entity that gets added to the space. # 'app' is an alias for the Chat app calling the API. body = { 'member': { 'name':'users/app', 'type': 'BOT' } } ).execute() # Prints details about the created membership. print(result) if __name__ == '__main__': main()
No código, substitua
SPACE
por um nome de espaço, que que você pode conseguir na Métodospaces.list
na API Chat ou pelo URL de um espaço.No diretório de trabalho, crie e execute o exemplo:
python3 chat_membership_app_create.py
Node.js
- No diretório de trabalho, crie um arquivo chamado
add-app-to-space.js
. Inclua o seguinte código em
add-app-to-space.js
:const chat = require('@googleapis/chat'); const {authenticate} = require('@google-cloud/local-auth'); /** * Adds the app to the Chat space. * @return {!Promise<!Object>} */ async function addAppToSpace() { const scopes = [ 'https://www.googleapis.com/auth/chat.memberships.app', ]; const authClient = await authenticate({scopes, keyfilePath: 'client_secrets.json'}); const chatClient = await chat.chat({version: 'v1', auth: authClient}); return await chatClient.spaces.members.create({ parent: 'spaces/SPACE', requestBody: {member: {name: 'users/app', type: 'BOT'}} }); } addAppToSpace().then(console.log);
No código, substitua
SPACE
por um nome de espaço, que que você pode conseguir na Métodospaces.list
na API Chat ou pelo URL de um espaço.No diretório de trabalho, execute o exemplo:
node add-app-to-space.js
A API Chat retorna uma instância do
membership
que detalha a assinatura do app que foi criada.
Temas relacionados
- Veja detalhes sobre a assinatura de um usuário ou de um app do Chat.
- Listar os participantes de um espaço
- Atualizar a associação de um usuário em um espaço do Google Chat
- Remover um usuário ou app do Chat de um espaço.