The heyemoji
bot is a self-hosted slack reward system that allows team members to recognize eachother for anything awesome they may have done. This is accomplished by mentioning a user's slack @username in a channel along with a pre-configured reward emoji and an optional description of what they did. The emoji points bestowed to users can be tracked via leaderboards.
Great job filling out those TPS reports @michael.bolton! ⭐
Thanks @michael.bolton and @samir for coming in this weekend! ⭐
Score! @petergibbons found my red stapler! ⭐ 🏆 👏 👏
Name | Description |
---|---|
leaderboard <day|week|month|year> |
see the top 10 people on your leaderboard |
points |
see how many emoji points you have left to give |
help |
get help with how to send recognition emoji |
- Browse to https://api.slack.com/apps?new_classic_app=1
- Assign a name and workspace to your new Slack Bot Application
Basic Information
> Set display name and iconApp Home
> Add Legacy Bot UserOAuth & Permissions
> Install App to Workspace- Copy your Bot User OAuth Access Token for your
HEY_SLACK_API_TOKEN
- Run
heyemoji
specifying the above token! 🎉
ENV Var | Default | Required | Note |
---|---|---|---|
HEY_BOT_NAME | heyemoji | No | The display name of the heyemoji bot |
HEY_DATABASE_PATH | ./data/ | No | The directory that the database files should be written to |
HEY_SLACK_TOKEN | Yes | The API tokens for the Slack API | |
HEY_SLACK_EMOJI | star:1 | No | Comma delimited set of emoji "name:value" pairs |
HEY_SLACK_DAILY_CAP | 5 | No | The max number of emoji points that can be given out in a day |
HEY_WEBSOCKET_PORT | 3334 | No | Port that the Slack RTM client will listen on |
The HEY_SLACK_EMOJI
setting lets you specify multiple different reward emoji as well as different point values for each. So, if you wanted the following emoji and reward values:
Emoji | Value |
---|---|
⭐ | 1 |
👏 | 2 |
🏆 | 3 |
You would specify the HEY_SLACK_EMOJI
as: star:1,clap:2,trophy:3