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 = “meet.demo.live”;
external_service_secret = “ocTCkfYtgvu0KR6t”;
external_services = {
{ type = “stun”, host = “meet.demo.live”, port = 3478 },
{ type = “turn”, host = “meet.demo.live”, port = 3478, transport = “udp”, secret = true, ttl = 86400, algorithm = “turn” },
{ type = “turns”, host = “meet.demo.live”, port = 5349, transport = “tcp”, secret = true, ttl = 86400, algorithm = “turn” }
};
– cross_domain_bosh = false;
cross_domain_bosh = true;
consider_bosh_secure = true;
https_ports = { }; – Remove this line to prevent listening on port 5284
– Mozilla SSL Configuration Generator
ssl = {
protocol = “tlsv1_2+”;
ciphers = “ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384”
}
unlimited_jids = {
“focus@auth.meet.demo.live”,
“jvb@auth.meet.demo.live”
}
VirtualHost “meet.demo.live”
– enabled = false – Remove this line to enable this host
– authentication = “internal_plain”
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/meet.demo.live.key”;
certificate = “/etc/prosody/certs/meet.demo.live.crt”;
}
av_moderation_component = “avmoderation.meet.demo.live”
speakerstats_component = “speakerstats.meet.demo.live”
conference_duration_component = “conferenceduration.meet.demo.live”
– we need bosh
modules_enabled = {
“bosh”;
“pubsub”;
“ping”; – Enable mod_ping
“speakerstats”;
“external_services”;
“conference_duration”;
“muc_lobby_rooms”;
“muc_breakout_rooms”;
“av_moderation”;
}
c2s_require_encryption = false
lobby_muc = “lobby.meet.demo.live”
breakout_rooms_muc = “breakout.meet.demo.live”
main_muc = “conference.meet.demo.live”
– muc_lobby_whitelist = { “recorder.meet.demo.live” } – Here we can whitelist jibri to enter lobby enabled rooms
Component “conference.meet.demo.live” “muc”
restrict_room_creation = true
storage = “memory”
modules_enabled = {
“muc_meeting_id”;
“muc_domain_mapper”;
“polls”;
–“token_verification”;
“muc_rate_limit”;
}
admins = { “focus@auth.meet.demo.live” }
muc_room_locking = false
muc_room_default_public_jids = true
Component “breakout.meet.demo.live” “muc”
restrict_room_creation = true
storage = “memory”
modules_enabled = {
“muc_meeting_id”;
“muc_domain_mapper”;
–“token_verification”;
“muc_rate_limit”;
}
admins = { “focus@auth.meet.demo.live” }
muc_room_locking = false
muc_room_default_public_jids = true
– internal muc component
Component “internal.auth.meet.demo.live” “muc”
storage = “memory”
modules_enabled = {
“ping”;
}
admins = { “focus@auth.meet.demo.live”, “jvb@auth.meet.demo.live” }
muc_room_locking = false
muc_room_default_public_jids = true
VirtualHost “auth.meet.demo.live”
ssl = {
key = “/etc/prosody/certs/auth.meet.demo.live.key”;
certificate = “/etc/prosody/certs/auth.meet.demo.live.crt”;
}
modules_enabled = {
“limits_exception”;
}
authentication = “internal_hashed”
– Proxy to jicofo’s user JID, so that it doesn’t have to register as a component.
Component “focus.meet.demo.live” “client_proxy”
target_address = “focus@auth.meet.demo.live”
Component “speakerstats.meet.demo.live” “speakerstats_component”
muc_component = “conference.meet.demo.live”
Component “conferenceduration.meet.demo.live” “conference_duration_component”
muc_component = “conference.meet.demo.live”
Component “avmoderation.meet.demo.live” “av_moderation_component”
muc_component = “conference.meet.demo.live”
Component “lobby.meet.demo.live” “muc”
storage = “memory”
restrict_room_creation = true
muc_room_locking = false
muc_room_default_public_jids = true
modules_enabled = {
“muc_rate_limit”;
“polls”;
}
– VirtualHost “guest.meet.demo.live”
– authentication = “anonymous”
– c2s_require_encryption = false