Integração do Dialogflow com o Google Chat

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

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

Você também pode usar o Google Chat para atender às solicitações dos usuários, mas o Dialogflow permite que eles expressem as solicitações em conversas regulares.

Como funciona

Depois de criar um app do Google Chat compatível com Dialogflow, disponibilize-o 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: Ao testar o app, você pode restringir o acesso a ele.

No Google Chat, um usuário pode conversar diretamente com o app ou invocar o app 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 estar hospedado 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 para o Dialogflow que inclui o texto da mensagem em idioma natural.
  5. O Dialogflow interpreta o texto do usuário e envia uma resposta para o 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 card 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 cartões.

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

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

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

crie um agente do Dialogflow

Se você ainda não criou um agente do Dialogflow, mas quer ver 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, configuramos o agente com uma interface do Google Chat.

Configurar o Google Chat

Para configurar o 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á ativo e disponível para as pessoas selecionadas.

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

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. 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 delas.
    • Domínio do Google Workspace empresarial ou público geral. Publique o app.
  9. Clique em Salvar. O app Google Chat já está ativo e disponível para as pessoas que você selecionado.

Teste

Antes de testar o app do Chat, inicie-o conforme descrito em Configurar o Google Chat.

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

Converse 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 como Teste.
  4. Clique em Criar.
  5. No campo de entrada do chat, digite @ e selecione o app para preencher automaticamente o nome.
  6. Após preencher automaticamente o nome do app, insira uma frase em linguagem natural para testá-lo.

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 instalassem os apps do Chat. Em seguida, inicie o app do Chat, conforme 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 deixá-lo em negrito ou itálico, colocando-o em determinados símbolos (marcados claros).

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, 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

As respostas em ficha de informações são enviadas ao Google Chat como mensagens em 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.

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 destas opções:

Parar 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 em 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: