TJ-Bot icon indicating copy to clipboard operation
TJ-Bot copied to clipboard

Dynamically create and delete voice channels based on activity

Open christolis opened this issue 1 year ago • 10 comments

Closes #1113.

Media

output

Configuration changes

Property Description Type
dynamicVoiceChannelPatterns List of voice channel patterns to manage dynamically. List[String]

TODO

  • [ ] By @SquidXTV: Add a warning message on voice chat creation that messages are prone to deletion.

christolis avatar May 14 '24 16:05 christolis

I haven't looked at the code yet but I have some suggestions for the functionality.

  • We should have a new Voice Chat that's more descriptive on "hey you're about to create a new voice channel". Maybe something like "New Voice Channel" instead of using Chit Chat.
  • The new room should be based on the "creators" name e.g. "Christolis's Room" and it should automatically move you from the "New Voice Channel" to "Christolis's Room" (people can rename after as needed)
  • We should have a cleanup task e.g. if a voice channel has been empty for 5 minutes then it should be deleted.

Importantly, the existing channels should be protected from the changes that get implemented here.

This is just an IMO - we should wait for further feedback first.

tj-wazei avatar May 15 '24 16:05 tj-wazei

I love @tj-wazei suggestions, we shouldnt delete channels immediately and one more thing to add. We also wanna cap channel count to a certain limit. For example we can't have more than say 3 channels per category for now. We can put this limit in configuration so it's easily tweaked without making changes to code by maintainers.

ankitsmt211 avatar May 18 '24 08:05 ankitsmt211

Going to help work on this.

ZahirHumphries avatar Jun 27 '25 19:06 ZahirHumphries

Btw what happens to the chat of a voice channel? Do we simply delete the history? In that case we should also provide an initial message in the chat informing about that

SquidXTV avatar Aug 10 '25 17:08 SquidXTV

On 8/10/25 20:20, Connor Schweighöfer wrote:

SquidXTV left a comment (Together-Java/TJ-Bot#1114)

Btw what happens to the chat of a voice channel? Do we simply delete the history? In that case we should also provide an initial message in the chat informing about that

Good catch on this! The bot should send a message for each channel creation and notify the people who are connected to it that the texts sent in this channel are prone to deletion.

We could also add a command which only works for these dynamically-made channels that toggles the option of storing some sort of 'archive' somewhere in the server as a text file that contains the history of everything said in the channel.

Though I think that it would be too much effort, not a lot of members would benefit from this - much better to give them a warning prior instead. :-)

christolis avatar Aug 13 '25 18:08 christolis

warning at the beginning of the chat history sounds reasonable. but potentially also annoying to get a "new message"-notification each time u create a new voice channel. gotta see how this feels in practice.

deleting the channel with all its history is fine for me. those are throw-away-channels.

Zabuzard avatar Aug 14 '25 06:08 Zabuzard

On 8/14/25 09:33, Daniel Tischner wrote:

Zabuzard left a comment (Together-Java/TJ-Bot#1114)

but potentially also annoying to get a "new message"-notification each time u create a new voice channel. gotta see how this feels in practice.

This is a valid point Daniel, and thank you for bringing it up.

Considering the way the feature is currently designed, members can not possibly get a notification from the warning message in question, assuming we send it as soon as the channel is created and not as soon as a member joins it.

Unless it so happens that person A connects to 'Voice Channel 1' and as 'Voice Channel 2' is created (where the warning message will be sent in our hypothetical scenario), person B joins at the same time, the members will connect to these dynamic channels notifications-free.

Of course, this implies that we need to send the warning message to the first dynamic channel in existence, which is something that the Discord bot should easily be able to handle without any friction.

deleting the channel with all its history is fine for me. those are throw-away-channels.

That would also work perfectly fine. Keep in mind though that there is a realistic chance that some people might not treat them as such.

Of course they could use their common sense and save their findings in more important places, but ideally we would want to provide as least friction as possible for those who decide to collaborate in the voice channels.

Let me know what you think. :)

christolis avatar Aug 14 '25 09:08 christolis

something that is problematic is that we cannot store message content outside of discord (for legal/privacy reasons). neither can you offer some form of export feature that sends it to the users, for example as file.

message content needs to stay inside discord. so if we want to archive something, that archive must be in discord and available to the users in a way that they can for example still delete their own messages if desired.

i dont really see a practical solution to that. so best is probably to get rid of the channels id assume

Zabuzard avatar Aug 14 '25 11:08 Zabuzard

i dont really see a practical solution to that. so best is probably to get rid of the channels id assume

I would also say that there isn't a need for that in practice. Like check the current channel's chat history. They mostly consist of convos between people using mic vs people just listening and writing messages instead, so archiving that is mostly out of context.

SquidXTV avatar Aug 14 '25 11:08 SquidXTV

On 8/14/25 14:36, Daniel Tischner wrote:

something that is problematic is that we cannot store message content outside of discord (for legal/privacy reasons).

I agree with that. The warning message should only mention that the messages are prone to deletion as it is an ephemeral voice channel.

It is unnecessary (and as you mentioned, illegal) to provide an option for members to export a chat log of the voice channel they were in.

so if we want to archive something, that archive must be in discord and available to the users in a way that they can for example still delete their own messages if desired.

We could implement something like this in the future if there's demand for it, but I highly doubt there will be. So for the time being, we could just send a warning message inside these dynamic channels that the messages are prone to deletion, and once everybody disconnects, just delete that voice channel (and by extension, its chat history).

christolis avatar Aug 14 '25 12:08 christolis