Inspiration
As the world entered a state of quarantine many schools and programs moved online to help stop the spread. This massive move to online learning and interaction caused many users finding messaging platforms where they can interact with friends or online strangers. Discord is one of the largest messaging apps on the planet with millions using it to interact with people from across the globe to play games, voice chat with, and create communities. While this massive surge in social interaction can be great, the sad reality is that since many more younger kids are using these sites, there is a large amount of predators that pose as someone they are not to exploit these unaware users. Some of our team have younger siblings, who we are worried about their security as school moves online and they gain access to sites such as Discord where they can be exposed to bad people online.
What it does
This is a Discord bot that monitors a server chatroom and scans messages for certain keywords which may endanger minors, and then deletes the message containing it. We have the option to set certain protection levels so that the staff on a discord server may change how much they want to be blocked out depending on their server.
How we built it
We used Discord's open developer program to have a bot application that can be added to discord servers. Using Sublime Text to write a python script that the bot can read to detect the keywords and set its level, using GitHub to work on the code in iterations together, and then using discord's help command to learn how to use certain functions on discord.
Challenges we ran into
Unsurprisingly, we spent the majority of our time debugging while working on this project. Some issues we ran into were our lack of in depth knowledge about coding discord bots, preventing the bot from responding to itself, and being able to give the bot as many functions as we would have liked before the deadline. Our team learned a lot about coding for discord throughout this hackathon, and we did end up finding a method to prevent the bot from responding to itself. While we were not able to complete every feature we were considering, we got the basic functions done and have room to make additional improvements in the future.
Accomplishments that we're proud of
In the 24 hours we accomplished a great deal, the beginning was filled with brainstorming and testing of different ideas and eventually set our sights on Violet Shield. With most of us only having limited knowledge of Python and even less knowledge with creating a discord bot, we self taught ourselves how to use the discord API and apply it to our python script. We managed to get working protection levels for admins to set and the bot successfully deletes messages in chat that have certain keywords that could be harmful.
What we learned
We learned more about development using discord libraries and coding in general since each of us are fairly inexperienced using python and GitHub. We definitely have a deeper understanding of python functions and discord bot usage as a result of this hackathon, and would be able to apply our knowledge to different settings in the future. Another one of our initial ideas was using Swift coding for an app on iOS products, so we also learned a bit about how development with that would work.
What's next for Violet Shield
In future versions of this bot, we want to make it so a message is sent to a moderation channel, so server staff can see that those words were used and can check on the people that used them. We also partially worked on a feature that would allow staff to add words to certain protection letters, so in future versions, this feature would be implemented.
Built With
- asyncio
- discord.ext
- discord.py
- dotenv
- os
- python
- sublime-text
Log in or sign up for Devpost to join the conversation.