Criando um Bot para o Messenger Utilizando o Dialogflow

Em um post anterior (se você ainda não leu, você pode não entender este post), eu demonstrei como criar um bot para o Telegram e integrar ao Dialogflow (antigo Api.ai). Dessa forma, seguindo o padrão aqui do blog de sempre postar tutoriais tanto para o Telegram quanto para o Messenger, neste post eu irei explicar como integrar o Dialogflow a um bot para da plataforma do Facebook Messenger.

Na criação do bot para o Messenger, eu irei utilizar o mesmo agente criado no Dialogflow e que está integrado ao nosso bot do Telegram. Sendo assim, o nosso bot para o Messenger terá o mesmo comportamento do construído para o Telegram.

Uma dúvida que pode surgir aqui é: Então, quer dizer que eu posso integrar o mesmo agente do Dialogflow a várias plataformas de chat diferentes?

A resposta é: SIM! Fazendo uso do Dialogflow, é possível deixar os bots de todas as plataformas com o mesmo padrão de resposta.

Sabendo disso, vamos ao nosso bot e ver como isso funciona na prática!

1- Criando uma Página e um App no Facebook

Todo bot para o Messenger deve ser associado a uma página no Facebook. Além disso, é necessário também que um app seja criado no Facebook, o qual será responsável pela ligação entre a página e o código do nosso bot. Como aqui no blog já existe um post que trata sobre isso, não vou detalhar esta etapa.

2- Integrando o Dialogflow ao Messenger

Com a nossa página e o app criados no Facebook, o próximo passo é acessar o console do Dialogflow e selecionar o menu Integrations. Nesse menu, como mostra a figura abaixo, ative a opção “Facebook Messenger”.

dialogflow_messenger1

Com o Facebook Messenger ativado, é exibido um popup onde devem ser inseridos o Verify Token (esse token você que define) e o Page Access Token (gerado anteriormente junto com o app do Facebook). Por sua vez, a Callback URL será utilizada como Webhook do nosso bot no Messenger.

dialogflow_messenger2

Ao clicar no botão “Start” exibido na imagem acima, o Dialogflow irá liberar o acesso ao agente por meio da Callback URL.

3- Reconfigurando o App no Facebook

Uma vez que o agente já está apto a receber conexões, é preciso voltar às configurações do app criado anteriormente no Facebook para inserir a Callback URL no campo destinado ao Webhook do bot. Para isso, acesse a opção “Configurar Webhooks” como mostra a imagem a seguir:

dialogflow_messenger3

Em seguida, será aberto um popup onde devem ser preenchidos os campos com a Callback URL e o Verify Token.

dialogflow_messenger4

Pronto, feito isso, o bot já está funcional! Agora o próximo passo é testar o bot.

4- Testando o Bot

Para testar o bot é bem simples, basta acessar o endereço https://m.me/nomedasuapagina. No caso do bot criado neste tutorial, a URL é: https://m.me/loteriscaixabot. Como é possível ver na imagem abaixo, quando o bot recebe a mensagem “Mega”, ele retorna o resultado da Mega-Sena. Esse comportamento é o mesmo do nosso bot do Telegram.

dialogflow_messenger5

Outra observação importante com relação a essa integração é que nenhuma implementação de código foi necessária. Isso significa que fazendo uso de plataformas como o Dialogflow fica mais fácil de distribuir seu bot em múltiplas plataformas. =]

Qualquer dúvida, deixa um comentário.

2 Comment

  1. Felipe says: Responder

    Boa noite, como vai? Parabéns pelos artigos!
    Teria como me ajudar a criar um bot para minha página no facebook utilizando o Dialogflow?
    Tenho uma página relacionada a moedas digitais, e queria que o bot envieasse caso solicitado, o preço de tais moedas digitais ao usuário, seria semelhante ao da Loteria, só que no meu caso ele pega as informaçoes das moedas usando a API do site Cryptocompare
    https://www.cryptocompare.com/api/#-api-data-price-
    Caso puder dar uma força agradeço, até logo!

    Obrigado

    1. Luiz Marcus Luiz Marcus says: Responder

      E ae Felipe, blz?
      Se você souber programar e reservar um tempo para ler os posts sobre bots para o Messenger aqui do blog, acho que você consegue fazer esse bot.
      Não tem muito segredo não.
      Só não esquece de prestar atenção nos limites de uso dessa API.
      Qualquer dúvida, deixa um comentário.

Deixe uma resposta