Is there a documentation for the lobby feature just arrived

Dear gpatel-fr,
thanks for your patience!

The lobby problem is solved.

I removed now only the line “muc_lobby_rooms”;
under the main VirtualHost section
and now the knocking function of lobby is working!

I have to admit that the descriptions linked in this thread have not been very clear, at least to me.

kind regards, and thx to all,
MS

Summary:
sudo nano -w /etc/prosody/conf.d/myserver.com.cfg.lua

  1. Under the main VirtualHost delete “muc_lobby_rooms”,

VirtualHost “meet.myserver.com
.
.
.
“speakerstats”;
“turncredentials”;
“conference_duration”;
“muc_lobby_rooms”; ##this line needs to be removed!##
}
c2s_require_encryption = false
lobby_muc = “lobby.meet.myserver.com
main_muc = “conference.meet.myserver.com
– muc_lobby_whitelist = { “recorder.meet.myserver.com” } – Here we can whitelist jibri to enter lobby enabled rooms
Component “conference.meet.myserver.com” “muc”
.
.
.
2. At the bottom of the file add following lines, then restart prosody:

VirtualHost “guest.meet.myserver.com
authentication = “anonymous”
c2s_require_encryption = false
modules_enabled = {
“muc_lobby_rooms”;
}
lobby_muc = “lobby.meet.myserver.com
main_muc = “conference.meet.myserver.com
Component “lobby.meet.myserver.com” “muc”
storage = “memory”
restrict_room_creation = true
muc_room_locking = false
muc_room_default_public_jids = true

@Mr_Smith, Glad it working for you now.

@gpatel-fr, you really stuck with this… As I have seen you frequently do… when others would have given up. Appreciate that!

Others, who find their way here, and reach the bottom, you can jump to a working lobby configuration, here.

1 Like

i have gone thoroughly through the above discussions. but still not able to activate the lobby feature. nor i am able to see the shield icon in my screen.

the prosody version i am having is 0.11.4-1 ;
jicofo is stable 1.0-567-1 and the
jitsi-videobridge2 version is 2.1-197-g38256192-1

i am uploading the cfg.lua files .
the file uploaded from /etc/prosody/conf.d/ is named as conf_d_10.33.1.cfg.lua.txt and
the file uploaded from /etc/prosody/conf.avail/ is named as conf_avail_10.33.1.cfg.lua.txt.

can anyone suggest where i the error i am committing.
thanks in advance.
conf_avail_10.33.1.231.cfg.lua.txt (3.1 KB) conf_d_10.33.1.231.cfg.lua.txt (2.8 KB)

I’m hardly the expert in matters jitsi, but I’ve had lobby working for a few weeks and noticed a few differences in your config vs. my own.

Re: /etc/prosody/conf.avail/your-domain.cfg.lua, you have:

VirtualHost "your-domain"
    ...
    authentication = "internal_plain" 
    ...
    modules_enabled = {
        ...
        "muc_lobby_rooms";
    }
    ...
    lobby_muc = "lobby.your-domain"
    ...

VirtualHost "guest.your-domain"
    authentication = "anonymous"
    c2s_require_encryption = false

By comparison my config contains:

VirtualHost "my-domain"
    ...
    authentication = "internal_hashed" 
    ...
    modules_enabled = {
        ...
    }
    ...

...

VirtualHost "guest.my-domain"
    authentication = "anonymous"
    modules_enabled = {
        "turncredentials";
        "muc_lobby_rooms";
    }
    lobby_muc = "lobby.my-domain"
    main_muc = "conference.my-domain"
    c2s_require_encryption = false

AIUI your config doesn’t work because your main VirtualHost has “muc_lobby_rooms” among modules_enabled, and also includes the “lobby_muc = …” statement. Furthermore VirtualHost “guest.your-domain” doesn’t enable module “muc_lobby_rooms” and fails to include the other statements. (However needed Component “lobby.your-domain” was present.)

At least those are differences from my config. Of course similar points are made in prior comments, no doubt the advice offered is right on target.

FWIW I noticed your configs from conf.d and conf.avail differed. On my system, the file in conf.d is just a symlink to the one in conf.avail guaranteeing they’re identical.

I concur it sure seems it can be tricky getting everything right.

thanks @jrapdx . i will try to make the config file (xxxx.cfg.lua) in conf.avail and conf.d directories same and add the required statements as mentioned in the above post. let me try and then i will revert back.

