warlof / seat-connector

Provide basic layer for SeAT connectors
GNU General Public License v3.0
1 stars 13 forks source link

[Feature request] mark discord sets as uncontrolled by seat #60

Open Nfinished opened 3 years ago

Nfinished commented 3 years ago

As an example I've got my security level set to strict, and autoassign connected users with alliance and corp discord roles. Any roles not explicitly assigned via access control in SeAT will be removed by the bot.

Today, if a user wants to join a ping group such as @mining, @ratting, etc, it requires an associated freejoin squad connected to discord roles. On a public server, this also immediately prevents any non-seat members from self-assigning the role.

Ideally, an admin could mark a group of discord roles 'unmanaged' or something similar, allowing users to self-assign/unassign discord roles by some other means like the popular bot reaction method.

warlof commented 3 years ago

This seems really discord specific

Nfinished commented 3 years ago

Yeah, I think so. Teamspeak already has channel roles which while not 1:1 with server roles are unmanaged by SeAT.

Nfinished commented 3 years ago

Looks like this has been discussed before in #16

Bonsailinse commented 3 years ago

One simple usecase is if you have roles that are not directly related to EVE Online. If I want to give social roles like "Other games", "Discord Moderator", "Twitch Subscriber", "CCP", other bots with their own roles, or really any role that is not related to the corporation itself I cannot have them below the bot role because it will remove them with every update.

So +1 for either having a way to manage a list of unmoderated roles or a mechanic where the bot only removes roles which are also given out by the bot.

To be honest this is a pretty major annoyance.

Bonsailinse commented 3 years ago

A much simpler edit would be if the function would not abort if one role cannot be unset. This way we could put the role of the bot below the the ones that should be unmanaged. The way error handling is done right now will prevent adding any role if something goes wrong.

That would not be pretty, but at least usable until the feature of uncontrolled roles are added.

Thanks!

Nfinished commented 3 years ago

Interesting solution but it could cause a conflict if the bot is used for anything else on the server. On Apr 12, 2021, 9:30 PM -0400, Robin Langenhorst @.***>, wrote:

A much simpler edit would be if the function would not abort if one role cannot be unset. This way we could put the role of the bot below the the ones that should be unmanaged. The way error handling is done right now will prevent adding any role if something goes wrong. That would not be pretty, but at least usable until the feature of uncontrolled roles are added. Thanks! —You are receiving this because you authored the thread.Reply to this email directly, view it on GitHub, or unsubscribe.

Bonsailinse commented 3 years ago

You only would need to change the error handling in the relevant function, don't see many problems relating other tasks the bot handles.

Nfinished commented 3 years ago

It'd by design prevent the same bot from managing seat and non-seat roles.

Bonsailinse commented 3 years ago

Not true, I just added a line to each function which skips the error handling so it just ignores if one role cannot be handled by the bot due to permissions. Now the function skips that role but still continues to try all other roles, so it adds/removes roles which are intended to be managed by SeAT.

This is by no means clean or a good way to handle it, but it was necessary for my server because the corp section is just an addition to a bigger community with a lot of manual managed roles.

squigglezworth commented 2 years ago

+1 for some way of handling this, please

geraldhollis commented 1 year ago

+1 for this for me too. Otherwise, this makes it difficult to have a combined Social/Eve Comms server.