123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628 |
- {{ $XMPP_DOMAIN := .Env.XMPP_DOMAIN | default "jitsi-meet.example.com" -}}
- {{ $XMPP_MUC_DOMAIN := .Env.XMPP_MUC_DOMAIN | default "conference.example.com" -}}
- {{ $CONFIG_RESOLUTION := .Env.CONFIG_RESOLUTION | default "720" -}}
- {{ $CONFIG_RESOLUTION_WIDTH := .Env.CONFIG_RESOLUTION_WIDTH | default "1280" -}}
- {{ $CONFIG_DISABLE_SIMULCAST := .Env.CONFIG_DISABLE_SIMULCAST | default "false" -}}
- {{ $CONFIG_ENABLE_REMB := .Env.CONFIG_ENABLE_REMB | default "true" -}}
- {{ $CONFIG_ENABLE_TCC := .Env.CONFIG_ENABLE_TCC | default "true" -}}
- {{ $ENABLE_RECORDING := .Env.ENABLE_RECORDING | default "false" | toBool -}}
- {{ $CONFIG_FILE_RECORDING_SERVICE_ENABLED := .Env.CONFIG_FILE_RECORDING_SERVICE_ENABLED | default "false" | toBool -}}
- {{ $CONFIG_FILE_RECORDING_SERVICE_SHARING_ENABLED := .Env.CONFIG_FILE_RECORDING_SERVICE_SHARING_ENABLED | default "false" | toBool -}}
- {{ $CONFIG_EXTERNAL_CONNECT := .Env.CONFIG_EXTERNAL_CONNECT | default "false" | toBool -}}
- {{ $XMPP_RECORDER_DOMAIN := .Env.XMPP_RECORDER_DOMAIN | default "recorder.example.com" -}}
- {{ $CONFIG_CHROME_MIN_EXT_VERSION := .Env.CONFIG_CHROME_MIN_EXT_VERSION | default "0.1" -}}
- {{ $CONFIG_ENABLE_USER_ROLES_BASED_ON_TOKEN := .Env.CONFIG_ENABLE_USER_ROLES_BASED_ON_TOKEN | default "false" -}}
- {{ $CONFIG_TESTING_OCTO_PROBABILITY := .Env.CONFIG_TESTING_OCTO_PROBABILITY | default "0" -}}
- {{ $CONFIG_TESTING_CAP_SCREENSHARE_BITRATE := .Env.CONFIG_TESTING_CAP_SCREENSHARE_BITRATE | default "1" -}}
- {{ $ENABLE_LIPSYNC := .Env.ENABLE_LIPSYNC | default "false" | toBool -}}
- {{ $ENABLE_SUBDOMAINS := .Env.ENABLE_SUBDOMAINS | default "false" | toBool -}}
- {{ $ENABLE_GUESTS := .Env.ENABLE_GUESTS | default "false" | toBool -}}
- {{ $ENABLE_AUTH := .Env.ENABLE_AUTH | default "false" | toBool -}}
- {{ $ENABLE_TRANSCRIPTIONS := .Env.ENABLE_TRANSCRIPTIONS | default "false" | toBool -}}
- {{ $CONFIG_ENABLE_STATS_ID := .Env.CONFIG_ENABLE_STATS_ID | default "false" | toBool -}}
- {{ $CONFIG_OPEN_BRIDGE_CHANNEL := .Env.CONFIG_OPEN_BRIDGE_CHANNEL | default "datachannel" -}}
- {{ $CONFIG_STEREO := .Env.CONFIG_STEREO | default "false" | toBool -}}
- {{ $CONFIG_ENABLE_TALK_WHILE_MUTED := .Env.CONFIG_ENABLE_TALK_WHILE_MUTED | default "false" | toBool -}}
- {{ $CONFIG_ENABLE_NO_AUDIO_DETECTION := .Env.CONFIG_ENABLE_NO_AUDIO_DETECTION | default "false" | toBool -}}
- {{ $CONFIG_ENABLE_CALENDAR := .Env.CONFIG_ENABLE_CALENDAR | default "false" | toBool -}}
- {{ $CONFIG_REQUIRE_DISPLAY_NAME := .Env.CONFIG_REQUIRE_DISPLAY_NAME | default "false" | toBool -}}
- {{ $CONFIG_REQUIRE_DISPLAY_NAME := .Env.CONFIG_REQUIRE_DISPLAY_NAME | default "false" | toBool -}}
- {{ $CONFIG_START_VIDEO_MUTED := .Env.CONFIG_START_VIDEO_MUTED | default 10 -}}
- {{ $CONFIG_START_AUDIO_MUTED := .Env.CONFIG_START_AUDIO_MUTED | default 10 -}}
- {{ $CONFIG_USE_STUN_TURN := .Env.CONFIG_USE_STUN_TURN | default "true" | toBool -}}
- {{ if $ENABLE_SUBDOMAINS -}}
- var subdomain = "<!--# echo var="subdomain" default="" -->";
- if (subdomain) {
- subdomain = subdomain.substr(0,subdomain.length-1).split('.').join('_').toLowerCase() + '.';
- }
- {{ end -}}
- var config = {
-
-
-
-
-
-
-
-
- hosts: {
-
- domain: '{{ $XMPP_DOMAIN }}',
- {{ if $ENABLE_GUESTS -}}
-
- anonymousdomain: '{{ .Env.XMPP_GUEST_DOMAIN }}',
- {{ end -}}
- {{ if $ENABLE_AUTH -}}
-
- authdomain: '{{ .Env.XMPP_DOMAIN }}',
- {{ end -}}
-
- focus: 'focus.{{ $XMPP_DOMAIN }}',
-
- {{ if $ENABLE_SUBDOMAINS -}}
- muc: 'conference.'+subdomain+'{{ $XMPP_DOMAIN }}'
- {{ else -}}
- muc: {{ $XMPP_MUC_DOMAIN }}'
- {{ end -}}
- },
- // BOSH URL. FIXME: use XEP-0156 to discover it.
- bosh: '{{ if .Env.CONFIG_BOSH_HOST }}https:
- {{ if .Env.ENABLE_WEBSOCKETS -}}
- websocket: 'wss://{{ if .Env.CONFIG_BOSH_HOST }}{{ .Env.CONFIG_BOSH_HOST }}{{end}}/xmpp-websocket',
- {{ end -}}
-
- clientNode: 'http://jitsi.org/jitsimeet',
-
- testing: {
-
- capScreenshareBitrate: {{ $CONFIG_TESTING_CAP_SCREENSHARE_BITRATE }},
-
- octo: {
- probability: {{ $CONFIG_TESTING_OCTO_PROBABILITY }}
- },
-
- enableFirefoxSimulcast: false,
-
-
- p2pTestMode: false
-
-
- },
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- startAudioMuted: {{ $CONFIG_START_AUDIO_MUTED }},
-
-
-
-
-
-
-
-
- resolution: {{ $CONFIG_RESOLUTION }},
-
-
-
-
-
- constraints: {
- video: {
- aspectRatio: 16 / 9,
- height: {
- ideal: {{ $CONFIG_RESOLUTION }},
- max: {{ $CONFIG_RESOLUTION }},
- min: 180
- },
- width: {
- ideal: {{ $CONFIG_RESOLUTION_WIDTH }},
- max: {{ $CONFIG_RESOLUTION_WIDTH }},
- min: 320
- }
- }
- },
-
- {{ if $CONFIG_EXTERNAL_CONNECT -}}
- {{ if $ENABLE_SUBDOMAINS -}}
- externalConnectUrl: '//{{ if .Env.CONFIG_BOSH_HOST }}{{ .Env.CONFIG_BOSH_HOST }}{{ end }}/<!--# echo var="subdir" default="" -->http-pre-bind',
- {{ else -}}
- externalConnectUrl: '//{{ if .Env.CONFIG_BOSH_HOST }}{{ .Env.CONFIG_BOSH_HOST }}{{ end }}/http-pre-bind',
- {{ end -}}
- {{ end -}}
-
- disableSimulcast: {{ $CONFIG_DISABLE_SIMULCAST }},
-
-
-
-
-
-
- disableSuspendVideo: true,
-
- startVideoMuted: {{ $CONFIG_START_VIDEO_MUTED }},
-
-
-
-
-
-
-
-
-
-
-
-
-
- {{ if .Env.CONFIG_CHROME_EXT_ID }}
- desktopSharingChromeExtId: '{{.Env.CONFIG_CHROME_EXT_ID}}',
- {{ else }}
- desktopSharingChromeExtId: null,
- {{ end }}
-
-
-
-
- desktopSharingChromeSources: [ 'screen', 'window', 'tab' ],
-
- desktopSharingChromeMinExtVersion: '{{ $CONFIG_CHROME_MIN_EXT_VERSION }}',
-
-
-
-
-
-
-
-
-
-
-
- {{ if $ENABLE_RECORDING }}
- hiddenDomain: '{{ $XMPP_RECORDER_DOMAIN }}',
- fileRecordingsEnabled: true,
-
- liveStreamingEnabled: true,
- {{ if .Env.CONFIG_DROPBOX_APPKEY }}
-
- dropbox: {
-
- appKey: '{{ .Env.CONFIG_DROPBOX_APPKEY }}',
- {{ if .Env.CONFIG_DROPBOX_REDIRECT_URI }}
-
-
-
- redirectURI: '{{ .Env.CONFIG_DROPBOX_REDIRECT_URI }}'
- {{ end }}
- },
- {{ end }}
- {{ if $CONFIG_FILE_RECORDING_SERVICE_ENABLED }}
-
-
-
-
- fileRecordingsServiceEnabled: true,
- {{ end }}
- {{ if $CONFIG_FILE_RECORDING_SERVICE_SHARING_ENABLED }}
-
-
-
- fileRecordingsServiceSharingEnabled: true,
- {{ end }}
- {{ end }}
- {{ if $ENABLE_TRANSCRIPTIONS }}
-
-
- transcribingEnabled: true,
- {{ end }}
-
-
- channelLastN: -1,
-
-
-
-
-
-
- enableTcc: {{ $CONFIG_ENABLE_TCC }},
-
-
-
-
-
- enableRemb: {{ $CONFIG_ENABLE_REMB }},
-
-
-
- {{ if $CONFIG_USE_STUN_TURN -}}
-
- useStunTurn: true,
- {{ else -}}
-
- useStunTurn: false,
- {{ end -}}
-
- {{ if .Env.CONFIG_USE_IPV6 -}}
- useIPv6: true,
- {{ end -}}
-
-
-
-
-
- openBridgeChannel: '{{ $CONFIG_OPEN_BRIDGE_CHANNEL }}',
-
-
-
-
- {{ if $CONFIG_REQUIRE_DISPLAY_NAME }}
-
- requireDisplayName: true,
- {{ else }}
-
- requireDisplayName: false,
- {{ end }}
-
-
- enableWelcomePage: true,
-
-
-
-
-
-
-
-
-
-
- enableUserRolesBasedOnToken: {{ $CONFIG_ENABLE_USER_ROLES_BASED_ON_TOKEN }},
-
-
-
-
-
-
-
-
-
-
-
-
- {{ if $CONFIG_ENABLE_CALENDAR }}
- enableCalendarIntegration: true,
- {{ end }}
-
-
-
-
-
-
-
- {{ if .Env.CONFIG_CALLSTATS_ID }}
-
-
- callStatsID: '{{ .Env.CONFIG_CALLSTATS_ID }}',
- {{ end }}
- {{ if .Env.CONFIG_CALLSTATS_ID }}
- callStatsSecret: '{{ .Env.CONFIG_CALLSTATS_SECRET }}',
- {{ end }}
- {{ if $CONFIG_ENABLE_STATS_ID }}
-
-
- enableStatsID: true,
- {{ end }}
-
-
-
-
-
-
-
-
-
-
- p2p: {
-
-
-
-
-
-
- enabled: true,
-
- {{ if .Env.CONFIG_P2P_STUNTURN }}
- useStunTurn: true,
- {{ end }}
-
- stunServers: [
- { urls: 'stun:stun.l.google.com:19302' },
- { urls: 'stun:stun1.l.google.com:19302' },
- { urls: 'stun:stun2.l.google.com:19302' }
- ],
-
-
-
-
-
-
-
-
-
- preferH264: true
-
-
-
-
-
-
- },
- analytics: {
-
- {{ if .Env.CONFIG_GOOGLE_ANALYTICS_ID }}
- googleAnalyticsTrackingId: '{{ .Env.CONFIG_GOOGLE_ANALYTICS_ID }}',
- {{ end }}
-
-
- {{ if .Env.CONFIG_AMPLITUDE_ID }}
- amplitudeAPPKey: '{{ .Env.CONFIG_AMPLITUDE_ID }}',
- {{ end }}
- {{ if .Env.CONFIG_ANALYTICS_WHITELISTED_EVENTS }}
- whiteListedEvents: [ '{{ join "','" (splitList "," .Env.CONFIG_ANALYTICS_WHITELISTED_EVENTS) }}' ],
- {{ end }}
-
- {{ if .Env.CONFIG_ANALYTICS_SCRIPT_URLS }}
- scriptURLs: [ '{{ join "','" (splitList "," .Env.CONFIG_ANALYTICS_SCRIPT_URLS) }}' ],
- {{ end }}
-
-
-
-
- },
-
-
-
-
-
-
-
- deploymentInfo: {
- environment: '{{ .Env.CONFIG_DEPLOYMENTINFO_ENVIRONMENT }}',
- envType: '{{ .Env.CONFIG_DEPLOYMENTINFO_ENVIRONMENT_TYPE }}',
- userRegion: '<!--# echo var="http_x_proxy_region" default="" -->',
- },
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- {{ if $ENABLE_LIPSYNC -}}
- enableLipSync: true,
- {{ end }}
- {{ if .Env.CONFIG_START_BITRATE -}}
- startBitrate: '{{ .Env.CONFIG_START_BITRATE }}',
- {{ end }}
- {{ if $CONFIG_STEREO -}}
- stereo: true,
- {{ end }}
- {{ if $CONFIG_ENABLE_TALK_WHILE_MUTED -}}
- enableTalkWhileMuted: true,
- {{ end }}
- {{ if $CONFIG_ENABLE_NO_AUDIO_DETECTION -}}
- enableNoAudioDetection: true,
- {{ end }}
- {{ if .Env.CONFIG_GOOGLE_API_APP_CLIENT_ID -}}
- googleApiApplicationClientID: '{{ .Env.CONFIG_GOOGLE_API_APP_CLIENT_ID }}',
- {{ end }}
- {{ if .Env.CONFIG_MICROSOFT_API_APP_CLIENT_ID -}}
- microsoftApiApplicationClientID: '{{ .Env.CONFIG_MICROSOFT_API_APP_CLIENT_ID }}',
- {{ end }}
- {{ if .Env.CONFIG_CALLSTATS_CUSTOM_SCRIPT_URL -}}
- callStatsCustomScriptUrl: '{{ .Env.CONFIG_CALLSTATS_CUSTOM_SCRIPT_URL }}',
- {{ end }}
- {{ if .Env.ETHERPAD_URL_BASE }}
- etherpad_base: '{{ .Env.ETHERPAD_URL_BASE }}',
- {{ end }}
- {{ if .Env.CONFIG_DIALIN_NUMBERS_URL }}
- dialInNumbersUrl: '{{ .Env.CONFIG_DIALIN_NUMBERS_URL }}',
- {{ end }}
- {{ if .Env.CONFIG_CONFCODE_URL }}
- dialInConfCodeUrl: '{{ .Env.CONFIG_CONFCODE_URL }}',
- {{ end }}
- {{ if .Env.CONFIG_DIALOUT_CODES_URL }}
- dialOutCodesUrl: '{{ .Env.CONFIG_DIALOUT_CODES_URL }}',
- {{ end }}
- {{ if .Env.CONFIG_DIALOUT_AUTH_URL }}
- dialOutAuthUrl: '{{ .Env.CONFIG_DIALOUT_AUTH_URL }}',
- {{ end }}
- {{ if .Env.CONFIG_PEOPLE_SEARCH_URL }}
- peopleSearchUrl: '{{ .Env.CONFIG_PEOPLE_SEARCH_URL }}',
- {{ end }}
- {{ if .Env.CONFIG_PEOPLE_SEARCH_URL }}
- peopleSearchQueryTypes: ['user','conferenceRooms'],
- {{ end }}
- {{ if .Env.CONFIG_INVITE_SERVICE_URL }}
- inviteServiceUrl: '{{ .Env.CONFIG_INVITE_SERVICE_URL }}',
- {{ end }}
- {{ if .Env.CONFIG_INVITE_SERVICE_CALLFLOWS_URL }}
- inviteServiceCallFlowsUrl: '{{ .Env.CONFIG_INVITE_SERVICE_CALLFLOWS_URL }}',
- {{ end }}
- {{ if .Env.CONFIG_CHROME_EXTENSION_BANNER_JSON }}
- chromeExtensionBanner: {{ .Env.CONFIG_CHROME_EXTENSION_BANNER_JSON }},
- {{ end }}
-
-
-
-
- };
|