prosody: add support for lobby

This commit is contained in:
Saúl Ibarra Corretgé 2020-07-22 11:00:46 +02:00
parent baed605569
commit a81ad73429
3 changed files with 21 additions and 1 deletions

View File

@ -59,6 +59,7 @@ services:
- AUTH_TYPE
- ENABLE_AUTH
- ENABLE_GUESTS
- ENABLE_LOBBY
- GLOBAL_MODULES
- GLOBAL_CONFIG
- LDAP_URL

View File

@ -49,6 +49,8 @@ TZ=UTC
# See the "Running behind NAT or on a LAN environment" section in the README
#DOCKER_HOST_ADDRESS=192.168.1.1
# Control whether the lobby feature should be enabled or not
#ENABLE_LOBBY=1
#
# Let's Encrypt configuration
@ -94,7 +96,7 @@ TZ=UTC
#JIGASI_SIP_TRANSPORT=UDP
#
# Authentication configuration (see README for details)
# Authentication configuration (see handbook for details)
#
# Enable authentication

View File

@ -12,6 +12,7 @@ http_default_host = "{{ .Env.XMPP_DOMAIN }}"
{{ $JWT_ALLOW_EMPTY := .Env.JWT_ALLOW_EMPTY | default "0" | toBool }}
{{ $JWT_AUTH_TYPE := .Env.JWT_AUTH_TYPE | default "token" }}
{{ $JWT_TOKEN_AUTH_MODULE := .Env.JWT_TOKEN_AUTH_MODULE | default "token_verification" }}
{{ $ENABLE_LOBBY := .Env.ENABLE_LOBBY | default "0" | toBool }}
{{ if and $ENABLE_AUTH (eq $AUTH_TYPE "jwt") .Env.JWT_ACCEPTED_ISSUERS }}
asap_accepted_issuers = { "{{ join "\",\"" (splitList "," .Env.JWT_ACCEPTED_ISSUERS) }}" }
@ -52,6 +53,9 @@ VirtualHost "{{ .Env.XMPP_DOMAIN }}"
"ping";
"speakerstats";
"conference_duration";
{{ if $ENABLE_LOBBY }}
"muc_lobby_rooms";
{{ end }}
{{ if .Env.XMPP_MODULES }}
"{{ join "\";\n\"" (splitList "," .Env.XMPP_MODULES) }}";
{{ end }}
@ -60,6 +64,11 @@ VirtualHost "{{ .Env.XMPP_DOMAIN }}"
{{end}}
}
{{ if $ENABLE_LOBBY }}
main_muc = "{{ .Env.XMPP_MUC_DOMAIN }}"
lobby_muc = "lobby.{{ .Env.XMPP_DOMAIN }}"
{{ end }}
speakerstats_component = "speakerstats.{{ .Env.XMPP_DOMAIN }}"
conference_duration_component = "conferenceduration.{{ .Env.XMPP_DOMAIN }}"
@ -120,3 +129,11 @@ Component "speakerstats.{{ .Env.XMPP_DOMAIN }}" "speakerstats_component"
Component "conferenceduration.{{ .Env.XMPP_DOMAIN }}" "conference_duration_component"
muc_component = "{{ .Env.XMPP_MUC_DOMAIN }}"
{{ if $ENABLE_LOBBY }}
Component "lobby.{{ .Env.XMPP_DOMAIN }}" "muc"
storage = "memory"
restrict_room_creation = true
muc_room_locking = false
muc_room_default_public_jids = true
{{ end }}