E-8T is a food recommendation Chatbot built using Node.js and the Microsoft Bot Framework. Natural Language Processing is handled by LUIS.
If you're starving and would like recommendations for food in the vicinity, look no further. At the moment, E-8T will make recommendations from HungryGoWhere when you submit your location.
E-8T is available on Facebook Messenger, @e8tbot. Note that Send Location only works on mobile.
- Support for more food searches
- Add more food review websites
- Personalized recommendations
- Proactive lunch suggestions
- Clone this repo
- Install with npm:
NODE_ENV=development npm install
- Set up Azure Cognitive Services, LUIS and mLAb MongoDB
- Run setup and add environmental variables to gulpfile.js:
node setup.js
- Transpile to ES5 and run nodemon dev server with Gulp:
gulp
- Interact with your bot
- Using the Bot Framework Emulator OR
- Directly from WebChat/Facebook Messenger
- Create a secure tunnel to your nodemon server using ngrok:
ngrok http 3978
- Change your Bot Framework messaging endpoint to
https://<yourapp>.ngrok.io/api/messages
- Create a secure tunnel to your nodemon server using ngrok:
- Each time you make changes to the code, gulp will rebuild and restart your server. Make sure to
start new conversation
in the emulator. - Before shipping, run your tests:
gulp build
andnpm test
- And generate coverage stats:
npm run cover
- Register bot with Bot Framework
- Set up Travis CI and Coveralls
- Create new Heroku app with mLab add-on
- Deploy to Heroku
git push heroku master
- Set Bot Framework messaging endpoint to
https://<yourapp>.herokuapp.com/api/messages
- Access Facebook Developer and create Facebook App and Page for Messenger
- Set up Facebook Messenger webhook
- Get your Facebook App approved for Send/Receive API (pages_messaging)
- Add your Facebook Page Access Token to setup-fb.js then run
node setup-fb.js
Code released under the MIT license.