When invited to your Slack channels, this bot identifies messages that were added a specific reaction (e.g. a balloon), and shares a weekly digest of messages with the most of those reactions.
It is used in the Mangrove Friends community for staying in the loop, and know about the week's highlights.
-
Deploy this project to heroku using the button above (this will clone the repo in a new instance, install the scheduler and mongolab add-ons, and start index.js)
-
When it's done, create the bot in your Slack account's configuration:
- go to https://my.slack.com/services/new/bot
- make sure that you selected the right Slack account, from the top-right selector
- give your bot a username (e.g. balloon)
- keep a copy of the provided token
- confirm the creation of this bot
- Go to the settings page of your heroku instance, click on "Reveal Config Vars", then make sure that:
- the
MONGODB_URI
environment variable is set to your mongodb instance, SLACK_TOKEN
contains the token you created at step 2- and set the other required environment variables (see below)
- Setup the scheduled job:
- go back to the "Overview" tab of your heroku instance's settings
- click on the "Heroku Scheduler" add-on
- add the following job:
node job.js
- select the periodicity and time when you want to receive the digest
-
Restart the heroku instance
-
Invite the bot to the channels you want it to listen to
SLACK_TOKEN
(mandatory, see setup process above)SLACK_NAME
: name of your Slack account (default:nomedu
)BOT_NAME
: name of your bot on Slack (default:Balloon Bot
)DIGEST_CHANNEL
: name of the Slack channel in which the weekly digest will be sharedMONGODB_URI
, default:mongodb://localhost:27017/balloon-bot
REACTION_NAME
, default:balloon
- Francesco Occhipinti
- Adrien Joly