Skip to content

akarshHegde/JARVIS-on-Messenger

 
 

Repository files navigation

JARVIS on Messenger

Just A Rather Very Intelligent System, now on Messenger!

Build Status Python License Gitter

Messenger is now used by 900 million people every month. With the launch of Send / Receive API, bots are about to take over.

Why?

I created JARVIS with two goals in mind:

  1. It should have a lot of useful features (both fun and commonly used).
  2. Anyone can contribute to this project. (As this is module-based, anybody with a decent knowledge of Python can contribute.) One of the prime goals of this project is to lower the entry barrier in the world of open source.

Take a look at the contributing guidelines to see how easy it is to add your code. I'll be waiting for your pull request! 😉

Demo (Vimeo)

JARVIS on Messenger Demo

TODO

There are a lot of features that I've planned for JARVIS. Feel free to add to this list by opening an issue / PR.

  • Book Rating (#11)
  • Movie Rating
  • Anime Rating
  • News
  • Weather (#13)
  • Currency Conversion (#18)
  • Random Quote (#21)
  • Random Fact
  • Random Joke
  • Dictionary (#1)
  • Wikipedia Summary (#9)
  • Lyrics Search
  • URL Shortener
  • Expand URL

Some advanced features:

  • Add templates support (Structured Messages) (#7)
  • Integrate with Wit.ai to parse Natural Language
  • Retain context between queries

Structure

├── modules/         # home for various features
├── modules/src/     # code goes here
├── modules/tests/   # tests go here
├── templates/       # for sending structured messages
├── CONTRIBUTING.md  # contributing guidelines
└── jarvis.py        # the main bot

Usage

JARVIS is at your service here. Currently, it's pending approval before the public can engage. If you'd like to be a tester, post here.

Sample Queries

Hi, Jarvis!
Are you there?
tell me a joke
iron man movie
define comfort
wiki html
anything you want book
random quote
usd to eur rate
More examples can be found here.

Local Development / Testing

  1. Clone this repo.
  2. sudo apt-get install python-dev libffi-dev libssl-dev
  3. pip install -r requirements.txt
  4. python jarvis.py
  5. Visit the following URLs to see results:
    http://localhost:5000/process/?q=<YOUR_QUERY> returns the intent of the query.
    http://localhost:5000/search/?q=<YOUR_QUERY> returns the search result of the query.

History

I started out with rule-based model but it didn't scale well so now I've shifted to Natural Language Processing. Rest assured, I'll strive to keep it as simple as possible so that you, yes you, can contribute!

If you'd like to contribute to the old model, you are welcome to do so as well. I've created a new branch legacy for this purpose. I'll be accepting Pull Requests to this branch also. 😄

P.S. If you've come this far, you might as well contribute. Looking for a place to start? Take a look at some of the low-hanging fruits!

About

A community-driven python bot that aims to be as simple as possible to serve humans with their everyday tasks

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 100.0%