System for configuring Discord bots via a web interface

Ioan Clarke


Supervised by Liam Turner; Moderated by Alun D Preece

Bots allow a wide range of additional functionality to be integrated into Discord servers; from playing music and posting memes, to automatic moderation and providing functioning economies. Often, bots allow configuration of some parameters; for example, the message to send when a new user joins the server, or the nickname of the bot.

There are two main problems with the current way in which bots are configured. Firstly, most configurable bots are configured via users sending specific messages that are recognized as ‘commands’ by the bot; the bot can then adjust its behaviour according to the command that was sent. This may be manageable when there is only a small number of parameters that can be configured, but as the number of parameters or the number of configurable bots grows, problems arise, as configuring the bots relies on remembering a potentially large range of commands for each of them. Secondly, making a Discord bot configurable is very complex. Suppose a developer has created a Discord bot. If they want users to be able to configure the bot, the developer must create a database to store configurations, an API that allows the bot to communicate with the database, and if they want the bot to be configurable via a graphical interface, a frontend.

To solve these problems, a system was created that allows Discord server administrators to configure bots in their servers using an online graphical interface. The system is such that developers can easily allow their bots to be used with it. This allows server administrators to more conveniently configure bots and greatly reduces work for bot developers who wish their bots to be configurable.

Final Report (05/11/2021) [Zip Archive]

Publication Form