i made a fresh install. i was able to activate the lobby feature. the lobby feature shown in file lobby.pnglobby

then i tried to add secure authentication in /etc/prosody/conf.avail/10.33.1.231.cfg.lua. image file is

after adding that feature the lobby feature disappeared

i am guessing we can have either lobby feature or authentication , but not both.

can anybody throw light on this issue.
thanks in advance.

Hi
I am unable to enable lobby feature.I am using JWT token based authentication.Please find attached file artaticsxauuio.com.cfg.lua and logs.Please help what i am doing wrong.
Here are the logs:

Sep 15 13:49:15 modulemanager error Unable to load module ‘muc_lobby_rooms’: /usr/lib/prosody/modules/mod_muc_lobby_rooms.lua: No such file or directory

I have same issue “error Unable to load module ‘muc_lobby_rooms’: /usr/lib/prosody/modules/mod_muc_lobby_rooms.lua: No such file or directory”
plugin_paths = { “/usr/share/jitsi-meet/prosody-plugins/” }
Kindly help what i am doing wrong

Kindly see my file whats the issue?
root@ubuntu-s-1vcpu-2gb-nyc1-01:/etc/prosody/conf.avail# cat mydomain.cfg.lua
plugin_paths = { “/usr/share/jitsi-meet/prosody-plugins/” }

– domain mapper options, must at least have domain base set to use the mapper
muc_mapper_domain_base = “mydomain”;

turncredentials_secret = “secret”;

turncredentials = {
{ type = “stun”, host = “mydomain”, port = “4446” },
{ type = “turn”, host = “mydomain”, port = “4446”, transport = “udp” },
{ type = “turns”, host = “mydomain”, port = “443”, transport = “tcp” }
};

cross_domain_bosh = false;
consider_bosh_secure = true;
– https_ports = { }; – Remove this line to prevent listening on port 5284

VirtualHost “mydomain”
– enabled = false – Remove this line to enable this host
– authentication = “anonymous”
authentication = “internal_hashed”
– Properties below are modified by jitsi-meet-tokens package config
– and authentication above is switched to “token”
–app_id=“example_app_id”
–app_secret=“example_app_secret”
– Assign this host a certificate for TLS, otherwise it would use the one
– set in the global section (if any).
– Note that old-style SSL on port 5223 only supports one certificate, and will always
– use the global one.
ssl = {
key = “/etc/prosody/certs/mydomain.key”;
certificate = “/etc/prosody/certs/mydomain.crt”;
}
speakerstats_component = “speakerstats.mydomain”
conference_duration_component = “conferenceduration.mydomain”
– we need bosh
modules_enabled = {
“bosh”;
“pubsub”;
“ping”; – Enable mod_ping
“speakerstats”;
“turncredentials”;
“conference_duration”;
“mod_pinger”;
}
c2s_require_encryption = false

Component “conference.mydomain” “muc”
storage = “memory”
modules_enabled = {
“muc_meeting_id”;
“muc_domain_mapper”;
– “token_verification”;
}
admins = { “focus@auth.mydomain” }
muc_room_locking = false
muc_room_default_public_jids = true

– internal muc component
Component “internal.auth.mydomain” “muc”
storage = “memory”
modules_enabled = {
“ping”;
}
admins = { “focus@auth.mydomain”, “jvb@auth.mydomain” }
muc_room_locking = false
muc_room_default_public_jids = true

VirtualHost “auth.mydomain”
ssl = {
key = “/etc/prosody/certs/auth.mydomain.key”;
certificate = “/etc/prosody/certs/auth.mydomain.crt”;
}
authentication = “internal_plain”

Component “focus.mydomain”
component_secret = “sInwXTzh”

Component “speakerstats.mydomain” “speakerstats_component”
muc_component = “conference.mydomain”

Component “conferenceduration.mydomain” “conference_duration_component”
muc_component = “conference.mydomain”

VirtualHost “guest.mydomain”
authentication = “anonymous”
c2s_require_encryption = false
modules_enabled = {
“muc_lobby_rooms”;
}
lobby_muc = “lobby.mydomain”
main_muc = “conference.mydomain”

–local formdecode = require “util.http”.formdecode;
Component “lobby.meeting.mydomain” “muc”
storage = “memory”
restrict_room_creation = true
muc_room_locking = false
muc_room_default_public_jids = true

The lobby feature is working great for us, but is there a way to default it to enabled on all meetings? Our hosts often forget to enable it.