This is the Discord Bot created to manage a Korean Educational Community with a user-base of 2,500 at the time of development.
-
User Authorization
- Allows moderators to post multiple non-link messages in link channels without being warned/muted.
- Prevents regular users from using moderator commands.
-
Expletive Filter
- Immediately filters messages that include expletives and replaces them with clean version of original messages.
-
Unique User Activity Tracking
- Tracks each user's unique activity and rewards active users by promoting them to a role with higher seniority.
-
Korean Usage Enforcement
- Warns and ultimately temporarily mutes users when 8 or more messages that don't include Korean characters are sent consecutively in the specified Korean practice channel.
-
Enforced Link Sharing
- Uniquely tracks, warns, and ultimately temporarily mutes users when they post 3 or more messages that don't include links.
-
Facilitates Korean Typing Exercises
- Provides weekly vocabulary words to users to type in Korean and times how quickly they are able to type them out in Korean.
-
Keep Pinned Messages Under 50
- Automatically unpins oldest message when a channel reaches its 50 pin limit.
-
Manage Study Session
- Create study sessions that other users can subscribe to.
- Possibility to list upcoming study sessions.
- Possibility to subscribe/unsubscribe to a study session.
- Possibility to cancel a study session
Explanation | Accessible to | Command |
---|---|---|
Check if bot is running | Everyone | Wake up! @ Bot's name |
Start Korean Typing Exercise | Everyone | @ Bot's name typing- OR - !t |
Create Study Session | Everyone | !study A message that includes: YYYY/MM/DD and HH:mm am/pm (ex. 2021/01/25 02:00 am) |
Cancel Study Session | Everyone | !cancel study A message that includes: YYYY/MM/DD and HH:mm am/pm (ex. 2021/01/25 02:00 am) |
List Upcoming Study Sessions | Everyone | !upcoming study |
Move all pinned messages to another channel | Moderators | @ Bot's name copy the pins here@ Bot's name paste the pins here |
Manually Unmute users (used for emergencies if user is stuck on mute) | Moderators | Unmute @ User's name (This unmutes a single user) - OR - Unmute everyone @ Bot's name (This unmutes everyone) |