Prometheus Github Repository (https://github.com/prometheus-ai/fb-messenger-clj)
Quick Reply and Button Example (https://m.me/1379818582139942)
Prometheus Facebook Messenger Bot Demo, hosted on Heroku (https://m.me/1379818582139942)
Facebook Messenger NLP Example (https://github.com/prometheus-ai/fb-messenger-clj/wiki/Facebook-Messenger-NLP-in-Clojure)
We wanted to support the developer community to easily create Facebook Messenger Chatbots and minimize the barriers to entry to use the Facebook Messenger Platform API. That's why we set out to build an open source library that provides easy-to-use functions, provide well defined documentation and application examples to start with development right away and to get first results fast — even if you're just getting into programming.
What it does
Prometheus is an open source library that helps developers in a variety of industries (e.g. open government data, online education, games, information services, citizen participation, ...) to easily build bot services on the Facebook Messenger Platform. It provides helper functions, documentation and a collection of application & code examples to get your chatbot up & running easy and quickly. Examples range from ready to deploy applications in different hosting environments to little and helpful everyday use code snippets.
How does it help developers
- Open Source
- Easy to use (for advanced programmers as well as beginners), low barrier to entry
- Guided step-by-step documentation (Dev Environments, Clojure Library, Chatbot Design & UX)
- Helper functions & templates for faster development (Authentication, sending messages, Messenger Profile API, …)
- Application examples for different hosting environments (Heroku, Google App Engine, Amazon …)
- Ready-to-use code snippets (Facebook Messenger built-in NLP, Latitude & Longitude use cases, Chatfuel JSON API, …)
- Facebook Messenger Chatbot Demo
How we built it
There are helper functions available for
- Handling Incoming Webhook Events
- Sending Messages
- All Content Types in the Messenger Platform
- Messenger Platform Attachment Upload API
- Messenger Platform Setting the Messenger Profile API
- Messenger Platform User Profile API and more …
Challenges we ran into
The main risk of the project was to make sure that the open source library will be used in real-world projects and gets distributed in the developer scene which forms a stable community. That's why we've focused on providing high quality in functionality, source code and documentation.
Accomplishments that we’re proud of
We've used the library at Lemmings I/O, an incubator for art & artificial intelligence as part of the program where 100+ chatbots have been created. Participants used the library in a variety of internal and public projects.
Further Links & License:
Clojure, Vagrant, Virtualbox & Atom Editor Setup
Eclipse Public License 1.0
What we learned
By building this project we had the opportunity to get to know the Facebook Messenger Platform API in a more profound way and also learned a lot about library development in Clojure and distribution to the community (via Clojars).
What's next for Prometheus
We want to help the developer community as well as programming beginners to make use of the Facebook Messenger Platform API towards building Facebook Messenger Chatbots globally.
We plan to improve the library and continuously adopt new functionality from the Facebook Messenger API and add further code examples to inspire developers with ideas for existing and new chatbots.
Ongoing public promotion with improvements and updates.