MarcusOtter / discord-needle

Needle is a Discord bot that creates Discord threads automatically.
https://needle.gg
GNU Affero General Public License v3.0
203 stars 53 forks source link

💡 A way to manage bunch of channels at one go #202

Closed Manik2375 closed 9 months ago

Manik2375 commented 2 years ago

Describe the improvement

To configure threads, we need to use /configure auto-threading which only works for one channel at a time, which makes it annoying if we want to change the setting for different channels.

For example, we have development category with same thread setting. Now, if I want to change custom message for all of them, I need to do it one by one for every channel. It would be great if we can select multiple channels or the whole category and change everything in one go. (Like discord inherited/synced category permissions)

Problems this improvement solves

It makes it easy to do bot configuration, moreover will save a lot of time if we want to change multiple channel settings.

Alternative solutions

No response

MarcusOtter commented 2 years ago

I wouldn't be entirely opposed of adding the option to set auto-threading on a category, and it's come up before, but more often than not this indicates to me that there may be too many channels in the server, UX-wise. Copy pasting the command a handful of times shouldn't be too time consuming with a reasonable amount of channels. I guess since you have to type the channel name it gets more annoying since you have to change that, but #190 should make that easier eventually.

One downside of this is that we have to handle specificity, i.e., if someone does /configure auto-threading on a channel that is under a category with auto-threading, that has to override the category setting. So I'm not opposed to the idea but I also think that the use case maybe shouldn't be a thing in the first place (needing 10+ channels with auto-thread).

MarcusOtter commented 2 years ago

(also, if we were to implement this, new channels that are added to the category should also be auto-threaded)

Manik2375 commented 2 years ago

One downside of this is that we have to handle specificity

Yeah I agree, then you need to handle specificity, in our case we just want all the channels under development category to have same settings. And if new channels are added to the category, like discord permissions I'd also like it to get the auto-thread settings automatically. Currently in our development category, we have about 7 channels (were about 11 before, but we merged some of them). Before I wasn't fully sure if in discord we can select the whole category, but we used a reputation bot which allowed us to get the category so I thought of suggesting it.

Another benefit I can think of is, if all the categories have their own settings, so if now I move my channel from development to archive category the threads will get automatically disable.

jpgklassen commented 2 years ago

Eagerly awaiting this feature! I have reminded my fellow mods over and over to add Needle to all new channels in our Practice Logs category, but they always forget. Our channels are a mess and it's driving me crazy. 😝

MarcusOtter commented 2 years ago

Since there's no way to see the current settings right now I feel like the proposed solution for bulk-edits is pretty bad for UX. Once you set the auto-thread settings for a category, how would you know which categories have auto threading? And which channels under this category overrides the category's auto-thread settings?

If we were to add some way to see current settings (which I experimented with for 3.0.0 but ended up scrapping) - how should it work and look? UI-wise I think it will be a challenge to show the current settings in a good way (which is why I scrapped it).

The one way I could see this being added without too many problems is probably if we remove this requirement:

(also, if we were to implement this, new channels that are added to the category should also be auto-threaded)

If we removed that we could just iterate over all channels in the user-provided category and set each individual channel configuration to the new configuration options they provided (which would overwrite the individual settings for all those channels).

But I don't really like that UX either. Not only do you have to drag all the channels to a certain category to do this bulk-edit (even if they shouldn't even be in the same category after the bulk edit), but there is also no information on the category that makes new channels follow the rule.

To be honest I don't have any ideas for a way to add this where I'm happy with the UX. What I recommend now is just copy-pasting the commands for each channel, which should be fairly straight forward (Discord UI can be a bit wonky, but if you press SPACE after pasting the command it should work correctly). Remember that the channel is optional, and by default it will use the channel you send the command in (so you can omit it when copy-pasting). If you want the same reply-message for many channels I suggest setting the /setting SuccessThreadCreated message (though if you want new lines I think that's blocked by #292).

If anyone has any good ideas for a good UX with bulk edit feature I'm all ears!

MarcusOtter commented 2 years ago

(and a web dashboard is not planned even if this would give the best UX, reasons mentioned in #248)

MarcusOtter commented 9 months ago

No good proposals for UX, going to close this as not planned until that's figured out