Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/mmcdole/heyemoji
a slack recognition bot
https://github.com/mmcdole/heyemoji
Last synced: 3 months ago
JSON representation
a slack recognition bot
- Host: GitHub
- URL: https://github.com/mmcdole/heyemoji
- Owner: mmcdole
- License: mit
- Created: 2020-07-24T03:11:14.000Z (over 4 years ago)
- Default Branch: master
- Last Pushed: 2023-02-16T05:05:04.000Z (almost 2 years ago)
- Last Synced: 2024-06-19T04:02:26.076Z (7 months ago)
- Language: Go
- Homepage:
- Size: 38.1 KB
- Stars: 11
- Watchers: 4
- Forks: 5
- Open Issues: 8
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# heyemoji 🏆 👏 ⭐
#![Docker Cloud Build Status](https://img.shields.io/docker/cloud/build/mmcdole/heyemoji) [![Go Report Card](https://goreportcard.com/badge/github.com/mmcdole/heyemoji)](https://goreportcard.com/report/github.com/mmcdole/heyemoji) [![Doc](https://godoc.org/github.com/mmcdole/heyemoji?status.svg)](http://godoc.org/github.com/mmcdole/heyemoji) [![License](http://img.shields.io/:license-mit-blue.svg)](http://doge.mit-license.org)
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.
## Table of Contents
- [Usage](#basic-usage)
- [Setup](#setup)
- [Configuration](#configuration)## Basic Usage
#### Give a single user emoji points
`Great job filling out those TPS reports @michael.bolton! ⭐`
#### Give multiple users emoji points
`Thanks @michael.bolton and @samir for coming in this weekend! ⭐`
#### Give multiple emojis to a user
`Score! @petergibbons found my red stapler! ⭐ 🏆 👏 👏 `
### Bot Commands
| Name | Description |
|------------------------------------------|------------------------------------------------------------|
| `leaderboard ` | 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 |## Setup
1. Browse to https://api.slack.com/apps?new_classic_app=1
2. Assign a name and workspace to your new Slack Bot Application
3. `Basic Information` > Set display name and icon
4. `App Home` > Add Legacy Bot User
5. `OAuth & Permissions` > Install App to Workspace
6. Copy your **Bot User OAuth Access Token** for your `HEY_SLACK_API_TOKEN`
7. Run `heyemoji` specifying the above token! 🎉## Configuration
| 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 |### Specifying Custom Reward Emoji
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`