Ruboty
Ruby + Bot = Ruboty.
Dependencies
- Ruby 2.2.2
Adapter
Adapter hooks up ruboty to chat services.
- Slack
- ruboty-slack (XMPP gateway)
- ruboty-slack_rtm (Bot RTM API)
- ruboty-twitter
- ruboty-hipchat
- ruboty-idobata
- ruboty-chatwork
- ruboty-discord
Brain
Brain persists memories.
Handler
Handler provides various behaviors.
- ruboty-alias
- ruboty-cron
- ruboty-echo
- ruboty-github
- ruboty-google_image
- ruboty-kokodeikku
- ruboty-lgtm
- ruboty-syoboi_calendar
- ruboty-talk
Other plugins are hosted on Rubygems.
Configuration
Store configuration value in envorinment variables.
They are easy to change between deploys without changing any code.
We recommend to put .env
and run with ruboty --dotenv
option to manage them .
All you need to use your favorite plugins is to write their names into Gemfile. Ruboty will load them before running.
# Gemfile
gem "ruboty-cron"
gem "ruboty-google_image"
gem "ruboty-redis"
gem "ruboty-slack"
ENV
DISABLE_DEFAULT_HANDLERS - Pass 1 to disable default handlers (default: nil)
LOG_LEVEL - Log level for debug (default: 3)
RUBOTY_ENV - Loaded gem group name (default: development)
RUBOTY_NAME - Name to respond to mention (default: ruboty)
Deploy
See r7kamura/ruboty-template for example.