xmpp: add ability to add custom prosody modules
This commit is contained in:
parent
fb1fdb1d53
commit
95a55915b7
|
@ -153,6 +153,9 @@ Variable | Description | Default value
|
||||||
`XMPP_MUC_DOMAIN` | XMPP domain for the MUC | muc.meet.jitsi
|
`XMPP_MUC_DOMAIN` | XMPP domain for the MUC | muc.meet.jitsi
|
||||||
`XMPP_INTERNAL_MUC_DOMAIN` | XMPP domain for the internal MUC | internal-muc.meet.jitsi
|
`XMPP_INTERNAL_MUC_DOMAIN` | XMPP domain for the internal MUC | internal-muc.meet.jitsi
|
||||||
`XMPP_GUEST_DOMAIN` | XMPP domain for unauthenticated users | guest.meet.jitsi
|
`XMPP_GUEST_DOMAIN` | XMPP domain for unauthenticated users | guest.meet.jitsi
|
||||||
|
`XMPP_MODULES` | Custom Prosody modules for XMPP_DOMAIN (comma separated) | mod_info,mod_alert
|
||||||
|
`XMPP_MUC_MODULES` | Custom Prosody modules for MUC component (comma separated) | mod_info,mod_alert
|
||||||
|
`XMPP_INTERNAL_MUC_MODULES` | Custom Prosody modules for internal MUC component (comma separated) | mod_info,mod_alert
|
||||||
`JICOFO_COMPONENT_SECRET` | XMPP component password for Jicofo | s3cr37
|
`JICOFO_COMPONENT_SECRET` | XMPP component password for Jicofo | s3cr37
|
||||||
`JICOFO_AUTH_USER` | XMPP user for Jicofo client connections | focus
|
`JICOFO_AUTH_USER` | XMPP user for Jicofo client connections | focus
|
||||||
`JICOFO_AUTH_PASSWORD` | XMPP password for Jicofo client connections | passw0rd
|
`JICOFO_AUTH_PASSWORD` | XMPP password for Jicofo client connections | passw0rd
|
||||||
|
|
|
@ -44,6 +44,9 @@ services:
|
||||||
- XMPP_GUEST_DOMAIN
|
- XMPP_GUEST_DOMAIN
|
||||||
- XMPP_MUC_DOMAIN
|
- XMPP_MUC_DOMAIN
|
||||||
- XMPP_INTERNAL_MUC_DOMAIN
|
- XMPP_INTERNAL_MUC_DOMAIN
|
||||||
|
- XMPP_MODULES
|
||||||
|
- XMPP_MUC_MODULES
|
||||||
|
- XMPP_INTERNAL_MUC_MODULES
|
||||||
- JICOFO_COMPONENT_SECRET
|
- JICOFO_COMPONENT_SECRET
|
||||||
- JICOFO_AUTH_USER
|
- JICOFO_AUTH_USER
|
||||||
- JICOFO_AUTH_PASSWORD
|
- JICOFO_AUTH_PASSWORD
|
||||||
|
|
|
@ -81,6 +81,15 @@ XMPP_INTERNAL_MUC_DOMAIN=internal-muc.meet.jitsi
|
||||||
# XMPP domain for unauthenticated users.
|
# XMPP domain for unauthenticated users.
|
||||||
XMPP_GUEST_DOMAIN=guest.meet.jitsi
|
XMPP_GUEST_DOMAIN=guest.meet.jitsi
|
||||||
|
|
||||||
|
# Custom Prosody modules for XMPP_DOMAIN (comma separated)
|
||||||
|
XMPP_MODULES=
|
||||||
|
|
||||||
|
# Custom Prosody modules for MUC component (comma separated)
|
||||||
|
XMPP_MUC_MODULES=
|
||||||
|
|
||||||
|
# Custom Prosody modules for internal MUC component (comma separated)
|
||||||
|
XMPP_INTERNAL_MUC_MODULES=
|
||||||
|
|
||||||
# MUC for the JVB pool.
|
# MUC for the JVB pool.
|
||||||
JVB_BREWERY_MUC=jvbbrewery
|
JVB_BREWERY_MUC=jvbbrewery
|
||||||
|
|
||||||
|
|
|
@ -10,5 +10,4 @@ COPY rootfs/ /
|
||||||
|
|
||||||
EXPOSE 5222 5269 5347 5280
|
EXPOSE 5222 5269 5347 5280
|
||||||
|
|
||||||
VOLUME /config
|
VOLUME ["/config", "/prosody-plugins-custom"]
|
||||||
|
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
admins = { "{{ .Env.JICOFO_AUTH_USER }}@{{ .Env.XMPP_AUTH_DOMAIN }}" }
|
admins = { "{{ .Env.JICOFO_AUTH_USER }}@{{ .Env.XMPP_AUTH_DOMAIN }}" }
|
||||||
|
plugin_paths = { "/prosody-plugins-custom" }
|
||||||
|
|
||||||
VirtualHost "{{ .Env.XMPP_DOMAIN }}"
|
VirtualHost "{{ .Env.XMPP_DOMAIN }}"
|
||||||
{{ if .Env.ENABLE_AUTH }}
|
{{ if .Env.ENABLE_AUTH }}
|
||||||
|
@ -7,13 +8,16 @@ VirtualHost "{{ .Env.XMPP_DOMAIN }}"
|
||||||
authentication = "anonymous"
|
authentication = "anonymous"
|
||||||
{{ end }}
|
{{ end }}
|
||||||
ssl = {
|
ssl = {
|
||||||
key = "/config/certs/{{ .Env.XMPP_DOMAIN }}.key";
|
key = "/config/certs/{{ .Env.XMPP_DOMAIN }}.key";
|
||||||
certificate = "/config/certs/{{ .Env.XMPP_DOMAIN }}.crt";
|
certificate = "/config/certs/{{ .Env.XMPP_DOMAIN }}.crt";
|
||||||
}
|
}
|
||||||
modules_enabled = {
|
modules_enabled = {
|
||||||
"bosh";
|
"bosh";
|
||||||
"pubsub";
|
"pubsub";
|
||||||
"ping";
|
"ping";
|
||||||
|
{{ if .Env.XMPP_MODULES }}
|
||||||
|
"{{ join "\";\n\"" (splitList "," .Env.XMPP_MODULES) }}";
|
||||||
|
{{ end }}
|
||||||
}
|
}
|
||||||
|
|
||||||
c2s_require_encryption = false
|
c2s_require_encryption = false
|
||||||
|
@ -33,13 +37,21 @@ VirtualHost "{{ .Env.XMPP_AUTH_DOMAIN }}"
|
||||||
|
|
||||||
Component "{{ .Env.XMPP_INTERNAL_MUC_DOMAIN }}" "muc"
|
Component "{{ .Env.XMPP_INTERNAL_MUC_DOMAIN }}" "muc"
|
||||||
modules_enabled = {
|
modules_enabled = {
|
||||||
"ping";
|
"ping";
|
||||||
|
{{ if .Env.XMPP_INTERNAL_MUC_MODULES }}
|
||||||
|
"{{ join "\";\n\"" (splitList "," .Env.XMPP_INTERNAL_MUC_MODULES) }}";
|
||||||
|
{{ end }}
|
||||||
}
|
}
|
||||||
storage = "internal"
|
storage = "internal"
|
||||||
muc_room_cache_size = 1000
|
muc_room_cache_size = 1000
|
||||||
|
|
||||||
Component "{{ .Env.XMPP_MUC_DOMAIN }}" "muc"
|
Component "{{ .Env.XMPP_MUC_DOMAIN }}" "muc"
|
||||||
storage = "internal"
|
storage = "internal"
|
||||||
|
modules_enabled = {
|
||||||
|
{{ if .Env.XMPP_MUC_MODULES }}
|
||||||
|
"{{ join "\";\n\"" (splitList "," .Env.XMPP_MUC_MODULES) }}";
|
||||||
|
{{ end }}
|
||||||
|
}
|
||||||
|
|
||||||
Component "focus.{{ .Env.XMPP_DOMAIN }}"
|
Component "focus.{{ .Env.XMPP_DOMAIN }}"
|
||||||
component_secret = "{{ .Env.JICOFO_COMPONENT_SECRET }}"
|
component_secret = "{{ .Env.JICOFO_COMPONENT_SECRET }}"
|
||||||
|
|
Loading…
Reference in New Issue