How yonatanahituv/discord-role-bot works
This is a single-guild Discord bot for configurable role assignment and community utilities. Members trigger configured question flows that assign Discord roles; the bot also supports role-database assignment, anonymous complaints, and optional MEE6 level-based assignment. An internal Redis-backed data layer serves bot features and includes an operator console for managing Discord channels and messages. The excerpts show key calls but omit much of both modules, so relationships for unsampled capabilities are included only where documented or visible.
Main entry points: main.py Bot event handler · db.py Role database API
Components 12
Discord bot
- Bot event handler
main.py - Question matchmaking
main.py - Role assignment
main.py - Anonymous complaints
main.py - MEE6 level assignment
main.py
Role data
- Role database API
db.py - Redis store
Operator tools
- Admin console
db.py
Other components
- Guild members
- Discord service
- Bot operator
- MEE6 API
Connections 15
- Guild members → Bot event handler: send commands
readme.md - Bot event handler → Question matchmaking: runs questions
readme.md - Question matchmaking → Discord service: assigns roles
main.py - Bot event handler → Role assignment: assigns roles
main.py - Role assignment → Role database API: reads role data
main.py - Bot event handler → Role database API: loads database
main.py - Role database API → Redis store: reads and writes
db.py - Role assignment → Discord service: applies roles
main.py - Bot event handler → Anonymous complaints: handles complaints
readme.md - Anonymous complaints → Discord service: sends moderator report
main.py - Bot event handler → MEE6 level assignment: checks levels
main.py - MEE6 level assignment → MEE6 API: fetches leaderboard
main.py - MEE6 level assignment → Discord service: assigns roles
main.py - Bot operator → Admin console: operates
db.py - Admin console → Discord service: manages channels
db.py