CatBot is a lightweight Sinatra app that provides Slack with a simple bot for fetching individual cat images from The Cat API. Once setup, you can type #cat
in your Slack channel and CatBot will post a random gif from The Cat API back to the channel.
CatBot was originally forked from @schuyler's gifbot before I hacked it up and replaced most of the bits with code from Descartes' CAT_MODE handler.
CatBot uses a Slack Outgoing WebHooks integration for catching the #cat
request and firing it to your CatBot service. You'll need to add a new Outgoing WebHook first so you'll have the SLACK_TOKEN
available for the actual CatBot deployment steps below.
$ bundle install
$ export SLACK_TOKEN=...
$ foreman start
$ heroku create
$ heroku config:set SLACK_TOKEN=...
$ git push heroku master
Once your CatBot application has been deployed you'll need to go back to your Outgoing Webhook page and update the Integration Settings. Generally speaking you'll want to use settings like these (adjust as necessary):
- Channel:
Any
- Trigger Word:
#cat
- URL:
http://slack-catbot-123.herokuapp.com/cat
(the/cat
endpoint is mandatory) - Label:
catbot
CatBot is distributed under the MIT license.