FIX: Lobby Not Working After Upgrade to Latest Version (2.0.5390)

Because there have been quite a number of posts on this, I’m posting this here for anyone else who may run into the issue.

Background
In previous versions of Jitsi, you had to move the lobby configuration under the “guest” VirtualHost (VirtualHost "guest.your.domain.com") in order to get lobby to work. This was however a temporary workaround. With the latest version (2.0.5390), the configuration has been fixed and lobby is now where it should be - under the main VirtualHost configuration (VirtualHost "your.domain.com").

Old Configuration
So, if you’re still on a previous version of jitsi here’s what you have in your your.domain.cfg.lua:

VirtualHost "guest.your.domain.com"
    authentication = "anonymous"
    c2s_require_encryption = false
    modules_enabled = {
            "muc_lobby_rooms";
        }
       
        lobby_muc = "lobby.your.domain.com"
        main_muc = "conference.your.domain.com" 
-- muc_lobby_whitelist = { "recorder.your.domain.com" } -- Here we can whitelist jibri to enter lobby enabled rooms

New Configuration
That has to change with the new version. You need to move that muc_lobby_rooms e.t.c. to your main virtual host, so this block of your cfg.lua should now look like this:

VirtualHost "your.domain.com"
    -- enabled = false -- Remove this line to enable this host
    authentication = "internal_plain"
    -- 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/your.domain.com.key";
        certificate = "/etc/prosody/certs/your.domain.com.crt";
    }
    speakerstats_component = "speakerstats.your.domain.com"
    conference_duration_component = "conferenceduration.your.domain.com"
    -- we need bosh
    modules_enabled = {
        "bosh";
        "pubsub";
        "ping"; -- Enable mod_ping
        "speakerstats";
        "turncredentials";
        "conference_duration";
        "muc_lobby_rooms";
    }
    c2s_require_encryption = false
    lobby_muc = "lobby.your.domain.com"
    main_muc = "conference.your.domain.com"
    -- muc_lobby_whitelist = { "recorder.your.domain.com" } -- Here we can whitelist jibri to enter lobby enabled rooms

That should fix your “can’t find the lobby button after upgrading”, “my lobby doesn’t work after upgrade” problem.

2 Likes

Hi,
but… if these posts you create to fix any known issues they turn into guides or how to’s.

It’s not better?

Best regards…

Hi Kali!

I suppose one could look at them as guides. Just want to make the information available so people are not pulling their hair out trying to figure out solutions to a ‘problem’ that already has a fix… lol

Yes, ok.
I intended to include troubleshooting guides in the jitsi.org documentation. Or post these guides at the beginning of this forum section. Like the instructions that are there now. It is easier to find the solution.

What do you think?

Hi Freddie,

I didn’t see this part in your config file:

Component "lobby.your.domain.com" "muc" --enable lobby waiting feature
    storage = "memory"
    restrict_room_creation = true
    muc_room_locking = false
    muc_room_default_public_jids = true

any remarks from you.

thanks for your help!

That part is fine, we’re only moving the block I highlighted. Everything else stays as is,.

I put it below this line :

– muc_lobby_whitelist = { “recorder.your.domain.com” } – Here we can whitelist jibri to enter lobby enabled rooms
Component “lobby.your.domain.com” “muc” --enable lobby waiting feature
storage = “memory”
restrict_room_creation = true
muc_room_locking = false
muc_room_default_public_jids = true
`

I’m really sorry, but I don’t think I’m understanding your question. If you’re still having problems with it, share your cfg.lua and I’ll try to help.

there is No problem, my question where I need put this component for the new jitsi version:

Component “[lobby.your.domain.com](http://lobby.your.domain.com/)” “muc” --enable lobby waiting feature
storage = “memory”
restrict_room_creation = true
muc_room_locking = false
muc_room_default_public_jids = true

If you had lobby working in your previous version, this component should already be there; leave it where it is. If you didn’t have lobby enabled before and you’ve upgraded to the latest Jitsi version, you don’t need to do anything, lobby comes pre-enabled.

Is the lobby pre-enabled or, just the option?

…but you can disable it.

@Kali I see your point. I think it might add up to too many after a while though, if pinned at the beginning of the forum. :thinking:

@Freddie
Two how-to’s are created, one for jitsi and the other for jibri and maybe a third for jvb. So people come in and see the posts at the beginning, like known issues and JIBRI fixes, instead of opening threads they go read. If users have problems they write a post in the created section. To avoid repeated discussions.

It’s my opinion…

@Kali Ah, I see your point. :+1:t5:

Hi. I’m having problems with this feature. I’ve installed Jitsi from Ubuntu packages. I have Jitsi version 2.0.5390 but I can’t see the lobby button

This is my configuration

VirtualHost "meet.xxx.com"
  -- enabled = false -- Remove this line to enable this host
  authentication = "internal_plain"
  -- 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/meet.xxx.com.key";
      certificate = "/etc/prosody/certs/meet.xxx.com.crt";
  }
  speakerstats_component = "speakerstats.meet.xxx.com"
  conference_duration_component = "conferenceduration.meet.xxx.com"
  -- we need bosh
  modules_enabled = {
      "bosh";
      "pubsub";
      "ping"; -- Enable mod_ping
      "speakerstats";
      "turncredentials";
      "conference_duration";
      "muc_lobby_rooms";
  }
  consider_bosh_secure = true
  c2s_require_encryption = false
  lobby_muc = "lobby.meet.xxx.com"

Component "lobby.meet.xxx.com" "muc"
  storage = "none"
  restrict_room_creation = true
  muc_room_locking = false
  muc_room_default_public_jids = true

VirtualHost "guest.meet.xxx.com"
  authentication = "anonymous"
  c2s_require_encryption = false

What am I doing wrong? Thanks in advance

if it’s fresh installation, you need enable it on yourdomain-config.js:

// Hides lobby button
hideLobbyButton: false,

Thanks for the answer but it doesn’t work

Confirm if you have like this config:
1)
modules_enabled = {
“bosh”;
“pubsub”;
“ping”; – Enable mod_ping
“speakerstats”;
“turncredentials”;
“conference_duration”;
“muc_lobby_rooms”; --enable lobby waiting feature
}
c2s_require_encryption = false
lobby_muc = “lobby.yourdomain.com”; --enable lobby waiting feature
main_muc = “conference.yourdomain.com”; --enable lobby waiting feature
muc_lobby_whitelist = { “recorder.yourdomain.com” } --enable lobby waiting feature

  1. storage = “memory” should memory:

    Component “lobby.yourdomain.com” “muc”
    storage = “memory”
    restrict_room_creation = true
    muc_room_locking = false
    muc_room_default_public_jids = true

If I put memory I get an error because of the Prosody version but the other part is the same