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 do usuário front-end para conversas individuais e espaços de 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 (em inglês). Oferece uma plataforma de processamento de linguagem natural para conversas automatizadas e respostas dinâmicas. Com o Dialogflow, é possível interpretar e atender às intents dos usuários. 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 que eles expressem as solicitações por meio de conversas regulares.

Como funciona

Depois de criar um app do Google Chat ativado para o Dialogflow, é possível disponibilizá-lo para:

  • Público em geral. Os usuários licenciados do Google Workspace podem fazer o download do seu app no 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 ter uma conversa direta com seu app ou invocá-lo em 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 do Chat, que pode ser hospedada no Cloud Functions.
  3. O app do Chat recebe e analisa a solicitação JSON. Durante essa análise, o app do Chat invoca o Dialogflow.
  4. O app do Chat envia uma solicitação ao Dialogflow que inclui o texto da mensagem em linguagem natural.
  5. O Dialogflow interpreta o texto do usuário e envia uma resposta ao app do Chat.
  6. O app do Chat analisa a resposta do Dialogflow e envia uma resposta JSON ao Google Chat.
  7. O Google Chat recebe a resposta JSON do app do Chat e renderiza uma resposta na forma de uma mensagem de texto, de cartão ou de caixa de diálogo na UI.
  8. O Google Chat compartilha essa resposta no estado em que se encontra ou apresenta uma resposta avançada usando uma UI baseada em cards.

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 dele.

Antes de começar

Apenas usuários licenciados do Google Workspace podem usar os apps do Google Chat. Seu 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 das seguintes 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 já está disponível e disponível para as pessoas que você selecionou.

Para configurar o app, clique em Google Chat novamente e em CONFIGURAR DETALHES DO BOT. Isso exibe a página do console do Google Cloud para a API Google Chat, em que é possível 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 na API Google Chat.

  5. Selecione 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 este chat para pessoas específicas e digite os endereços de e-mail.
    • Domínio público geral ou empresarial do Google Workspace. Publique o app.
  9. Clique em Salvar. Seu app Google Chat já está disponível e disponível para as pessoas selecionadas.

Teste

Antes de testar o app do Chat, verifique se você o iniciou 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 o app. Se ele não aparecer no Google Chat, consulte Resolver problemas.
  4. Clique em Chat.
  5. No campo de entrada do chat, insira 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 exibe 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 instalem 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, é possível deixar o texto em negrito ou itálico colocando-o em certos símbolos (luz de marcação).

A resposta da mensagem de texto é visualmente igual à resposta de texto padrão do 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

Os cards de resposta são enviados ao Google Chat como mensagens do card.

Imagens

As 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.

Veja 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 do Chat

Para interromper a disponibilidade do app Google Chat, use uma das seguintes opções:

Pare o app do 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 na API Google Chat.

  5. Selecione 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: