Dynamically create and delete voice channels based on activity
Closes #1113.
Media
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.
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.
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.
Going to help work on this.
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
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. :-)
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.
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. :)
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
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.
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).