Skip to content
This repository has been archived by the owner on Jun 23, 2022. It is now read-only.

New features for bot, user blacklist, command whitelist, ticket system for reports and maybe docker support (postgresql) #72

Open
Nipa-Dev opened this issue Jan 6, 2022 · 5 comments
Assignees
Labels
enhancement New feature or request help wanted Extra attention is needed

Comments

@Nipa-Dev
Copy link
Contributor

Nipa-Dev commented Jan 6, 2022

Is your feature request related to a problem? Please describe.
The features are not related to any existing problems, these are features that I'm thinking of adding. These features would be following: user blacklist, command whitelist, ticket system for reports and maybe docker support.

Describe the solution you'd like
I would be setting up postgres database for those features to manage per guild management. Blacklist will be global, which means it applies to all guilds the bot is in. Ticket system would be set up for support server and additional details of how to use it would be explained in reports channel.

Additional context
User blacklist means that they will not be able to run any or specific commands at all, if user spams, abuses or breaks ToS of the bot it is useful to not allow them use the bot, blacklist can be temporary.
Command whitelist is used to limit command(s) to specified channel, this prevents spam on other channels.
Ticket system is for reporting bugs/exploits or anything that will later be specified, will be set up for support server.
Docker support will be useful for other developers to quickly set up the bot without the need of messing with files etc.

@Pandabweer Pandabweer changed the title New features for bot New features for bot, user blacklist, command whitelist, ticket system for reports and maybe docker support (postgresql) Jan 6, 2022
@Pandabweer
Copy link
Collaborator

This a lot of additions in one go.
Who is going to make this?

Also want @CaedenPH his opinion on the matter since we are already decided to use Mongo, although i do prefer postgresql i do want only 1 database to avoid confusion.

@Pandabweer Pandabweer added enhancement New feature or request help wanted Extra attention is needed on-hold Review later for assignment question Further information is requested labels Jan 6, 2022
@Nipa-Dev
Copy link
Contributor Author

Nipa-Dev commented Jan 6, 2022

I'm interested in making either blacklist or whitelist, ticket stuff requires button and channel creation which I'm not too good at. I can manage some SQL stuff but I'm waiting for decision over the database things.

@Pandabweer Pandabweer removed question Further information is requested on-hold Review later for assignment labels Jan 6, 2022
@Robin5605
Copy link
Collaborator

Since this has to do with the database, I think it would be more suited to add to the API. I am responsible for the development of said API. Perhaps we can work something out like so:

  • POST /add_blacklisted_user - Takes a user ID in the POST body, and adds it to the database
  • GET /blacklisted_users - Takes no arguments, returns a list of user IDs that are blacklisted.

Feel free to suggest any other endpoints and their arguments that I can implement. If you are familiar with Express.js and the Prisma ORM, you may contribute to this GitHub, after I commit the initial files.

@Nipa-Dev
Copy link
Contributor Author

Nipa-Dev commented Jan 7, 2022

In case we want to remove user from blacklist for any reason, maybe it should have endpoint remove_user which takes 1 argument that is user ID
Also, if it makes sense could we store the reason for blacklist as well that would be returned when blacklisted_users endpoint is returning list of users that are blacklisted, that would require adding new argument to these endpoint which could be "reason". This feature is just to keep track on why they were blacklisted in first place, but if it causes any sort of problems it can be left. Otherwise that looks perfect!

@Dhruvin12
Copy link
Contributor

Maybe add a guild_id column so we can differ it with the guild id, so that if the user is muted in 2 guild's, without the guild id the user would be unmuted in both of the servers.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
enhancement New feature or request help wanted Extra attention is needed
Projects
None yet
Development

No branches or pull requests

4 participants