clowdr-app / clowdr

Midspace (formerly Clowdr) is a completely open-source virtual conference platform. Host complex events with hundreds of authors and presenters. Midspace includes automated livestreams, video chat, text chat, randomised networking and much more.
https://www.midspace.app/
GNU Affero General Public License v3.0
59 stars 20 forks source link

Host controls in Vonage rooms #71

Open bcpierce00 opened 3 years ago

bcpierce00 commented 3 years ago

For big meetings in Clowdr rooms, we really need host controls - in particular, "mute everybody".

EdNutting commented 3 years ago

@rossng Can we send Vonage requests from one user to mute another user? Or achieve this by sending an Action request and have the Actions service contact Vonage to mute the relevant user?

Or will we have to somehow route this through our backend such that the frontend of the "client to be muted" picks up the request and mutes themselves?

rossng commented 3 years ago

The main issue here is that we need a way to decide who is allowed to do the muting. I think the best option is to use the room people - i.e. room admins are allowed to mute people. There are a few hurdles to overcome atm:

rossng commented 3 years ago

wrt the technical implementation, it can work either way. You can mint Vonage tokens with a 'moderator' role - see https://learn.vonage.com/blog/2020/11/12/ban-the-trolls-adding-moderation-to-the-video-api/

It might be a little tricky to keep this in sync with our database's view of who is a moderator.

We could also implement it purely through the actions service talking to the Vonage REST API.

EdNutting commented 3 years ago
bcpierce00 commented 3 years ago

Agreed.

EdNutting commented 3 years ago

My PR gets us 80% of the way there.

Remaining todos (not implementing this week):

bcpierce00 commented 3 years ago

I would say yes, at least as an experiment to see whether people like it. The use case is that someone leaves their desk but forgets to mute and starts vacuuming...