Skip to content
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

Restrict Broadcasting to One User at a Time #6451

Open
imashoksundar opened this issue Jun 3, 2024 · 3 comments
Open

Restrict Broadcasting to One User at a Time #6451

imashoksundar opened this issue Jun 3, 2024 · 3 comments
Labels
acl Everything related to access-control-lists (permission management) client feature-request This issue or PR deals with a new feature server

Comments

@imashoksundar
Copy link

Context

No response

Description

Hi,

First of all, thanks for the wonderful project!

I have a requirement where only one person should be able to broadcast at any given time. If two people try to broadcast simultaneously, the second person should receive an error indicating that the channel is already in use.

Does Mumble have a built-in feature to support this kind of exclusive broadcasting, or would this require a custom implementation? If it's the latter, could you provide some guidance or point me in the right direction on how to achieve this?

Thank you for your help!

Mumble component

Both

OS-specific?

Yes

Additional information

No response

@imashoksundar imashoksundar added feature-request This issue or PR deals with a new feature triage This issue is waiting to be triaged by one of the project members labels Jun 3, 2024
@Hartmnt
Copy link
Member

Hartmnt commented Jun 3, 2024

This is not possible with Mumble, if you want all users to be in the same channel. It would be possible with ACL to create a "speak" channel with a maximum user count of 1 and a "listen" channel without speak permission. This would require you to move the users or the users to go into the "speak" channel by themselves.

The Mumble server does not process the speech, it only forwards the packages. That means you could implement this by sending a "permission denied"-like message when a user speaks while another user is speaking. The file to do this would be src/murmur/Messages.cpp I think.

To make this useful for a broader audience (not only your specific case) you would probably have to implement a "maximum user speaking counter" in the channel settings and allow for N users to speak at once (where N is a number). And then we would need to communicate this clearly to the users without spamming "permission denied" messages... So this is not trivial to get right.

@Hartmnt Hartmnt added client server acl Everything related to access-control-lists (permission management) and removed triage This issue is waiting to be triaged by one of the project members labels Jun 3, 2024
@imashoksundar
Copy link
Author

Hi,

Thank you for your prompt response and the detailed explanation. I'll try those suggestions out.

@Krzmbrzl
Copy link
Member

Krzmbrzl commented Jun 5, 2024

Also, while technically not what you are asking for, there is the priority speaker functionality. With this, the current priority speaker can talk and while they do, everyone else's voice is attenuated (not silenced though). Maybe this is sufficient for your use-case?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
acl Everything related to access-control-lists (permission management) client feature-request This issue or PR deals with a new feature server
Projects
None yet
Development

No branches or pull requests

3 participants