Nesta página, descrevemos como criar mensagens que aparecem inline como se tivessem sido digitadas por um usuário. Use mensagens de texto para apresentar informações simples aos usuários. Para mais informações sobre como criar mensagens mais complexas que geram cards no chat, consulte Enviar uma mensagem de card.
Pré-requisitos
Para executar os exemplos deste guia, você precisa dos seguintes pré-requisitos:
Python
- Python 3.6 ou superior
- A ferramenta de gerenciamento de pacotes PIP
As bibliotecas de cliente do Google para Python. Instale as bibliotecas de cliente:
pip3 install --upgrade google-api-python-client google-auth-httplib2 google-auth-oauthlib oauth2client
Um app de chat publicado com associação em um espaço do Chat:
- Para criar e publicar um app de chat, consulte Criar um app do Google Chat com o Cloud Functions.
- Para adicionar um app de chat a um espaço do Chat, consulte Adicionar apps a espaços ou conversas no Google Chat.
Autorização configurada para o app de chat:
- A autenticação da conta de serviço é totalmente suportada. Para configurar uma conta de serviço, consulte Autenticar e autorizar como uma conta de serviço.
- Programa de prévia para desenvolvedores do Google Workspace, que concede acesso antecipado a determinados recursos. Para configurar a autenticação de usuários, consulte Autenticar e autorizar usuários (prévia para desenvolvedores). Prévia para desenvolvedores:a autenticação do usuário faz parte do
Anatomia de uma mensagem de texto
Todas as mensagens no Google Chat são representadas como um objeto JSON. O exemplo a seguir é uma mensagem básica que especifica um corpo de texto simples simples:
{
"text": "Your pizza delivery is here!"
}
Se for publicado no Google Chat, este exemplo será renderizado do seguinte modo:
Enviar uma mensagem de texto assíncrona
Veja como criar uma mensagem text:
Python
- No diretório de trabalho, crie um arquivo chamado
chat_create_text_message.py
. Inclua o seguinte código em
chat_create_text_message.py
:from httplib2 import Http from oauth2client.service_account import ServiceAccountCredentials from apiclient.discovery import build # Specify required scopes. SCOPES = ['https://www.googleapis.com/auth/chat.bot'] # Specify service account details. CREDENTIALS = ServiceAccountCredentials.from_json_keyfile_name( 'service_account.json', SCOPES) # Build the URI and authenticate with the service account. chat = build('chat', 'v1', http=CREDENTIALS.authorize(Http())) # Create a Chat message. result = chat.spaces().messages().create( # The space to create the message in. # # Replace SPACE with a space name. # Obtain the space name from the spaces resource of Chat API, # or from a space's URL. parent='spaces/SPACE', # The message to create. body={'text': 'Hello, world!'} ).execute() print(result)
No código, substitua
SPACE
por um nome de espaço, que pode ser acessado no métodospaces.list()
na API Chat ou no URL de um espaço.No diretório de trabalho, crie e execute o exemplo:
python3 chat_create_text_message.py
Formatar textos em mensagens
O Google Chat permite adicionar formatação básica ao texto da mensagem, incluindo negrito, itálico e tachado. Para formatar o texto, envolva-o com os seguintes símbolos:
Formato | Símbolo | Exemplo | Resultado |
---|---|---|---|
Negrito | * | *Olá* | Olá |
Itálico | _ (sublinhado) | _Olá_ | Olá |
Tachado | ~ | olá | |
fonte monoespaçada | ` (acento grave) | olá | hello |
Bloco monoespacial | ``` (três aspas) | ``` Olá Mundo ``` |
Hello |
Por exemplo, considere o JSON a seguir:
{
"text": "Your pizza delivery *has arrived*!\nThank you for using _Pizza Bot!_"
}
Isso insere uma mensagem como esta no espaço do Chat:
Essa sintaxe de marcação de texto é a mesma que se aplica às mensagens digitadas pelos usuários. Por isso, ela é diferente da formatação baseada em HTML aplicada a texto em cards.
Incluir links no texto da mensagem
Se você incluir um URL de link simples no texto da mensagem, como
http://example.com/
, o Google Chat o usará como texto do link e
criará um hiperlink para esse URL automaticamente.
Para fornecer um texto alternativo, use esta sintaxe:
Sintaxe | Renderização |
---|---|
<https://example.com/|LINK_TEXT> |
LINK_TEXT |
O texto da barra vertical e do link é opcional, assim <https://example.com/>
e
https://example.com/
são equivalentes.
Mensagens que mencionam usuários específicos
Um app de chat pode usar uma @menção para um usuário em uma mensagem, basta fornecer o USER_ID
na sintaxe a seguir. Para determinar o USER_ID de um usuário, examine o campo
sender
da mensagem recebida do usuário.
<users/USER_ID>
Essa string é substituída por uma @menção do usuário especificado. Por exemplo, considere o JSON a seguir:
{
"text": "Hey <users/123456789012345678901>! Thank you for using _Pizza bot!_"
}
Isso gera um resultado como este:
Mensagens que mencionam @todos
Use o ID do usuário all
para mencionar todos os usuários humanos em um espaço. Exemplo:
{
"text": "Important message for <users/all>: Code freeze starts at midnight tonight!"
}