Ellen
A chatterbot framework, inspired by Hubot.
Dependencies
- Ruby 1.9.3+
Adapter
You can create your own favorite adapter from Ellen::Adpaters::Base class with #run method. Please see the following real examples for more details.
Handler
You can create your own handlers to add new behaviors from Ellen::Handlers::Base DSL.
Bundler
All you need to use your favorite plugins is to write their names into Gemfile. Ellen will load them before running.
# Gemfile
gem "ellen-foo"
gem "ellen-bar"
gem "ellen-baz"
Config
Store config in envorinment variables.
They are easy to change between deploys without changing any code.
We recommend to put .env
and run with ellen --dotenv
option to manage them.
Deploy
Here is the smallest example to deploy a simple chatterbot to Heroku.
$ gem install ellen
$ ellen --generate
$ cd ellen
$ echo 'gem "ellen-my_adapter"' >> Gemfile
$ echo 'bot: bundle exec ellen --adapter my_adapter' >> Procfile
$ bundle install
$ git init
$ git add .
$ git commit -m "Initial commit"
$ heroku create
$ heroku scale bot=1
$ heroku config:set FOO=1 BAR=2 BAZ=3
$ git push heroku master