Integração do Dialogflow com o Google Chat

Ao integrar o Dialogflow ao Google Chat, você aproveita os recursos nos dois serviços:

  • Google Chat. Oferece uma plataforma de mensagens com uma interface de usuário front-end para conversas individuais e espaços do Chat. Com o Google Chat, você pode melhorar as interfaces do usuário criando cards que incorporam ícones, imagens, botões, campos de entrada de texto ou apps como o Google Maps.
  • Dialogflow. Fornece uma plataforma de processamento de linguagem natural para como conversas automatizadas e respostas dinâmicas. Com o Dialogflow, é possível interpretar e atender às intenções do usuário, por exemplo, para agendar horários ou processar compras.

Embora também seja possível usar o Google Chat para atender às solicitações dos usuários, o Dialogflow permite os usuários expressam seus pedidos por meio de conversas regulares.

Como funciona

Depois de criar um app do Google Chat com o Dialogflow, você pode disponibilizar o app para:

  • Público em geral. Os usuários licenciados do Google Workspace podem fazer o download do seu app pelo Google Workspace Marketplace.
  • Domínio do Google Workspace. Um administrador do Google Workspace pode especificar quais apps os usuários podem adicionar ao Google Chat.
  • Testadores de apps. É possível restringir o acesso ao app durante o teste.

No Google Chat, um usuário pode conversar diretamente com seu app ou invocar o app de dentro de um espaço. O seguinte acontece:

  1. Um usuário envia uma mensagem para um app do Chat.
  2. O Google Chat envia uma solicitação JSON para o app Chat, que pode ser hospedado no Cloud Functions.
  3. O app do Chat recebe e analisa a solicitação JSON. Durante essa análise, o app Chat invoca o Dialogflow.
  4. O app de chat envia uma solicitação para o Dialogflow que inclui o texto da mensagem em linguagem natural do usuário.
  5. O Dialogflow interpreta o texto do usuário e envia uma resposta ao app do Chat.
  6. O app de chat analisa a resposta do Dialogflow e envia uma resposta JSON para o Google Chat.
  7. O Google Chat recebe a resposta JSON do app Chat e renderiza uma resposta na forma de uma mensagem de texto, de card ou de caixa de diálogo na interface.
  8. O Google Chat compartilha esta resposta no estado em que se encontra ou apresenta uma resposta detalhada usando um UI baseada em cartão.

Nesta página, descrevemos como integrar o Dialogflow ao Google Chat e configurar respostas avançadas em chats.

Limitações

Com as integrações do Google Chat, um agente do Dialogflow pode usar apenas o idioma padrão do agente.

Antes de começar

Apenas usuários licenciados do Google Workspace podem usar os apps do Google Chat. Seu O administrador do Google Workspace precisa fazer o seguinte:

Criar um agente do Dialogflow

Se você ainda não criou um agente do Dialogflow, mas quer saber como ele interage com o Google Chat, siga este guia de início rápido para criar um agente simples. No entanto, não exclua o agente. Em seguida, vamos configurar o agente com uma interface do Google Chat.

Configurar o Google Chat

Para configurar seu agente do Dialogflow com o Google Chat, use uma destas opções:

Configurar o Google Chat usando o console do Dialogflow

Para integrar o Google Chat usando o console do Dialogflow, siga estas etapas:

  1. Acesse o Console do Dialogflow ES.
  2. No menu à esquerda, selecione um projeto do Dialogflow.
  3. Clique em Integrations.
  4. Clique em Google Chat. Se o Google Chat não for uma das opções, consulte Resolver problemas.
  5. Selecione quem pode acessar o app.
  6. [Opcional] Selecione um ambiente para executar o agente.
  7. Clique em Iniciar.

O app Google Chat está ativo e disponível para as pessoas que você selecionou.

Para configurar o app, clique em Google Chat novamente e em CONFIGURAR DETALHES DO BOT. A página do console do Google Cloud será exibida para a API Google Chat, onde você pode configurar parâmetros de aplicativo como o avatar do app.

Configurar o Google Chat usando o console do Google Cloud

Para integrar o Google Chat usando o console do Google Cloud, siga estas etapas:

  1. Selecione o projeto do Dialogflow.

    Acessar o seletor de projetos

  2. Clique em .

  3. Clique em APIs e Serviços e em Biblioteca.

  4. Pesquise e clique em API Google Chat.

  5. Clique em Ativar.

  6. Clique na guia Configuração.

  7. Configure o app.

  8. No painel Visibilidade, selecione quem pode acessar o app:

    • Testadores de apps Selecione Disponibilizar esse chat para pessoas específicas e digite os endereços de e-mail delas.
    • Domínio público geral ou empresarial do Google Workspace. Publicar o app.
  9. Clique em Salvar. O app Google Chat está ativo e disponível para as pessoas que você selecionou.

