jitsi-meet.cfg.lua 2.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576
  1. admins = { "{{ .Env.JICOFO_AUTH_USER }}@{{ .Env.XMPP_AUTH_DOMAIN }}" }
  2. plugin_paths = { "/prosody-plugins/", "/prosody-plugins-custom" }
  3. http_default_host = "{{ .Env.XMPP_DOMAIN }}"
  4. {{ if and (.Env.ENABLE_AUTH | default "0" | toBool) (.Env.JWT_ENABLE_TOKEN_AUTH | default "0" | toBool) .Env.JWT_ACCEPTED_ISSUERS }}
  5. asap_accepted_issuers = { "{{ join "\",\"" (splitList "," .Env.JWT_ACCEPTED_ISSUERS) }}" }
  6. {{ end }}
  7. {{ if and (.Env.ENABLE_AUTH | default "0" | toBool) (.Env.JWT_ENABLE_TOKEN_AUTH | default "0" | toBool) .Env.JWT_ACCEPTED_AUDIENCES }}
  8. asap_accepted_audiences = { "{{ join "\",\"" (splitList "," .Env.JWT_ACCEPTED_AUDIENCES) }}" }
  9. {{ end }}
  10. VirtualHost "{{ .Env.XMPP_DOMAIN }}"
  11. {{ if .Env.ENABLE_AUTH | default "0" | toBool }}
  12. {{ if .Env.JWT_ENABLE_TOKEN_AUTH | default "0" | toBool }}
  13. authentication = "token"
  14. app_id = "{{ .Env.JWT_APP_ID }}"
  15. app_secret = "{{ .Env.JWT_APP_SECRET }}"
  16. allow_empty_token = false
  17. {{ else }}
  18. authentication = "internal_plain"
  19. {{ end }}
  20. {{ else }}
  21. authentication = "anonymous"
  22. {{ end }}
  23. ssl = {
  24. key = "/config/certs/{{ .Env.XMPP_DOMAIN }}.key";
  25. certificate = "/config/certs/{{ .Env.XMPP_DOMAIN }}.crt";
  26. }
  27. modules_enabled = {
  28. "bosh";
  29. "pubsub";
  30. "ping";
  31. {{ if .Env.XMPP_MODULES }}
  32. "{{ join "\";\n\"" (splitList "," .Env.XMPP_MODULES) }}";
  33. {{ end }}
  34. }
  35. c2s_require_encryption = false
  36. {{ if and (.Env.ENABLE_AUTH | default "0" | toBool) (.Env.ENABLE_GUESTS | default "0" | toBool) }}
  37. VirtualHost "{{ .Env.XMPP_GUEST_DOMAIN }}"
  38. authentication = "anonymous"
  39. c2s_require_encryption = false
  40. {{ end }}
  41. VirtualHost "{{ .Env.XMPP_AUTH_DOMAIN }}"
  42. ssl = {
  43. key = "/config/certs/{{ .Env.XMPP_AUTH_DOMAIN }}.key";
  44. certificate = "/config/certs/{{ .Env.XMPP_AUTH_DOMAIN }}.crt";
  45. }
  46. authentication = "internal_plain"
  47. Component "{{ .Env.XMPP_INTERNAL_MUC_DOMAIN }}" "muc"
  48. modules_enabled = {
  49. "ping";
  50. {{ if .Env.XMPP_INTERNAL_MUC_MODULES }}
  51. "{{ join "\";\n\"" (splitList "," .Env.XMPP_INTERNAL_MUC_MODULES) }}";
  52. {{ end }}
  53. }
  54. storage = "memory"
  55. muc_room_cache_size = 1000
  56. Component "{{ .Env.XMPP_MUC_DOMAIN }}" "muc"
  57. storage = "memory"
  58. modules_enabled = {
  59. {{ if .Env.XMPP_MUC_MODULES }}
  60. "{{ join "\";\n\"" (splitList "," .Env.XMPP_MUC_MODULES) }}";
  61. {{ end }}
  62. {{ if .Env.JWT_ENABLE_TOKEN_AUTH | default "0" | toBool }}
  63. "token_verification";
  64. {{ end }}
  65. }
  66. Component "focus.{{ .Env.XMPP_DOMAIN }}"
  67. component_secret = "{{ .Env.JICOFO_COMPONENT_SECRET }}"