Skip to content
This repository has been archived by the owner on Sep 21, 2024. It is now read-only.
/ mojipoints Public archive

slackbot for giving karma points using emojis!

License

Notifications You must be signed in to change notification settings

kenliu/mojipoints

Repository files navigation

Mojipoints is an open-source Slackbot for giving your teammates karma points. Its ancestors are text based karma bots like Hubot Plus Plus (https://github.com/ajacksified/hubot-plusplus) and IRC karma bots.

Mojipoints was designed to be a karma bot with a Slack-native UX. In addition to the traditional ++ method of giving karma, mojipoints uses Slack emojis for giving recognitions (or taking them away!).

mojipoints demo

Maintainability

Test Coverage

Building the application

TBD

Create an app in Heroku

TBD

Configure the app in Slack

  1. Sign in to your Slack team and go to https://api.slack.com/apps
  2. Click the green Create an App button
  3. Set "Display Information"
    1. Set the "App name" (usually mojipoints but this is already taken)
    2. Set the "Short description" to Give your coworkers points using emojis!
    3. Upload the app icon from icon.png in the git repo
    4. Set "Background Color" to #177300 or thereabouts
  4. Click Save Changes (bottom right)
  5. OAuth & Permissions -> Set Redirect URLs to https://<Heroku app URL>/auth/finish (click Save URLs)
  6. Under Basic Information -> App Credentials you will find a "Client ID" and "Client Secret". Set SLACK_CLIENT_ID and SLACK_API_SECRET env variables in the Heroku app config using the generated values from Slack
  7. Set the given verification token as SLACK_VERIFICATION_TOKEN env variable in the Heroku app config
  8. Make sure the application is up and running on Heroku
  9. Setup a bot user. Select "Bot Users"
    1. Click Add a Bot User.
    2. Set "Display name" to mojipoints
    3. Set "Default username" to mojipoints
    4. Enable Always Show My Bot as Online
    5. Click Add Bot User
  10. Event Subscriptions
    1. Enable "Enable Events" toggle
    2. Set the Request URL field to the event endpoint URL https://<Heroku app URL>/events. The server must be up and running so that Slack can verify the URL. (It should display Verified successfully if everything is set up right on the server.)
    3. Add the following Bot Events:
      • message.channels
      • message.groups
      • message.im
      • message.mpim
      • reaction_added
      • reaction_removed
    4. Don't forget to click Save Changes!
  11. Install the new app
    1. Go back to "Basic Information" and select "Install your app to your workspace" and click "Install App to Workspace"
    2. On the next screen, click "Authorize"
    3. Browse to https://<Heroku app URL>/auth/begin and click to button to install the app

Credits

App Icon made by Dave Gandy from www.flaticon.com is licensed by CC 3.0 BY

About

slackbot for giving karma points using emojis!

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published