Skip to content

lindar-open/slack-team-happiness

Repository files navigation

slack-team-happiness

Team happiness Slack Bot which populates the related Engineering Scorecard metric.

Features

  • Weekly Happiness Check-In: Automatically prompts members of the group SLACK_TEAM_CHANNEL every Friday to rate their happiness on a scale.
Screenshot 2024-02-21 at 15 04 22
  • Pushed to Sheets: The results are automatically pushed to the Google Sheet specified in TeamHappinessGoogleSheetService#SPREADSHEET_ID.

Contributing

Building the project

  • Java 17 is required (i.e. sdk use java 17.0.2-open)
  • Run ./gradlew build

Running locally

  • Run SlackTeamHappinessApplication using your IDE with the variables (populate with relevant test values):
-DSLACK_APP_TOKEN= // test bot details
-DSLACK_BOT_TOKEN= // test bot details
-DSLACK_SIGNING_SECRET= // test bot details
-DSLACK_TEST_USER_ID= // your or another test user id

Get your Slack user ID:

  1. Click on your profile picture
  2. Click "View full profile"
  3. Click on "more" and click "Copy member ID"

Additionally, you also need Google Service Account Credentials to be able to access Google Sheets, which need to reside in <user.home>/conf/credentials.json.

Deploying to production

  • Run ./gradlew bootJar and deploy to Enscale using the Deployment Manager.
  • Remember to use the variable SLACK_TEAM_GROUP_ID instead of SLACK_TEST_USER_ID when you are ready to send this message to more than one person.

Releases

No releases published

Packages

No packages published

Languages