Messenger do Facebook

Usando a integração do Dialogflow com o Facebook Messenger, você pode criar um bot do Facebook Messenger para interagir com os usuários finais.

Limitações

Somente o idioma do agente padrão é compatível com essa integração.

Como funciona

A integração funciona assim:

Instalação

Para configurar a integração:

  1. Siga as etapas para criar um aplicativo do Facebook: Desenvolvimento de aplicativos do Facebook.

  2. Configure o aplicativo do Facebook para usar a plataforma do Facebook Messenger. Siga as etapas na documentação Como configurar seu aplicativo do Facebook para:

    • Adicionar a plataforma do Messenger ao seu aplicativo do Facebook.
    • Inscrever seu aplicativo em uma página do Facebook. Você receberá um token de acesso nessa etapa. Copie esse valor. Esse token será usado para configurar a integração do Console do Dialogflow.
    • Não configure o webhook nem teste sua integração ainda.
  3. Configure a integração no Console do Dialogflow:

    1. Acesse o Console do Dialogflow ES.
    2. Clique em Integrations no menu da barra lateral à esquerda.
    3. Clique em Facebook Messenger.
    4. Uma caixa de diálogo de configuração é aberta.

      • Mostrar URL de callback antigo: se esse botão for exibido, o padrão será desativado. Esta é uma opção temporária para acomodar uma modificação recente na API Facebook Messenger. Não altere essa opção, a menos que seja instruído pelo suporte do Dialogflow. Após a atualização de todos os agentes, essa opção será removida.
      • URL de callback: copie esse valor. Isso será usado para configurar o webhook do Facebook Messenger.
      • Verificar token: você pode inserir qualquer token privado. Copie esse valor. Isso será usado para configurar o webhook do Facebook Messenger.
      • Token de acesso à página: insira o token de acesso que você copiou ao criar a página do Facebook.
      • Iniciar: clique para iniciar esse serviço de integração para o agente.
  4. Conclua a configuração do aplicativo do Facebook e teste-o. Siga as etapas na documentação Como configurar seu aplicativo do Facebook para:

    • Configurar o webhook do Facebook para seu aplicativo. Use os valores URL de callback e Verificar token que você copiou acima. Ative messages e messaging_postbacks.
    • Testar o aplicativo.

Eventos

Os eventos a seguir são invocados por esta integração:

Evento Descrição
FACEBOOK_WELCOME Acionado quando um usuário final inicia uma conversa com seu bot.

Mensagens de resposta avançadas

Essa integração converte algumas mensagens de resposta avançada em tipos de mensagens da plataforma do Facebook Messenger.

Respostas de imagem

As respostas de imagem são enviadas ao Facebook Messenger como mensagens de anexo de arquivo do Facebook Messenger. O valor message.attachment.type é definido como image. Os seguintes formatos são compatíveis:

  • jpg
  • png
  • GIF estático
  • GIF animado

Cards de resposta

Os cards de resposta são enviados ao Facebook Messenger como modelos genéricos do Facebook Messenger.

Respostas rápidas

As respostas rápidas são enviadas ao Facebook Messenger como respostas rápidas do Facebook Messenger.

Respostas de payload personalizadas

Para enviar outros tipos de mensagens do Facebook Messenger, você pode usar um payload personalizado.

O formato geral do payload personalizado é assim:

{
  "facebook": {
    message
  }
}

No lugar de message, forneça o objeto message do Facebook Messenger. Para detalhes do objeto message, veja a referência da API Facebook Messenger.

Exemplo:

  • Enviar um link de áudio:
    {
      "facebook": {
        "attachment": {
          "type": "audio",
          "payload": {
            "url": "https://example.com/audio/test.mp3"
          }
        }
      }
    }
        
  • Enviar um vídeo reproduzível:
    {
      "facebook": {
        "attachment": {
          "type": "video",
          "payload": {
            "url": "https://example.com/video.mp4"
          }
        }
      }
    }
        
  • Enviar um arquivo:
    {
      "facebook": {
        "attachment": {
          "type": "file",
          "payload": {
            "url": "https://example.com/file.pdf"
          }
        }
      }
    }