Integração do Google Chat do Dialogflow

Ao integrar o Dialogflow com o Google Chat, tira partido das funcionalidades em ambos os serviços:

  • Google Chat. Oferece uma plataforma de mensagens com uma interface do utilizador de front-end para conversas individuais e espaços de chat. Através do Google Chat, pode melhorar as interfaces do utilizador criando cartões que incorporam ícones, imagens, botões, campos de introdução de texto ou apps como o Google Maps.
  • Dialogflow. Oferece uma plataforma de compreensão da linguagem natural para conversas automatizadas e respostas dinâmicas. Através do Dialogflow, pode interpretar e satisfazer as intenções dos utilizadores, por exemplo, para agendar compromissos ou processar compras.

Embora também possa usar o Google Chat para satisfazer os pedidos dos utilizadores, o Dialogflow permite que os utilizadores expressem os seus pedidos através de conversas normais.

Como funciona

Depois de criar uma app Google Chat com o Dialogflow, pode disponibilizá-la às seguintes pessoas:

  • Público em geral. Os utilizadores licenciados do Google Workspace podem transferir a sua app através do Google Workspace Marketplace.
  • Domínio do Google Workspace. Um administrador do Google Workspace pode especificar as apps que os utilizadores podem adicionar ao Google Chat.
  • Testadores de apps. Durante o teste da sua app, pode restringir o acesso à mesma.

No Google Chat, um utilizador pode ter uma conversa direta com a sua app ou invocar a app a partir de um espaço. Acontece o seguinte:

  1. Um utilizador envia uma mensagem para uma app Chat.
  2. O Google Chat envia um pedido JSON para a app Chat, que pode estar alojada nas Cloud Functions.
  3. A app Chat recebe o pedido JSON e analisa-o. Durante esta análise, a app Chat invoca o Dialogflow.
  4. A app de chat envia um pedido ao Dialogflow que inclui o texto da mensagem em linguagem natural do utilizador.
  5. O Dialogflow interpreta o texto do utilizador e envia uma resposta à app Chat.
  6. A app Chat analisa a resposta do Dialogflow e envia uma resposta JSON para o Google Chat.
  7. O Google Chat recebe a resposta JSON da app Chat e renderiza uma resposta sob a forma de uma mensagem de texto, uma mensagem de cartão ou uma mensagem de diálogo na IU.
  8. O Google Chat partilha esta resposta tal como está ou apresenta uma resposta avançada através de uma IU baseada em cartões.

Esta página descreve como integrar o Dialogflow com o Google Chat e configurar respostas de chat avançadas.

Limitações

Com as integrações do Google Chat, um agente do Dialogflow só pode usar o idioma predefinido do agente.

Antes de começar

Apenas os utilizadores do Google Workspace com licença podem usar as apps Google Chat. O administrador do Google Workspace tem de fazer o seguinte:

Crie um agente do Dialogflow

Se ainda não criou um agente do Dialogflow, mas quer ver como um agente interage com o Google Chat, siga este início rápido para criar um agente simples. No entanto, não elimine o agente. Em seguida, configurámos o agente com uma interface do Google Chat.

Configure o Google Chat

Para configurar o seu agente do Dialogflow com o Google Chat, pode usar qualquer uma das seguintes opções:

Configure o Google Chat através da consola do Dialogflow

Para integrar o Google Chat através da consola do Dialogflow, siga estes passos:

  1. Aceda à consola do Dialogflow ES.
  2. No menu do lado esquerdo, selecione um projeto do Dialogflow.
  3. Clique em Integrações.
  4. Clique em Google Chat. Se o Google Chat não for uma das opções, consulte a secção Resolução de problemas.
  5. Selecione quem pode aceder à app.
  6. [Opcional] Selecione um ambiente para executar o agente.
  7. Clique em Iniciar.

A sua app Google Chat já está disponível para as pessoas que selecionou.

Para configurar a app, clique novamente em Google Chat e, de seguida, em CONFIGURAR DETALHES DO ROBÔ. É apresentada a Google Cloud página da consola para a API Google Chat, onde pode configurar parâmetros da app como o avatar da app.

Configure o Google Chat através da Google Cloud consola