Teste

Antes de testar o app do Chat, verifique se ele foi iniciado, conforme descrito em Configurar o Google Chat.

É possível testar o app usando um destes métodos:

Conversar diretamente com o app

  1. Abra o Google Chat.
  2. No painel Chat, clique em + e selecione Encontrar apps.
  3. Pesquise e selecione seu app. Se o Google Chat não listar seu app, consulte Resolver problemas.
  4. Clique em Chat.
  5. No campo de entrada do chat, digite uma frase em linguagem natural para testar o app.

Invocar o app em um espaço

  1. Abra o Google Chat.
  2. No painel Espaços, clique em + e selecione Criar um espaço.
  3. Digite o nome do espaço Teste.
  4. Clique em Criar.
  5. No campo de entrada do chat, digite @ e selecione seu app para preencher automaticamente o nome.
  6. Após o nome preenchido automaticamente, insira uma frase de linguagem natural para testar o app.

Resolver problemas

Erro Solução
A página Console do Dialogflow ES > Integrações não mostra o Google Chat como uma opção. Tente atualizar a página: no menu à esquerda, clique em Intents e depois em Integrations.
O Google Chat não lista seu app como disponível. Verifique se o administrador do Google Workspace adicionou uma conta do Google Workspace para você e permitiu que os usuários instalassem apps do Chat. Em seguida, inicie o app do Chat, como descrito em Configurar o Google Chat.

Mensagens de resposta avançadas

Essa integração traduz algumas mensagens de resposta ricas para os formatos de mensagem do Google Chat.

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 é 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, o que pode ser interessante ao criar agentes para várias integrações.

"fulfillmentMessages": [
{
   "text": {
   "text": [
        "This is a test."
   ]
},
  "platform": "GOOGLE_HANGOUTS"
},

Cartões

Card de respostas são enviados para o Google Chat como Mensagens do card.

Imagens

Respostas de imagem são enviadas para o Google Chat como Widgets de imagem do Google Chat.

Payload personalizado

Para enviar outros tipos de mensagens do Google Chat, use um payload personalizado.

Com o payload personalizado do Google Chat, você pode 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 formato do Google Chat 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 usando o formato Cards v1:

{
  "hangouts": {
    "header": {
      "title": "Pizza Delivery Customer Support",
      "subtitle": "pizzadelivery@example.com",
      "imageUrl": "https://goo.gl/aeDtrS"
    },
    "sections": [{
      "widgets": [{
        "keyValue": {
          "icon": "TRAIN",
          "topLabel": "Order No.",
          "content": "12345"
        }
      },
      {
        "keyValue": {
          "topLabel": "Status",
          "content": "In Delivery"
        }
      }]
    },
    {
      "header": "Location",
      "widgets": [{
        "image": {
          "imageUrl": "https://dummyimage.com/600x400/000/fff"
        }
      }]
    },
    {
      "header": "Buttons - I could leave the header out",
      "widgets": [{
        "buttons": [{
          "textButton": {
            "text": "OPEN ORDER",
            "onClick": {
              "openLink": {
                "url": "https://example.com/orders/..."
              }
            }
          }
        }]
      }]
    }]
  }
}

Parar o app Chat

Para impedir que o app Google Chat fique disponível, use uma destas opções:

Parar o app Chat usando o console do Dialogflow

  1. Acesse o Console do Dialogflow ES.
  2. No menu à esquerda, selecione um projeto do Dialogflow.
  3. Clique em Integrations.
  4. Clique em Google Chat. Se o Google Chat não for uma das opções, consulte Resolver problemas.
  5. Clique em Interromper.

Parar o app do Chat usando o console do Google Cloud

  1. Selecione o projeto do Dialogflow no console do Google Cloud.

    Acessar o seletor de projetos

  2. Clique em .

  3. Clique em APIs e Serviços e em Biblioteca.

  4. Pesquise e clique em API Google Chat.

  5. Clique em Gerenciar.

  6. Clique na guia Configuração.

  7. No campo Status do app, selecione DESATIVADO.

Mais informações

Para mais informações sobre como usar o Google Chat, consulte: