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

Moderation Manager #51

Closed
binaryoverload opened this issue Feb 24, 2019 · 18 comments
Closed

Moderation Manager #51

binaryoverload opened this issue Feb 24, 2019 · 18 comments
Assignees
Labels
status: approved to work on Issues and pull requests labelled with this have been cleared to start work on type: core functionality
Milestone

Comments

@binaryoverload
Copy link
Member

binaryoverload commented Feb 24, 2019

It will be good for us to have a central moderation manager that allows all moderation actions to have consistency in terms of errors and responses and also allow easy integration with the modlog system when we decide to do it

@binaryoverload
Copy link
Member Author

binaryoverload commented Feb 24, 2019

Moderation actions that need to be implemented:

  • Ban
  • Kick
  • Mute
  • Softban
  • Warn

These will be contained in an enum

@binaryoverload
Copy link
Member Author

The main method for this will be a handleModeration method having the following parameters:

  • context - The command context to be able to access guild information as well as respond back to the user
  • action - The moderation action to be executed, this will be one of the items off the list
  • target - The Member that the action is to be executed against
  • submitter - The Member that the action was executed by
  • reason - The possible blank/null reason for this action. Whether this reason can be blank is down to the different moderation actions which will respond appropriately

@binaryoverload
Copy link
Member Author

@CascadeBot/cascadebot-contributors Anything to add to this?

@JamesHawkinss
Copy link
Contributor

Looks good at the moment, this would simplify things a lot and would also make creating new moderation commands.

Would we be able to make this sort of manager for informational commands as well, or would it not be worth it? @binaryoverload

@binaryoverload
Copy link
Member Author

What sort of manager have you got in mind for informational? I don't see a common feature we could be able to have across different informational commands. Maybe a better way to do different embed fields but it wouldn't be a manager.

@JamesHawkinss
Copy link
Contributor

Perhaps not for specifically informational but instead one for error messages? We seem to reuse several of (nearly) the same errors and having a centralised system for calling error messages might be good for continutity between commands.

@binaryoverload
Copy link
Member Author

Draft up your ideas and examples into another issue, I like where you're coming from.

@binaryoverload
Copy link
Member Author

binaryoverload commented Feb 26, 2019

@weeryan17 Anything you would like to see make it into the moderation manager?

@weeryan17
Copy link
Member

Not really. the only thing I'd like to mention is if we're going with on central method that method is going to be really complicated. maybe we could have a method for temp and a different method for everything else? Also i noticed you didn't bring up temp punishments here so we should plan those out as well cause i feel like those should be in the moderation manager.

@binaryoverload
Copy link
Member Author

Well my plan is to have this one method call different methods so it won't be one huge method. And the system will allow for temp just fine I just won't implement it

@weeryan17
Copy link
Member

Sounds good then

@binaryoverload
Copy link
Member Author

@mrjvs Any insights on how we should do the UX for displaying various messages relating to moderation actions?

@mrjvs
Copy link
Member

mrjvs commented Feb 26, 2019

Wasn’t expecting this oof, i don’t have any ideas atm. I’ll get back to this tomorrow as I’m taking a day off to relax.

@mrjvs mrjvs closed this as completed Feb 26, 2019
CascadeBot Alpha automation moved this from To Do to Closed Feb 26, 2019
@mrjvs mrjvs reopened this Feb 26, 2019
CascadeBot Alpha automation moved this from Closed to In progress Feb 26, 2019
@weeryan17 weeryan17 moved this from In progress to To Do in CascadeBot Alpha Feb 26, 2019
@mrjvs
Copy link
Member

mrjvs commented Feb 27, 2019

https://i.imgur.com/Os34UJn.png here is visual representation of responses. All of the errors can and should be in the same format for all moderation actions (maybe phrase it a bit different, im looking at you binary. it should not be fields tho, sentences should flow easily instead of just stating stuff). format should also be consistent for the command structure, the last thing you want when banning a user is forgetting the format of the command. The colors (which are not final) should probably be put in an enum because those will be consistent throughout the entire bot.

@binaryoverload
Copy link
Member Author

binaryoverload commented Feb 27, 2019

@mrjvs Awesome thanks! On the context of colours, at the moment we just use standard red, green and yellow colours provided by Java. Did you want us to continue using these or did you want to have others?

@mrjvs
Copy link
Member

mrjvs commented Feb 27, 2019

@binaryoverload custom colors probably, just have an enum with colors ready for easy modification for later.

@binaryoverload binaryoverload self-assigned this Feb 27, 2019
@binaryoverload
Copy link
Member Author

@binaryoverload custom colors probably, just have an enum with colors ready for easy modification for later.

Sounds good, I have opened #53 relating to this

@binaryoverload binaryoverload added the status: approved to work on Issues and pull requests labelled with this have been cleared to start work on label Feb 27, 2019
@binaryoverload
Copy link
Member Author

Waiting on #46 so I can integrate the manager into in

@binaryoverload binaryoverload moved this from To Do to In progress in CascadeBot Alpha Mar 9, 2019
@binaryoverload binaryoverload mentioned this issue Mar 9, 2019
4 tasks
@binaryoverload binaryoverload removed this from In progress in CascadeBot Alpha Mar 11, 2019
@binaryoverload binaryoverload mentioned this issue Mar 31, 2019
4 tasks
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
status: approved to work on Issues and pull requests labelled with this have been cleared to start work on type: core functionality
Projects
None yet
Development

No branches or pull requests

4 participants