Este guia explica como usar o método get
no recurso Media
da
API Google Chat para receber metadados sobre um anexo de mensagem. A resposta é uma
instância do
Recurso Attachment
.
Quando o usuário envia uma mensagem para seu app, o Google Chat envia uma
Evento de interação MESSAGE
.
O evento de interação recebido pelo seu aplicativo inclui um corpo de solicitação, que é o
Payload JSON que representa o evento de interação, incluindo qualquer anexo. A
os dados no anexo serão diferentes se ele for
conteúdo enviado por upload (arquivo local) ou armazenado no Drive. A
Recurso Media
representa um arquivo enviado para o Google Chat, como imagens, vídeos e documentos.
A
Recurso Attachment
representa uma instância de mídia (um arquivo) anexada a uma mensagem. O Attachment
recurso inclui os metadados sobre o anexo, como
onde eles serão salvos.
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.
-
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.
Receber um anexo de mensagem
Para receber metadados de maneira assíncrona sobre um anexo de mensagem no Google Chat, transmita o seguinte na sua solicitação:
- Especifique o escopo de autorização
chat.bot
. - Chame o método
Método
get
no(a) RecursoAttachment
, - Transmita o
name
do anexo da mensagem.
Veja como conseguir metadados sobre um anexo de mensagem:
Python
- Em seu diretório de trabalho, crie um arquivo chamado
chat_get_message_attachment.py
: Inclua o seguinte código em
chat_get_message_attachment.py
:from google.oauth2 import service_account from apiclient.discovery import build # Specify required scopes. SCOPES = ['https://www.googleapis.com/auth/chat.bot'] # Specify service account details. CREDENTIALS = ( service_account.Credentials.from_service_account_file('credentials.json') .with_scopes(SCOPES) ) # Build the URI and authenticate with the service account. chat = build('chat', 'v1', credentials=CREDENTIALS) # Get a Chat message. result = chat.spaces().messages().attachments().get( # The message to get. # # Replace SPACE with a space name. # Obtain the space name from the spaces resource of Chat API, # or from a space's URL. # # Replace MESSAGE with a message name. # Obtain the message name from the response body returned # after creating a message asynchronously with Chat REST API. name='spaces/SPACE/messages/MESSAGE/attachments/ATTACHMENT' ).execute() # Print Chat API's response in your command line interface. print(result)
No código, substitua
spaces/SPACE/messages/MESSAGE/attachments/ATTACHMENT
com o nome do anexo da mensagem.No diretório de trabalho, crie e execute o exemplo:
python3 chat_get_message_attachment.py
A API Chat retorna uma instância do
Attachment
que detalha os metadados sobre o anexo de mensagem especificado.