A FB messenger app that serves and helps learning coding easier and fun
OTHER License
Code Butler is bot that assits learning about coding and programming languages in a fun way, created to showcase key features of the Messenger Platform. Code Butler leverages key features to deliver a great learning experience.
Access the Messenger experience
Before you begin, make sure you have completed all of the requirements listed above. At this point you should have a Page and a registered Facebook App.
Before going through the below steps, please watch this video on How to create a Messenger Bot, it will help with the below steps.
Clone this repository on your local machine:
$ git clone [email protected]:neomatrix369/code-butler-app.git
$ cd code-butler-app
You will need:
$ pip install -r requirements.txt
$ wget https://dl.fbaipublicfiles.com/fairseq/models/roberta.large.tar.gz
$ tar xvzf roberta.large.tar.gz
$ rm roberta.large.tar.gz
$ npm install
npm install -g localtunnel
Open a new terminal tab and request a tunnel to your local server with your preferred port
lt --port 3000
.sample.env
to .env
mv .sample.env .env
Edit the .env
file to add all the values for your app and page. Then run your app locally using the built-in web server
$ FLASK_ENV=development FLASK_APP=flask-torch-app.py flask run
Run the above ML server, in order to be able to send questions to the ML server and get an answer (if it can return one) with confidence scores. The server will stand up at http://localhost:5000 for REST API calls -- meant for internal use to the Chat app only.
Open a new terminal session and run the below commands:
$ cd app-server
$ node app.js
You should now be able to access the application in your browser at http://localhost:3000
Use the VERIFY_TOKEN
that you created in .env
file and call the /profile endpoint like so:
http://localhost:3000/profile?mode=all&verify_token=verify-token
Send a message to your Page from Facebook or in Messenger, if your webhook receives an event, you have fully set up your app! Voilà!
Download and install the Heroku CLI
git init
heroku apps:create
# Creating app... done, ⬢ mystic-wind-83
# Created http://mystic-wind-83.herokuapp.com/ | [email protected]:mystic-wind-83.git
git add .
git commit -m "My first commit"
heroku buildpacks:set heroku/python
heroku buildpacks:add heroku/nodejs
git push heroku master
In your Heroku App Dashboard https://dashboard.heroku.com/apps/mystic-wind-83 set up the config vars following the comments in the file .sample.env
You should now be able to access the application. Use the VERIFY_TOKEN
that you created as config vars and call the /profile endpoint like so:
http://mystic-wind-83.herokuapp.com/profile?mode=all&verify_token=verify-token
Send a message to your Page from Facebook or in Messenger, if your webhook receives an event, you have fully set up your app! Voilà!
Messenger App Code Butler is BSD licensed, as found in the LICENSE file.
See the CONTRIBUTING file for how to help out.