Support bot written in python to help manage LizardByte communities. The current focus is Discord and Reddit, but other platforms such as GitHub discussions/issues might be added in the future.
| command | description |
|---|---|
| /help | Return help message, for a list of all possible commands |
- Setup an application at discord developer portal.
- On
Botpage enabled these:- Presence Intent
- Server Members Intent
- Copy the
Token
- Set up an application at reddit apps.
- The redirect uri should be https://localhost:8080
- Take note of the
client_idandclient_secret
- Add the following as environment variables or in a
.envfile (usesample.envas an example).
❗ if using Docker these can be arguments.
⚠️ Never publicly expose your tokens, secrets, or ids.
| variable | required | default | description |
|---|---|---|---|
| DATA_REPO | False | https://github.com/LizardByte/support-bot-data |
Repository to store persistent data. This repository should be private! |
| DATA_REPO_BRANCH | False | master |
Branch to store persistent data. |
| DISCORD_BOT_TOKEN | True | None |
Token from Bot page on discord developer portal. |
| DISCORD_CLIENT_ID | True | None |
Discord OAuth2 client id. |
| DISCORD_CLIENT_SECRET | True | None |
Discord OAuth2 client secret. |
| DISCORD_GITHUB_STATUS_CHANNEL_ID | True | None |
Channel ID to send GitHub status updates to. |
| DISCORD_REDDIT_CHANNEL_ID | True | None |
Channel ID to send Reddit post updates to. |
| DISCORD_REDIRECT_URI | False | https://localhost:8080/discord/callback |
The redirect uri for OAuth2. Must be publicly accessible. |
| DISCORD_SPONSORS_CHANNEL_ID | True | None |
Channel ID to send sponsorship updates to. |
| GIT_USER_EMAIL | True | None |
Email address for git commits. |
| GIT_USER_NAME | True | None |
Username for git commits. |
| GIT_TOKEN | True | None |
GitHub personal access token. Must have repo write access. Falls back to GITHUB_TOKEN. |
| GITHUB_CLIENT_ID | True | None |
GitHub OAuth2 client id. |
| GITHUB_CLIENT_SECRET | True | None |
GitHub OAuth2 client secret. |
| GITHUB_REDIRECT_URI | False | https://localhost:8080/github/callback |
The redirect uri for OAuth2. Must be publicly accessible. |
| GITHUB_TOKEN | True | None |
GitHub personal access token. Must have read:org |
| GITHUB_WEBHOOK_SECRET_KEY | True | None |
A secret value to ensure webhooks are from trusted sources. |
| GRAVATAR_EMAIL | False | None |
Gravatar email address for bot avatar. |
| PRAW_CLIENT_ID | True | None |
client_id from reddit app setup page. |
| PRAW_CLIENT_SECRET | True | None |
client_secret from reddit app setup page. |
| PRAW_SUBREDDIT | True | None |
Subreddit to monitor (reddit user should be moderator of the subreddit) |
| REDDIT_USERNAME | True | None |
Reddit username |
| REDDIT_PASSWORD | True | None |
Reddit password |
| SUPPORT_COMMANDS_REPO | False | https://github.com/LizardByte/support-bot-commands |
Repository for support commands. |
| SUPPORT_COMMANDS_BRANCH | False | master |
Branch for support commands. |
python -m src- Invite bot to server:
https://discord.com/api/oauth2/authorize?client_id=<the client id of the bot>&permissions=8&scope=bot%20applications.commands