Creare un Facebook Messenger Bot in PHP

Dopo i alcuni esperimenti con i bot Telegram viene il momento di vedere come creare un Facebook Messenger Bot.

Facebook Messenger Bot

Un bot facebook non è altro che un applicazion utilizzabile tramite chat messenger, questi bot sono associati a una o più pagina Facebook.

Gli strumenti che ho utilizzato per realizzare un “Hello Word” in PHP sono:

  • Komodo come ide;
  • Filezilla;
  • Un semplice Host, in questo caso OVH con i certificati SSL gratuiti forniti da Let’s Encrypt.

Per iniziare ci serve una pagina Facebook, per poterla creare basta andare in questo link: qua.

Dopo la pagina è l’ora dell’app, quindi entriamo nell’area Developer di Facebook (qua), i passi successivi sono “aggiungi una nuova applicazione” e poi “Basic Setup”.

Ora abbiamo un’applicazione Facebook.

Sulla sinistra troviamo “aggiungi prodotto” e scegliendo “Messenger” ci apparirà una schermata in cui inserire i dati base della nostra applicazione.

Una volta confermato, abbiamo il nostro Facebook Messenger Bot.

Ora vediamo come poter configurare il nostro Bot. Ci troviamo davanti a 3 Aree: “Generazione di token”, “Webhooks” e “Analisi dell’app”

In Generazione del token dobbiamo solamente scegliere la pagina da associare al Bot e accanto ci verrà restituito il nostro token.

Facebook

Non ci resta che creare il nostro webhooks. Un webhooks non è altro che il metodo che verrà avviato ogni volta che la nostra pagina riceverà un messaggio si occuperà di creare e inviare una risposta.

Entrando su “installa webhooks” troveremo lo spazio per inserire:

  • l’url della nostra pagina, deve essere in https;
  • un nostro codice di verifica, può essere anche “abcd”
  • e la scelta delle modalità che desideriamo nel nostro bot, io ho messo “message deliveries”, “messages”, “messagings_optins” e “messaging_postbacks”.

Durante la verifica del webhooks verrà inviato un codice di autenticazione, per confermare la proprietà del url scritta in precedenza.

php

Dentro l’url creamo un file index.php e dentro ci inseriamo:


$access_token = ““;
$verify_token = “abcd”;
$hub_verify_token = null;

if(isset($_REQUEST[‘hub_challenge’])) {
$challenge = $_REQUEST[‘hub_challenge’];
$hub_verify_token = $_REQUEST[‘hub_verify_token’];
}
if ($hub_verify_token === $verify_token) {
echo $challenge;
}
una volta creato questo file, andiamo su verifica.

Completata questa fase possiamo sostituire il contenuto di index.php con il codice del nostro bot.

Tutto ciò che creeremo sarà visibile e utilizzabile solo dagli amministratori della pagina.

Per renderlo visibile a tutti bisogna inserire l’url della normativa sulla privacy e il logo.

Alcuni indirizzi:

  • Piccolo hello word: link
  • Fonte da cui ho preso la maggior parte delle informazioni: link