Neste guia, explicamos como usar o método
update
no recurso Message da API Google Chat para atualizar uma mensagem de texto ou de card
em um espaço. Atualize uma mensagem para mudar os atributos dela, como o que
ela diz ou o conteúdo de um card. Também é possível anexar uma mensagem de texto a uma
mensagem de card ou anexar um card a uma mensagem de texto.
Na API Chat, uma mensagem de chat é representada pelo
recurso Message.
Enquanto os usuários do Chat só podem enviar mensagens que contêm texto,
os apps do Chat podem usar muitos outros recursos de mensagens, incluindo
a exibição de interfaces do usuário estáticas ou interativas, a coleta de informações dos
usuários e o envio de mensagens particulares. Para saber mais sobre os recursos de mensagens
disponíveis para a API Chat, consulte a
visão geral das mensagens do Google Chat.
Pré-requisitos
Node.js
- Uma conta Business ou Enterprise do Google Workspace com acesso ao 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, ícone e descrição para seu app do Chat.
- Instale a biblioteca de cliente do Cloud para Node.js.
- Crie credenciais de acesso com base em como você quer se autenticar na solicitação da API Google Chat:
- Para se autenticar como usuário do Chat,
crie credenciais de ID do cliente
OAuth e salve-as como um arquivo JSON chamado
credentials.jsonno diretório local. - Para autenticar como o app do Chat,
crie credenciais de conta de
serviço e salve-as como um arquivo JSON chamado
credentials.json.
- Para se autenticar como usuário do Chat,
crie credenciais de ID do cliente
OAuth e salve-as como um arquivo JSON chamado
- Escolha um escopo de autorização com base em como você quer se autenticar: como usuário ou como app do Chat.
Python
- Uma conta Business ou Enterprise do Google Workspace com acesso ao 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, ícone e descrição para seu app do Chat.
- Instale a biblioteca de cliente do Cloud para Python.
- Crie credenciais de acesso com base em como você quer se autenticar na solicitação da API Google Chat:
- Para se autenticar como usuário do Chat,
crie credenciais de ID do cliente
OAuth e salve-as como um arquivo JSON chamado
credentials.jsonno diretório local. - Para autenticar como o app do Chat,
crie credenciais de conta de
serviço e salve-as como um arquivo JSON chamado
credentials.json.
- Para se autenticar como usuário do Chat,
crie credenciais de ID do cliente
OAuth e salve-as como um arquivo JSON chamado
- Escolha um escopo de autorização com base em como você quer se autenticar: como usuário ou como app do Chat.
Java
- Uma conta Business ou Enterprise do Google Workspace com acesso ao 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, ícone e descrição para seu app do Chat.
- Instale a biblioteca de cliente do Cloud para Java.
- Crie credenciais de acesso com base em como você quer se autenticar na solicitação da API Google Chat:
- Para se autenticar como usuário do Chat,
crie credenciais de ID do cliente
OAuth e salve-as como um arquivo JSON chamado
credentials.jsonno diretório local. - Para autenticar como o app do Chat,
crie credenciais de conta de
serviço e salve-as como um arquivo JSON chamado
credentials.json.
- Para se autenticar como usuário do Chat,
crie credenciais de ID do cliente
OAuth e salve-as como um arquivo JSON chamado
- Escolha um escopo de autorização com base em como você quer se autenticar: como usuário ou como app do Chat.
Apps Script
- Uma conta Business ou Enterprise do Google Workspace com acesso ao 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, ícone e descrição para seu app do Chat.
- Crie um projeto independente do Apps Script e ative o Serviço avançado de chat.
- Neste guia, use a autenticação de usuário ou de app. Para autenticar como o app do Chat, crie credenciais da conta de serviço. Para ver as etapas, consulte Autenticar e autorizar como um app do Google Chat.
- Escolha um escopo de autorização com base em como você quer se autenticar: como usuário ou como app do Chat.
Atualizar uma mensagem em nome de um usuário
Com a autenticação do usuário, apenas o texto de uma mensagem pode ser atualizado.
Para atualizar uma mensagem com autenticação do usuário, transmita o seguinte na solicitação:
- Especifique o escopo de autorização
chat.messages. - Chame o método
UpdateMessage. - Transmita
messagecomo uma instância deMessagecom o seguinte:- O campo
namedefinido como a mensagem a ser atualizada, que inclui um ID de espaço e um ID de mensagem. - O campo
textdefinido com o novo texto.
- O campo
- Transmita
updateMaskcom o valortext.
Se a mensagem atualizada for uma mensagem de card, o texto será anexado aos cards (que continuam sendo exibidos).
Veja como atualizar uma mensagem ou anexar uma mensagem de texto a uma mensagem de cartão com a autenticação do usuário:
Node.js
Python
Java
Apps Script
Para executar este exemplo, substitua o seguinte:
SPACE_NAME: o ID donamedo espaço. Para conseguir o ID, chame o métodoListSpacesou use o URL do espaço.MESSAGE_NAME: o ID donameda mensagem. É possível conseguir o ID no corpo da resposta retornado após criar uma mensagem de forma assíncrona com a API Chat ou com o nome personalizado atribuído à mensagem na criação.
A API Chat retorna uma instância de
Message
que detalha a mensagem atualizada.
Atualizar uma mensagem como o app do Chat
Com a autenticação de apps, o texto e os cards de uma mensagem podem ser atualizados.
Para atualizar uma mensagem com autenticação de app, transmita o seguinte na solicitação:
- Especifique o escopo de autorização
chat.bot. - Chame o método
UpdateMessage. - Transmita
messagecomo uma instância deMessagecom o seguinte:- O campo
namedefinido como a mensagem a ser atualizada, que inclui um ID de espaço e um ID de mensagem. - O campo
textdefinido com o novo texto, se precisar ser atualizado. - O campo
cardsV2definido com os novos cartões, se eles precisarem ser atualizados.
- O campo
- Transmita
updateMaskcom a lista de campos para atualizações, comotextecardsV2.
Se a mensagem atualizada for uma mensagem de card e o texto for atualizado, o texto atualizado será anexado aos cards (que continuam sendo exibidos). Se a mensagem atualizada for uma mensagem de texto e os cards forem atualizados, os cards atualizados serão anexados ao texto, que continua aparecendo.
Veja como atualizar o texto e os cards de uma mensagem com a autenticação de app:
Node.js
Python
Java
Apps Script
Para executar este exemplo, substitua o seguinte:
SPACE_NAME: o ID donamedo espaço. Para conseguir o ID, chame o métodoListSpacesou use o URL do espaço.MESSAGE_NAME: o ID donameda mensagem. É possível conseguir o ID no corpo da resposta retornado após criar uma mensagem de forma assíncrona com a API Chat ou com o nome personalizado atribuído à mensagem na criação.
A API Chat retorna uma instância de
Message
que detalha a mensagem atualizada.
Atualizar cards de forma assíncrona
É possível atualizar de forma assíncrona os cards em uma mensagem usando o método
replaceCards. Isso é útil para atualizar o conteúdo de um card sem interação do usuário, como atualizar uma prévia de link ou o status de uma tarefa.
Esse método funciona para mensagens criadas pelo app, incluindo aquelas criadas em
nome de um usuário.
Para mais detalhes, consulte Criar e atualizar cards interativos.