Para integrar o Google Chat através da consola Google Cloud , siga estes passos:

  1. Selecione o projeto do Dialogflow.

    Aceder ao seletor de projetos

  2. Clique em .

  3. Clique em APIs e serviços e, de seguida, em Biblioteca.

  4. Pesquise e clique em API Google Chat.

  5. Clique em Ativar.

  6. Clique no separador Configuração.

  7. Configure a app.

  8. No painel Visibilidade, selecione quem pode aceder à app:

    • Testadores de apps. Selecione Tornar este chat disponível para pessoas específicas e introduza os respetivos endereços de email.
    • Público em geral ou domínio do Google Workspace Enterprise. Publique a app.
  9. Clique em Guardar. A sua app Google Chat já está disponível para as pessoas que selecionou.

Teste

Antes de testar a sua app Chat, certifique-se de que a iniciou, conforme descrito em Configurar o Google Chat.

Pode testar a sua app através de qualquer um destes métodos:

Conversar diretamente com a app

  1. Abra o Google Chat.
  2. No painel Chat, clique em + e selecione Encontrar apps.
  3. Pesquise e selecione a sua app. Se o Google Chat não apresentar a sua app, consulte a secção Resolução de problemas.
  4. Clique em Chat.
  5. No campo de entrada do chat, introduza uma expressão de linguagem natural para testar a app.

Invocar a app a partir de um espaço

  1. Abra o Google Chat.
  2. No painel Espaços, clique em + e selecione Criar um espaço.
  3. Introduza o nome do espaço Teste.
  4. Clique em Criar.
  5. No campo de entrada do chat, introduza @ e selecione a sua app para preencher automaticamente o nome.
  6. Após o nome da app preenchido automaticamente, introduza uma expressão em linguagem natural para testar a app.

Resolver problemas

Erro Solução
A página Consola do Dialogflow ES > Integrações não apresenta o Google Chat como opção. Experimente atualizar a página: no menu do lado esquerdo, clique em Intenções e, de seguida, clique em Integrações.
O Google Chat não apresenta a sua app como disponível. Certifique-se de que o administrador do Google Workspace adicionou uma conta do Google Workspace para si e permitiu que os utilizadores instalassem apps do Chat. Em seguida, certifique-se de que iniciou a app Chat, conforme descrito em Configurar o Google Chat.

Mensagens de resposta avançadas

Esta integração traduz algumas mensagens de respostas avançadas para formatos de mensagens do Google Chat.

Respostas de texto

As respostas de texto são enviadas para o Google Chat como mensagens de texto. Com esta formatação, pode aplicar negrito ou itálico ao texto ao envolvê-lo em determinados símbolos (markdown light).

A resposta da mensagem de texto tem o mesmo aspeto visual que a resposta de texto predefinida na consola do Dialogflow. No entanto, a resposta da API não processada tem um aspeto ligeiramente diferente. Também define a configuração da plataforma como GOOGLE_HANGOUTS, o que pode ser interessante quando cria agentes para várias integrações.

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

Cartões

As respostas de cartões são enviadas para o Google Chat como mensagens de cartões.

Imagens

As respostas de imagens são enviadas para o Google Chat como widgets de imagens do Google Chat.

Payload personalizado

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

A carga útil personalizada do Google Chat permite-lhe criar cartões mais avançados. Um cartão pode ter uma ou várias secções. Cada secção pode ter um cabeçalho. Pode consultar o guia de referência de cartões de formatos de mensagens do Google Chat para ver algumas das combinações que pode criar com esta funcionalidade. No entanto, a utilização de payloads personalizados significa que tem de fornecer o formato JSON.

Segue-se um exemplo de um payload personalizado com 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/..."
              }
            }
          }
        }]
      }]
    }]
  }
}

Pare a app Chat

Para impedir que a app Google Chat esteja disponível, pode usar qualquer uma das seguintes opções:

Pare a app Chat através da consola do Dialogflow

  1. Aceda à consola do Dialogflow ES.
  2. No menu do lado esquerdo, selecione um projeto do Dialogflow.
  3. Clique em Integrações.
  4. Clique em Google Chat. Se o Google Chat não for uma das opções, consulte a secção Resolução de problemas.
  5. Clique em Parar.

Pare a app Chat através da consola Google Cloud

  1. Selecione o projeto do Dialogflow na Google Cloud consola.

    Aceder ao seletor de projetos

  2. Clique em .

  3. Clique em APIs e serviços e, de seguida, em Biblioteca.

  4. Pesquise e clique em API Google Chat.

  5. Clique em Gerir.

  6. Clique no separador Configuração.

  7. No campo Estado da app, selecione DESATIVADO.

Mais informações

Para mais informações sobre a utilização do Google Chat, consulte o seguinte: