-
-
Notifications
You must be signed in to change notification settings - Fork 105
feat(DynamicVoiceChat): implement main logic #1370
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
Co-authored-by: Suraj Kumar <76599223+surajkumar@users.noreply.github.com> Signed-off-by: Chris Sdogkos <work@chris-sdogkos.com>
Using 'Logger#info' is too spammy in the console, use 'Logger#trace' instead. Signed-off-by: Chris Sdogkos <work@chris-sdogkos.com>
Signed-off-by: Chris Sdogkos <work@chris-sdogkos.com>
Signed-off-by: Chris Sdogkos <work@chris-sdogkos.com>
tj-wazei
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Happy with this and have tested.
application/src/main/java/org/togetherjava/tjbot/features/voicechat/DynamicVoiceChat.java
Outdated
Show resolved
Hide resolved
|
Would love to carry this feature forward, got permission from @christolis |
|
Just some things to note: "Support/Studying Room" with no numbers produces the desired result of TJ creating a temp channel for the user and deleting it when everyone leaves the channel. "Support/Studying Room" with any number after it (1,2,3,4) does not produce a temp channel, and the channel itself it deleted after everyone leaves the channel. This brings me to the question of when this gets implemented, will we have only one channel, "Support/Studying Room", with no numbers? If so, this does not need to be addressed. If there will still be 4 different studying channels as it is currently, this is something that will need to be handled. Just wanted to confirm before tackling that, since it's not really an issue per se if the channel is just "Support/Studying Room" with no numbers |
Signed-off-by: Chris Sdogkos <work@chris-sdogkos.com>
Currently there is no way to moderate ephemeral voice channels. Members could very easily break the rules in the channel, send NSFW content and it can go undetected by the moderation team. Introduce a new archival system where the ephemeral voice channels are instead stored in an archival category. Depending on the archival strategy, channels are removed once they are not needed any more. Routines are not being used since we are able to get away with attempting cleanup every time a user leaves an ephemeral voice channel. This results in superior performance and no scheduling involved. Do _not_ archive ephemeral voice channels with no contents sent by members. Signed-off-by: Chris Sdogkos <work@chris-sdogkos.com>
|
@Zachdehooge I apologize for not responding to your question promptly.
On 1/11/26 19:40, Zach wrote:
Zachdehooge left a comment (Together-Java/TJ-Bot#1370)
This brings me to the question of when this gets implemented, will we have only one channel, "Support/Studying Room", with no numbers? If so, this does not need to be addressed.
I assume that this is going to be the case. It will need to be handled
by an authorized member of our community to update the channels
appropriately though.
Just wanted to confirm before tackling that
Absolutely, and thank you for asking that :)
|
This is why breaks are important, I committed my previous changes while being hungry... Set realistic constant values for CLEAN_CHANNELS_AMOUNT and MINIMUM_CHANNELS_AMOUNT so that more channels are kept in the archive. Signed-off-by: Chris Sdogkos <work@chris-sdogkos.com>
application/src/main/java/org/togetherjava/tjbot/features/voicechat/DynamicVoiceChat.java
Show resolved
Hide resolved
application/src/main/java/org/togetherjava/tjbot/features/voicechat/DynamicVoiceChat.java
Outdated
Show resolved
Hide resolved
The constant name is self-documenting. If someone wants to make it as well as other constants in this class configurable later, they can submit a pull request with _actual reasoning_ instead of bikeshedding over a defensive comment. The constant is hardcoded because it's _unlikely_ anyone will want to change it. If that assumption proves wrong, it's trivial to refactor. Signed-off-by: Chris Sdogkos <work@chris-sdogkos.com>
For the purposes of speeding up the process of reviews and since it really doesn't matter if they are configurable or not (just extra unnecessary development time), move all the constants into the config.json so that users who run the bot can easily configure these constants without touching the code. Signed-off-by: Chris Sdogkos <work@chris-sdogkos.com>
Closes #1113.
Showcase
Screen.Recording.2026-01-04.at.02.35.21.mov
Configuration changes
dynamicChannelPatternsarchiveCategoryPatterncleanChannelsAmountminimumChannelsAmountThe category should obviously only be visible by moderators, so maintainer please make sure that's the case.