Serverless Facebook Messenger Bot
Serverless backend for Facebook Messenger Bot
Install
You need to have installed the Serverless Framework (version 0.5.2 or higher) and you're using Node.js v4.0+.
1. Init project
sls project install serverless-facebook-messenger-bot
2. Setup FB App
Follow quickstart but start with Step 1 and Step 3 to get Page Access Token before deploying backend.
3. Set variables
sls variables set -k PAGE_ACCESS_TOKEN
sls variables set -k VERIFY_TOKEN
VERIFY_TOKEN
is used for subsciption verification.
4. Deploy backend app
Deploy all functions and endpoints
sls function deploy --all
sls endpoint deploy --all
Now you have public webhook URL.
5. Setup Webhook
Back to the FB App Quickstart and verify your webhook.
6. Subscribe the App to the Page
curl -ik -X POST "https://graph.facebook.com/v2.6/me/subscribed_apps?access_token=<PAGE_ACCESS_TOKEN>"
7. Send messages
Go to your Facebook Page and send a message to it. The response will come from your brand new servreless backend! See screenshots in the Quickstart
Running Tests
npm test
Develop
Want to add some logic into bot's responses? Take a look in functions/webhook/handlers/
Deploy
sls function deploy --all
Running localy
npm run offline
and you can send POST requests to http://localhost:3000/webhook
To get an idea about the POST body, enable logging:
sls variables set -k LOG_WEBHOOK_MESSAGES -v true
deploy, send few messages via Messenger and see the logs:
sls function logs webhook