-
Notifications
You must be signed in to change notification settings - Fork 2.5k
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
Add kick_all requests and possibility to remove PIN code to both Audiobridge and Streaming plugins #2978
Add kick_all requests and possibility to remove PIN code to both Audiobridge and Streaming plugins #2978
Conversation
…udiobridge and the Streaming plugins
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.
Thanks! I think this may be useful in VideoRoom and TextRoom as well, so in case I'll work on a similar enhancement for those too should this be merged.
That said, I think this patch needs work. First of all, I don't think this new functionality is needed at all in the Streaming plugin, since we have a request called "disable" that is very similar, and so maybe just needs to be extended a bit if it doesn't do exactly what you need. For the AudioBridge, as I pointed out in the review below, I'd definitely cut down the potentially huge number of notifications you're generating.
I'll do a deeper code review after the patch is updated.
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.
Thanks! Added a few notes inline.
@lminiero Changes done, please have a look at the refcounts and mutexes, as I'm not 100% sure about the ordering. Also, in Streaming plugin Is this needed with |
Just as a quick note, I haven't forgotten about this! I'll have to review the use of mutexes as you suggested, and I'll do it in the next few days. |
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.
Thanks for the changes! They all look fine to me. The note you see below is a memo to me, so something I have to fix in the existing code myself.
I'll make a couple of tests later, and in case I don't see issues, I'll merge 👍
Thanks for the quick fix! Finally merging then 💪 |
This PR adds the following features to both the Audiobridge and the Streaming plugins:
kick_all
request, which kicks and disconnects all participants in an Audiobridge room and disconnects all viewers/listeners in a Streaming plugin endpointBoth of these features are very useful if one needs to be able to control the set of participants/viewers in these plugins for long-lived mountpoints and/or rooms.
My specific application is using these features for providing exclusive (reserved) access to audio streams by following this process:
kick_all
requests to guarantee that there are no participants/viewers left after changing the PIN code