Esta página explica como criar um app do Google Chat como um complemento do Google Workspace que usa o Dialogflow ES para entender e responder à linguagem natural. Você também pode usar o Dialogflow CX, que tem uma integração direta com o Google Chat, para criar um app do Google Chat com o Dialogflow CX seguindo o guia do Google Chat com o Dialogflow CX.
Objetivos
- Prepare o ambiente.
- Crie e implante um agente do Dialogflow ES.
- Crie e implante um app do Chat com tecnologia do agente do Dialogflow ES.
- Teste o app do Chat.
Pré-requisitos
- Uma conta do Google Workspace Business ou Enterprise com acesso ao Google Chat.
- Ter um projeto do Google Cloud com o faturamento ativado. Para verificar se um projeto atual tem o faturamento ativado, consulte Verificar o status de faturamento dos projetos. Para criar um projeto e configurar o faturamento, consulte Criar um projeto do Google Cloud.
Arquitetura
O diagrama a seguir mostra a arquitetura de um app do Chat criado com o Dialogflow:
No diagrama anterior, um usuário que interage com um app do Chat do Dialogflow tem o seguinte fluxo de informações:
- Um usuário envia uma mensagem no Chat para um app do Chat, em uma mensagem direta ou em um espaço do Chat.
- Um agente virtual do Dialogflow, que reside em , recebe e processa a mensagem para produzir uma resposta.
- Opcionalmente, usando um webhook do Dialogflow, o agente do Dialogflow pode interagir com serviços externos de terceiros, como um sistema de gerenciamento de projetos ou uma ferramenta de emissão de tickets.
- O agente do Dialogflow envia uma resposta de volta ao serviço do app do Chat no Chat.
- A resposta é entregue ao espaço do Chat.
Configure o ambiente
Antes de usar as APIs do Google, você precisa ativá-las em um projeto na nuvem do Google Cloud. É possível ativar uma ou mais APIs em um único projeto do Google Cloud.No Console de APIs do Google, ative a API Google Chat e a API Dialogflow.
Confirme se você está ativando as APIs no projeto na nuvem correto e clique em Próxima.
Confirme se você está ativando as APIs corretas e clique em Ativar.
Criar um agente do Dialogflow ES
Se você não tiver um agente do Dialogflow ES:
- Acesse o Console do Dialogflow ES.
- Clique em Create Agent.
- Dê um nome a ele, selecione um idioma padrão e um fuso horário.
- Associe-o ao seu projeto na nuvem.
- Clique em Criar.
- Crie intents e entidades conforme necessário para o fluxo de conversação do app do Chat. Você pode começar com um intent de saudação.
- Anote o ID do projeto.
Para um guia detalhado, consulte Criar um agente.
Criar um app do Chat e conectá-lo ao agente do Dialogflow
Depois de criar um agente do Dialogflow ES, siga estas etapas para transformá-lo em um app do Chat:
No Console de APIs do Google, acesse a API Google Chat. Pesquise "API Google Chat" e clique em API Google Chat e em Gerenciar.
Clique em Configuração e configure o app do Chat:
- Em Nome do app, insira
Dialogflow App. - No URL do avatar, insira
https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png. - Em Descrição, insira
Responds to real human conversation. - Em Funcionalidade, selecione Participar de espaços e conversas em grupo.
- Em Configurações de conexão, selecione Dialogflow.
- Em Configurações do Dialogflow, selecione Dialogflow ES.
- Disponibilize o app de chat para pessoas e grupos específicos no seu domínio e insira seu endereço de e-mail.
- Em Registros, selecione Registrar erros no Logging.
- Em Nome do app, insira
Clique em Salvar.
O app do Chat está pronto para receber e responder a mensagens no Chat.
Teste o app do Chat
Teste o app do Chat do Dialogflow ES enviando uma mensagem no Google Chat.
Abra o Google Chat usando a conta do Google Workspace que você forneceu ao se adicionar como um testador confiável.
- Clique em Novo chat.
- No campo Adicionar uma ou mais pessoas, digite o nome do app do Chat.
Selecione o app do Chat nos resultados. Uma mensagem direta será aberta.
Na nova mensagem direta com o app, digite
Helloe pressioneenter.O app do Chat do Dialogflow responde com uma mensagem de saudação.
Respostas de texto
As respostas de texto são enviadas ao Google Chat como mensagens de texto. Com essa formatação, você pode deixar o texto em negrito ou em itálico ao encapsular o texto em determinados símbolos (Markdown leve).
A resposta da mensagem de texto parece visualmente igual à resposta de texto padrão no console do Dialogflow. No entanto, a resposta bruta da API será um pouco diferente. Ele também define a configuração da plataforma como GOOGLE_HANGOUTS, que pode ser interessante ao criar agentes para várias integrações.
"fulfillmentMessages": [
{
"text": {
"text": [
"This is a test."
]
},
"platform": "GOOGLE_HANGOUTS"
},
Cartões
As respostas de ficha de informações são enviadas ao Google Chat como mensagens de ficha de informações.
Imagens
As respostas de imagem são enviadas ao Google Chat como widgets de imagem do Google Chat.
Payload personalizado
Para enviar outros tipos de mensagens do Google Chat, use um payload personalizado.
O payload personalizado do Google Chat permite criar cards mais avançados. Um card pode ter uma ou várias seções. Cada seção pode ter um cabeçalho. Confira o guia de referência de cards de mensagens de extensão do complemento do Google Workspace para ver algumas das combinações que você pode criar com isso. No entanto, se você usa payloads personalizados, será necessário fornecer o formato JSON.
Confira um exemplo de payload personalizado para criar uma mensagem com um card:
{ "hangouts": { "hostAppDataAction": { "chatDataAction": { "createMessageAction": { "message": { "cardsV2": [{ "cardId": "pizza", "card": { "header": { "title": "Pizza Delivery Customer Support", "subtitle": "pizzadelivery@example.com", "imageUrl": "https://goo.gl/aeDtrS" }, "sections": [{ "widgets": [{ "textParagraph": { "text": " Your pizza is here!" }}]}] } }]}} }}}}
Limites e considerações
- Ao usar complementos do Google Workspace com o Dialogflow, os objetos de evento do Chat
têm as seguintes limitações e considerações:
- Eventos da página inicial do app:o suporte para eventos
APP_HOMEainda não está disponível. - Entrada de consulta do Dialogflow:o texto enviado como entrada de consulta para o agente do Dialogflow depende do tipo de evento:
MESSAGE:o valor do campoargumentTextda mensagem do Chat.APP_COMMAND: a string"APP_COMMAND_PAYLOAD".ADDED_TO_SPACE: um evento de boas-vindas padrão é enviado.REMOVED_FROM_SPACE:The string"REMOVED_FROM_SPACE_PAYLOAD".CARD_CLICKED: a string"BUTTON_CLICKED_PAYLOAD".WIDGET_UPDATED: a string"WIDGET_UPDATED_PAYLOAD"(usada para preenchimento automático).
- Payload de evento completo:o payload JSON completo do evento de interação do Chat é enviado ao Dialogflow no campo
WebhookRequest.payload. Você pode acessar isso no webhook do Dialogflow. Para mais informações, consulte a documentação da solicitação de webhook do Dialogflow ES.
- Eventos da página inicial do app:o suporte para eventos
- Considerações para responder a
comandos e
receber dados de cards ou caixas de diálogo:
- Se o agente do Dialogflow precisar processar o payload JSON do evento de interação do Chat, ele poderá fazer isso usando um webhook do Dialogflow para inspecionar o payload personalizado no parâmetro de consulta.
- Para mostrar uma caixa de diálogo do
agente do Dialogflow, responda com um único payload JSON personalizado que
contenha um
RenderActionsobjeto com a navegaçãopushCard. - Para processar dados inseridos em cards, use um webhook do Dialogflow e responda com um único payload JSON personalizado que contenha a ação.
- As prévias de links não são compatíveis.
- Se o agente do Dialogflow responder com apenas uma mensagem, ela será enviada ao Google Chat de forma síncrona. Se o agente do Dialogflow responder
com várias mensagens, todas elas serão enviadas ao Chat
de forma assíncrona chamando o
createmétodo no recursospaces.messagesna API Chat uma vez para cada mensagem. - Ao usar a integração do Dialogflow ES com o Chat, o agente do Dialogflow e o app do Chat precisam ser configurados no mesmo projeto na nuvem do Google.
Resolver problemas
Para depurar o app do Chat, comece revisando os registros de erros. Como esse app usa o Dialogflow, você tem vários recursos de registro e solução de problemas disponíveis:
Registros de complementos do Google Workspace:consulte os registros para informações detalhadas sobre o comportamento do complemento, incluindo as interações com o Chat. Consulte Consultar registros de complementos do Google Workspace.
Erros do app Google Chat:para mensagens e correções de erros gerais do app do Chat, consulte Resolver problemas e corrigir erros do app do Chat.
Histórico de conversas do Dialogflow ES Histórico | Dialogflow ES
Solução de problemas gerais do Dialogflow: Solução de problemas | Dialogflow
Limpar
Para evitar cobranças na sua conta pelos recursos usados neste tutorial, recomendamos que você exclua o projeto na nuvem.
- No Console de APIs do Google, acesse a página Gerenciar recursos. Clique em Menu > IAM e administrador > Gerenciar recursos.
- Na lista de projetos, selecione o projeto que você quer excluir e clique em Excluir .
- Na caixa de diálogo, digite o ID do projeto e clique em desligar para excluir o projeto.
Temas relacionados
- O Dialogflow CX é outra maneira de usar o Dialogflow com um app do Chat.