Slack management bot for the DiversaSpotting competition.
- Reach out to Thomas Wang for
.env
variables and to add collaborators on the Slack API console - Run
./setup.sh
to download CockroachDB certificates, create your local python virtual environment, and download dependencies - Test locally, and make a PR :)
Note that the production app is hosted on Heroku, which updates automatically upon any changes to main
. So please, don't push to main.
TODO: Add a --test flag to differentiate production and testing environments TODO: Need to create seperate testing server endpoints for Slack
- Run the server using either:
python app.py
(if virtual environment is activated)./diversavenv/bin/python3.10 app.py
- Run
ngrok http 3000
to expose the port - Copy paste the expose web link and add it in the
Event Subscriptions
and theInteractivity & Shortcuts
sidebar tabs.
- app.py: entry-point executable to run a diversabot server instance. does not support concurrent server instnaces
- utils.py: misc utility functions
- models: sqlalchemy ORM models
- blocks: slack block templates for message output UIs
- spotting (uploading an image and tag people records a diversaspot)
- diversabot miss
- diversabot leaderboard
- diversabot stats
- diversabot rules
- diversabot flag
- diversabot unflag
- diversabot chum
- diversabot recap
- diversabot team-leaderboard
- diversabot ultimate-leaderboard
- DB migrated from Google Sheets to PostgreSQL
- All images are now permanently stored in S3 (Slack has a 90-day message retention limit)
Legacy Diversabot: https://github.com/thomaspwang/DiversaBot