element-call icon indicating copy to clipboard operation
element-call copied to clipboard

Disable registration on synapse but still be able to invite guest to element call (url and waiting room)

Open Thatoo opened this issue 2 years ago • 9 comments

Your use case

What would you like to do?

I would like to disable registration on my synapse server but still be able to invite guests on a call I launch on Element call.

Why would you like to do it?

Because my synapse server is small, only for the need of my little company (4 people) so I don't want to open registration but we would need sometime to invite people to a meeting on a call giving them a link.

How would you like to achieve it?

By adding these kind of config line to homeserver.yaml :

enable_registration: false
allow_guest_access_to_call: true
url_element_call_server: call.matrix.server-name.xyz
turn_allow_guests: true

And be able to config in element-call that a user who started a call can invite guests (and accept them when they are on a kind of waiting room).

Have you considered any alternatives?

I created a second synapse server with registration open dedicated to our element-call. That mean I need the double of server resources and I need to configure, set and maintain two synapse server instead of one. And anybody who knows the url of our element-call could use it and take ressources of our server.

Additional context

No response

Thatoo avatar Mar 02 '23 11:03 Thatoo

Have you considered enabling oidc in synapse instead of outright disabling registration? This will add an additional hurdle to keep casual users from registering fake accounts on your server. I am also working on a similar use case and yet to attempt oidc. Will be doing so shortly and will report back on my findings

saket424 avatar Mar 31 '23 05:03 saket424

The question is not about considereing oidc or any authentification system. The idea is that we want registered user only be able to start a call, being voice or video call, but still be able to invite non users to join that call thanks to a link without the need to authenticate (and certainly not register). These guest would be authorized to enter the call by the user who initiated it. The idea is to be able to :

  • disable registration on the synaspe server
  • allow users to invite guets to a call by sending a url to this call to some guests
  • allow guests (non user) to join a call thanks to that url and reach a waiting room
  • allow the moderator of the call to approve guests to join the call.

Thatoo avatar Oct 18 '23 10:10 Thatoo

I fully endorse this approach that you outlined above. What is missing for us to have this functionality?

saket424 avatar Oct 18 '23 11:10 saket424

Apart from:

  • allow users to invite guets to a call by sending a url to this call to some guests
  • allow guests (non user) to join a call thanks to that url and reach a waiting room
  • allow the moderator of the call to approve guests to join the call.

The invitation URL should be generated on the fly by the creator/admin of the call, with a "use" counter, so guests cannot share the URL other, potentially non-invited guests.

rwjack avatar Feb 04 '24 11:02 rwjack

Is this related to Element Call Video Rooms? I am facing a similar issue. We have a video room that we (the registered users) chat, but we occasionally need to invite people that are not registered to Matrix. This is very easy to do with Jitsi Video Rooms, but we are looking to move to Element Calls instead.

CC: @IceDBorn

jim3692 avatar May 28 '24 19:05 jim3692

The current "Guest Access" implementation is confusing to me, it doesn't make use of Matrix's Guest Access (which doesn't require registration enabled), it instead makes use of the dummy authentication type (which AFAIK is not supported by Synapse). Is there a reason for this?

I wonder what's the reason behind not using the native Guest Access, and rather trying to find a workaround to that via dummy auth?

Shivox avatar Mar 19 '25 12:03 Shivox

Because my synapse server is small, only for the need of my little company (4 people) so I don't want to open registration but we would need sometime to invite people to a meeting on a call giving them a link.

This is exactly our use case. For internal meetings, we just do a call in our Element chat room. But enabling external participants without opening up for registrations is a must for us.

hundeboll avatar May 19 '25 07:05 hundeboll

The current "Guest Access" implementation is confusing to me, it doesn't make use of Matrix's Guest Access (which doesn't require registration enabled), it instead makes use of the dummy authentication type (which AFAIK is not supported by Synapse). Is there a reason for this?

I wonder what's the reason behind not using the native Guest Access, and rather trying to find a workaround to that via dummy auth?

Sadly guest-access is not supported by MAS (https://matrix.org/blog/2025/01/06/authentication-changes/#disabling-guest-accounts). So going forward we need to find a sane method to grant guest access. However, this is currently not our priority as we are focusing on in-app calling.

fkwp avatar May 19 '25 07:05 fkwp

We need this feature within in-app calling too! I mean, we need sometime to invite people to a meeting on a call (in a video-room) giving them a link to join the call.

Thatoo avatar Oct 25 '25 22:10 Thatoo