Você está sofrendo na criação de um bot para Facebook Messenger?
E se eu disser que é possível?
Não, você acha que já pode criar um bot para Facebook Messenger?
Bem, é por isso que nós criamos esse extenso artigo sobre a criação de um bot para Facebook Messenger
Como criar um bot para Facebook Messenger em 15 minutos: Desde Facebook Messenger abriu a porta para que qualquer página possa criar bots que respondem aos usuários automaticamente, muitas empresas que atendem encomendas, respondem perguntas ou fornecem informações de todos os tipos automaticamente.
Conteúdo
É cada vez mais fácil criar bots para esta plataforma, e hoje vamos falar sobre botsify.com uma solução muito simples para ter o nosso próprio bot em poucos minutos.
Confira nossos melhores artigos
Em a apresentação em vídeo que deixamos abaixo se mostra passo a passo como criar um bot de uma loja de fast food. Não podemos ver as etapas a serem executadas sem escrever código sem qualquer programação, simplesmente, completando etapas simples para personalizar os resultados no final.
Obviamente, temos que criar uma página no Facebook e um aplicativo associado a ele (algo fácil de fazer do próprio Facebook, como é mostrado no vídeo). Uma vez feito isso, vamos ter que reportar os dados botsify para que possamos começar a configurar as respostas que nosso robô dará aos usuários que entram em contato com a página via messenger.
As combinações são bastante variadas, e podemos mostrar mesmos botões, imagens e links como respostas a algumas perguntas, de modo que se o cliente solicita uma lista de produtos que oferecemos, podemos responder imediatamente com fotos de tudo o que vendemos, por exemplo.
É cada vez mais fácil, e agora também há que apostar na flexibilidade, para evitar que os clientes usem palavras que não foram tomadas em conta e ter que devolver o típico: “Eu não entendi”.
Primeiro havia produtos de software de desktop, então tudo se mudou para a web. Em seguida, havia produtos baseados em e-mail e até mesmo baseado em SMS. A mania a mais atrasada em relações do software é bots do mensageiro, e Facebook tem a plataforma a mais grande do bate-papo por um tiro longo.
Neste tutorial, vou mostrar-lhe como construir o seu próprio Facebook Messenger Chat Bot em python. Usaremos o Flask para algumas solicitações básicas de solicitação da Web e implantaremos o aplicativo no Heroku.
Vamos começar.
Vamos entrar na carne de enviar e receber mensagens em um pouco, mas primeiro você precisa ter um ponto de extremidade de trabalho que retorna um código de resposta 200 e ecos de volta algumas informações, a fim de verificar o seu bot com o Facebook.
Primeiro, git clone o repositório Github que eu configurei para este projeto:
Git clone [email protected]: hartleybrody / fb-messenger-bot.git
Em seguida, cd nele e instalar dependências python:
Mkvirtualenv test-bot
Pip install -r requirements.txt
Para simplificar, vamos implementar isso para o Heroku, mas você também pode implantar esse aplicativo da Web do Flask em qualquer servidor ao qual você tenha acesso.
Supondo que você já tenha instalado o Herku CLI Toolbelt, você pode executar
Heroku criar
>>Podcast sobre Messenger<<<<
Nós também estamos usando a convenção do Heroku para o Procfile para dizer como executar o aplicativo, mas você pode configurar isso em seu próprio servidor com algo como nginx na frente de um ou mais processos gunicorn.
Para verificar se o Heroku pode executar as coisas localmente em sua máquina, inicie o servidor local com:
Heroku local
Em seguida, em seu navegador, visite http: // localhost: 5000 / e você deve ver “Hello world”.
Mate o servidor local com Ctrl + C. Para implantar esse ponto final no Heroku
Git push heroku master
E para abri-lo no seu navegador
Heroku aberto
Agora você tem um URL “webhook” de trabalho que você pode usar para configurar seu bot. Certifique-se de pegar o URL completo https: //*.herokuapp.com do seu navegador, uma vez que precisaremos dele em pouco.
Se você ainda não tiver um, você precisa criar uma página do Facebook. A Página do Facebook é a “identidade” do seu bot, incluindo o nome ea imagem que aparece quando alguém conversa com ele dentro do Facebook Messenger.
Se você está apenas criando um manequim um para o seu chatbot, não importa realmente o que você nomeá-lo ou como você classificá-lo. Você pode ignorar a maioria das etapas de configuração.
A fim de se comunicar com o seu bot, as pessoas terão de passar por sua página, que vamos olhar em um pouco.
Vá para a página de início rápido do desenvolvedor do Facebook e clique em “Ignorar e criar ID do aplicativo” no canto superior direito. Em seguida, crie um novo aplicativo do Facebook para o seu bot e dê à sua aplicação um nome, categoria e email de contato.
Você verá seu novo ID de aplicativo no canto superior direito na próxima página. Role para baixo e clique em “Começar” ao lado do Messenger.
Can Facebook Messenger Chat Bot #WeBot Be a Game-Changer for Political Protesters? via @Adweek https://t.co/t9HSHQDg6D #Protest pic.twitter.com/aHkaFbP5lB
— Test Monki (@testmonki) 5 de marzo de 2017
Agora você está nas configurações do Messenger para o seu aplicativo do Facebook. Existem algumas coisas aqui que você precisará preencher para que seu chatbot fique conectado ao ponto de extremidade do Heroku que configuramos anteriormente.
Usando a Página que você criou anteriormente (ou uma Página existente), clique no fluxo de autenticação e receberá um Token de Acesso à Página para seu aplicativo.
Clique no Token de acesso à página para copiá-lo para a área de transferência. Você precisará configurá-lo como uma variável de ambiente para seu aplicativo Heroku. Na linha de comando, na mesma pasta onde você clonou o aplicativo, execute:
Configuração do heroku: adicione PAGE_ACCESS_TOKEN = your_page_token_here
Este token será utilizado para autenticar os seus pedidos sempre que tentar enviar uma mensagem ou responder a alguém.
Quando você vai configurar seu webhook, você precisará de alguns bits de informação:
URL de retorno de chamada – O URL do Heroku (ou outro) que configuramos anteriormente.
Verificação Token – Um valor secreto que será enviado para o seu bot, a fim de verificar o pedido é proveniente do Facebook. Qualquer valor que você definir aqui, certifique-se de adicioná-lo ao seu ambiente Heroku usando heroku config: adicionar VERIFY_TOKEN = your_verification_token_here
Campos de assinatura – Isso informa ao Facebook quais eventos de mensagens você se preocupa e deseja que ele notifique seu webhook sobre. Se você não tiver certeza, basta começar com “mensagens”, como você pode alterar isso mais tarde
Depois de configurar seu webhook, você precisará se inscrever na página específica para a qual deseja receber notificações de mensagens.
Depois de ter obtido o Token de acesso à página e configurado o webhook, certifique-se de que define os valores de configuração PAGE_ACCESS_TOKEN e VERIFY_TOKEN no seu aplicativo Heroku e você deve estar pronto!
Vá para a Página do Facebook que você criou e clique no botão “Mensagem”, ao lado do botão “Gosto” perto do topo da página. Isso deve abrir um painel de mensagens com sua página.
Comece a enviar suas mensagens de página eo bot deve responder!
Para ver o que está acontecendo, verifique os logs do seu aplicativo
Heroku logs -t
Você deve ver os dados do POST que o Facebook está enviando para seu ponto de extremidade sempre que uma nova mensagem é enviada para o bot de sua Página.
Aqui está um exemplo JSON POST corpo que eu tenho quando eu enviei “faz este trabalho?” Para o meu bot
{
“Objeto”: “página”,
“entrada”:[
{
“Mensagens”:[
{
“mensagem”:{
“Texto”: “faz este trabalho?”,
“Seq”: 20,
“Mid”: “mid.1466015596912: 7348aba4de4cfddf91”
},
“Timestamp”: 1466015596919,
“remetente”:{
“Id”: “885721401551027”
},
“Destinatário”: {
“Id”: “260317677677806”
}
}
],
“Tempo”: 1466015596947,
“Id”: “260317677677806”
}
]
}
Por padrão, o bot deve responder a tudo com “got it, obrigado!”
Aqui é onde finalmente começamos a mergulhar no código.
Existem apenas duas partes fundamentais para um bot de mensagens: receber e enviar mensagens
Nós tratamos as mensagens recebidas começando na linha 24 dentro do app.py, na nossa função de exibição do webhook ().
Primeiro carregamos os dados do JSON POST que são enviados para o webhook do Facebook sempre que um novo evento de mensagens é acionado, geralmente quando alguém envia uma mensagem para nossa Página.
Em seguida, passamos por cima de cada entrada – na minha experiência de teste, só houve uma única entrada enviada para o webhook de cada vez.
Em seguida, fazemos um loop sobre cada um dos eventos de mensagens. Aqui, pode haver vários eventos de mensagens.
No passo # 4, dissemos ao Facebook quais tipos de mensagem queremos que nosso webhook seja notificado. Se você seguiu meu conselho, nosso ponto de extremidade só receberá eventos de “mensagem”, mas também poderemos receber confirmações de entrega, optins e postbacks (mais sobre aqueles posteriores). Eu deixei algum código no lugar para detectar esses outros tipos de eventos de mensagens, mas eu realmente não lidar com eles.
O evento de mensagens que será mais útil para a maioria das aplicações será o evento “mensagem”, ou seja, alguém enviou uma nova mensagem à sua Página. Eu escrevi algum código básico para lidar com esse evento, analisando o ID do remetente e simplesmente respondendo de volta a eles.
Para enviar uma mensagem de texto simples, você só precisa de duas coisas:
Lembre-se que a solicitação é autenticada usando a variável de ambiente PAGE_ACCESS_TOKEN que retornamos na etapa 4.
Há muitos tipos de mensagens mais complexas que você pode enviar, incluindo mensagens com imagens e botões. Mais informações sobre esses tipos de mensagem aqui.
Importante notar é a capacidade de enviar um botão “postback” em uma mensagem. Esses são essencialmente botões que, quando tocados por um usuário, enviam um evento de mensagens postback para seu webhook.
Isso basicamente permite que os usuários “pressionem botões” em seu aplicativo, tudo isso dentro do Facebook Messenger. Você pode usar isso para fazer um pedido, confirmar um pedido ou muitas outras coisas.
Sempre que um usuário toca um botão de postagem, seu webhook é notificado e pode executar qualquer tipo de ação de acompanhamento subseqüente necessária.
Enquanto você está testando seu bot, somente você e outros admins da página podem enviar mensagens diretamente ao bot. Você tem que passar por um processo de revisão antes de seu bot está aberto para o mundo, pronto para conversar com alguém.
Facebook parece ser muito completo em seu processo de revisão, e com razão. O código de um bot de mensagens é executado em seus próprios servidores e pode ser alterado a qualquer momento, sem que o Facebook o saiba.
Eles parecem estar se esforçando para se certificar de que você é um bom ator, e não enviar um aplicativo manequim simples para ser aprovado, apenas para alterá-lo para algum bot spam na estrada.
Obviamente, eles ainda poderiam revogar seus tokens de acesso à API se você fizesse isso, mas preferem não ter qualquer abuso na plataforma Messenger.
Volte para a página Configurações do aplicativo do Google Messenger que usamos na etapa 4. Role para baixo até “App Review for Messenger” e clique em “Permissões de solicitação”.
Solicite as permissões que você precisa e, em seguida, você será levado para a página “Review Status”. Esta página requer uma tonelada de informação para garantir que os desenvolvedores não vão abusar da plataforma.
Em seguida, tudo vai para a equipe de revisão do Facebook para assinar e dar-lhe acesso total à plataforma Messenger. Mais informações sobre o processo de aprovação aqui.
Mesmo se você não pretende ir todo o caminho através do processo de revisão, espero que você aprendeu uma coisa ou duas sobre como construir um simples chat bot para o Facebook Messenger.
O Facebook logo desativará o recurso de bate-papo em seus aplicativos Android e iOS e pedirá aos usuários de smartphones que baixem o aplicativo Messenger.
A guia de mensagens no aplicativo principal do Facebook só exibirá notificações para as mensagens recebidas. Para conversar e responder a mensagens, os usuários precisarão do Messenger.
De acordo com Techcrunch, os usuários do Facebook em smartphones serão notificados da mudança nos próximos dias. Embora o Facebook tenha sugerido anteriormente que queria mover a funcionalidade de bate-papo exclusivamente para o Messenger, o movimento pode resultar em inconveniência para milhões de usuários que utilizam o recurso de bate-papo no aplicativo principal e não têm o Messenger instalado em seus telefones.
“Nos próximos dias, continuaremos notificando mais pessoas que, se quiserem enviar e receber mensagens do Facebook, precisarão baixar o aplicativo Messenger“, disse um porta-voz do Facebook à Techcrunch. “Como dissemos, nosso objetivo é concentrar os esforços de desenvolvimento em tornar o Messenger a melhor experiência de mensagens móveis possível e evitar a confusão de ter separado Facebook mensagens móveis experiência“.
Facebook, que inicialmente tentou uma abordagem unificada e serviu quase todos os seus serviços através de um único aplicativo em smartphones, mudou a estratégia no último ano. A empresa não só adquiriu aplicativos como o Instagram eo WhatsApp e os manteve separados do principal aplicativo do Facebook, mas também lançou novos serviços como Slingshot e Paper como aplicativos independentes.
Em janeiro deste ano, Mark Zuckerberg revelou que o Facebook iria favorecer aplicativos independentes no futuro.
“Nós também temos alguns aplicativos separados que são amplamente utilizados, como Instagram e Messenger, nosso aplicativo de mensagens autônomo“, disse ele durante a chamada de ganhos da empresa. “No futuro, esperamos desenvolver mais destes serviços para ajudar as pessoas a compartilhar.”
Facebook Messenger tem atualmente mais de 200 milhões de usuários. O porta-voz do Facebook disse Techcrunch que o Messenger é 20{99a4831aff170f86e67dfef4c72ade956a91205445077607752a5d507692ae43} mais rápido em comparação com o bate-papo dentro do aplicativo principal. A empresa teria testado a política de ‘chats-through-only-Messenger’ na Europa, descobriu que as pessoas compartilhavam mais conteúdo quando usavam o Messenger em comparação com quando confiavam no aplicativo principal.
Hai nossa muito bom