system-config.js 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. {{ $CONFIG_BOSH_HOST := .Env.CONFIG_BOSH_HOST | default "" -}}
  2. {{ $CONFIG_EXTERNAL_CONNECT := .Env.CONFIG_EXTERNAL_CONNECT | default "false" | toBool -}}
  3. {{ $ENABLE_AUTH := .Env.ENABLE_AUTH | default "false" | toBool -}}
  4. {{ $ENABLE_GUESTS := .Env.ENABLE_GUESTS | default "false" | toBool -}}
  5. {{ $ENABLE_SUBDOMAINS := .Env.ENABLE_SUBDOMAINS | default "false" | toBool -}}
  6. {{ $ENABLE_WEBSOCKETS := .Env.ENABLE_WEBSOCKETS | default "false" | toBool -}}
  7. {{ $JICOFO_AUTH_USER := .Env.JICOFO_AUTH_USER | default "focus" }}
  8. {{ $XMPP_AUTH_DOMAIN := .Env.XMPP_AUTH_DOMAIN -}}
  9. {{ $XMPP_DOMAIN := .Env.XMPP_DOMAIN -}}
  10. {{ $XMPP_MUC_DOMAIN := .Env.XMPP_MUC_DOMAIN -}}
  11. {{ $XMPP_MUC_DOMAIN_PREFIX := (split "." .Env.XMPP_MUC_DOMAIN)._0 -}}
  12. // Begin default config overrides.
  13. if (!config.hasOwnProperty('hosts')) config.hosts = {};
  14. config.hosts.domain = '{{ $XMPP_DOMAIN }}';
  15. config.focusUserJid = '{{$JICOFO_AUTH_USER}}@{{$XMPP_AUTH_DOMAIN}}';
  16. {{ if $ENABLE_SUBDOMAINS -}}
  17. var subdomain = "<!--# echo var="subdomain" default="" -->";
  18. if (subdomain) {
  19. subdomain = subdomain.substr(0,subdomain.length-1).split('.').join('_').toLowerCase() + '.';
  20. }
  21. config.hosts.muc = '{{ $XMPP_MUC_DOMAIN_PREFIX }}.'+subdomain+'{{ $XMPP_DOMAIN }}';
  22. {{ else -}}
  23. config.hosts.muc = '{{ $XMPP_MUC_DOMAIN }}';
  24. {{ end -}}
  25. {{ if $ENABLE_AUTH -}}
  26. {{ if $ENABLE_GUESTS -}}
  27. // When using authentication, domain for guest users.
  28. config.hosts.anonymousdomain = '{{ .Env.XMPP_GUEST_DOMAIN }}';
  29. {{ end -}}
  30. // Domain for authenticated users. Defaults to <domain>.
  31. config.hosts.authdomain = '{{ $XMPP_DOMAIN }}';
  32. {{ end -}}
  33. config.bosh = '{{ if $CONFIG_BOSH_HOST }}https://{{ $CONFIG_BOSH_HOST }}{{ end }}/http-bind';
  34. {{ if $ENABLE_WEBSOCKETS -}}
  35. config.websocket = 'wss://{{ if $CONFIG_BOSH_HOST }}{{ $CONFIG_BOSH_HOST }}{{end}}/xmpp-websocket';
  36. {{ end -}}
  37. {{ if $CONFIG_EXTERNAL_CONNECT -}}
  38. {{ if $ENABLE_SUBDOMAINS -}}
  39. config.externalConnectUrl = '//{{ if .Env.CONFIG_BOSH_HOST }}{{ .Env.CONFIG_BOSH_HOST }}{{ end }}/<!--# echo var="subdir" default="" -->http-pre-bind';
  40. {{ else -}}
  41. config.externalConnectUrl = '//{{ if .Env.CONFIG_BOSH_HOST }}{{ .Env.CONFIG_BOSH_HOST }}{{ end }}/http-pre-bind';
  42. {{ end -}}
  43. {{ end -}}