|
@@ -1,5 +1,45 @@
|
|
|
/* eslint-disable no-unused-vars, no-var */
|
|
|
-
|
|
|
+{{ $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 = {
|
|
|
// Configuration
|
|
|
//
|
|
@@ -10,47 +50,48 @@ var config = {
|
|
|
// Custom function which given the URL path should return a room name.
|
|
|
// getroomnode: function (path) { return 'someprefixpossiblybasedonpath'; },
|
|
|
|
|
|
-
|
|
|
// Connection
|
|
|
//
|
|
|
|
|
|
hosts: {
|
|
|
// XMPP domain.
|
|
|
- domain: 'jitsi-meet.example.com',
|
|
|
-
|
|
|
+ domain: '{{ $XMPP_DOMAIN }}',
|
|
|
+ {{ if $ENABLE_GUESTS -}}
|
|
|
// When using authentication, domain for guest users.
|
|
|
- // anonymousdomain: 'guest.example.com',
|
|
|
-
|
|
|
+ anonymousdomain: '{{ .Env.XMPP_GUEST_DOMAIN }}',
|
|
|
+ {{ end -}}
|
|
|
+ {{ if $ENABLE_AUTH -}}
|
|
|
// Domain for authenticated users. Defaults to <domain>.
|
|
|
- // authdomain: 'jitsi-meet.example.com',
|
|
|
-
|
|
|
- // Jirecon recording component domain.
|
|
|
- // jirecon: 'jirecon.jitsi-meet.example.com',
|
|
|
-
|
|
|
- // Call control component (Jigasi).
|
|
|
- // call_control: 'callcontrol.jitsi-meet.example.com',
|
|
|
-
|
|
|
+ authdomain: '{{ .Env.XMPP_DOMAIN }}',
|
|
|
+ {{ end -}}
|
|
|
// Focus component domain. Defaults to focus.<domain>.
|
|
|
- // focus: 'focus.jitsi-meet.example.com',
|
|
|
-
|
|
|
+ focus: 'focus.{{ $XMPP_DOMAIN }}',
|
|
|
// XMPP MUC domain. FIXME: use XEP-0030 to discover it.
|
|
|
- muc: 'conference.jitsi-meet.example.com'
|
|
|
+ {{ if $ENABLE_SUBDOMAINS -}}
|
|
|
+ muc: 'conference.'+subdomain+'{{ $XMPP_DOMAIN }}'
|
|
|
+ {{ else -}}
|
|
|
+ muc: {{ $XMPP_MUC_DOMAIN }}'
|
|
|
+ {{ end -}}
|
|
|
},
|
|
|
-
|
|
|
// BOSH URL. FIXME: use XEP-0156 to discover it.
|
|
|
- bosh: '//jitsi-meet.example.com/http-bind',
|
|
|
+ bosh: '{{ if .Env.CONFIG_BOSH_HOST }}https://{{ $.Env.CONFIG_BOSH_HOST }}{{ end }}/http-bind',
|
|
|
+ {{ if .Env.ENABLE_WEBSOCKETS -}}
|
|
|
+ websocket: 'wss://{{ if .Env.CONFIG_BOSH_HOST }}{{ .Env.CONFIG_BOSH_HOST }}{{end}}/xmpp-websocket',
|
|
|
+ {{ end -}}
|
|
|
|
|
|
// The name of client node advertised in XEP-0115 'c' stanza
|
|
|
clientNode: 'http://jitsi.org/jitsimeet',
|
|
|
|
|
|
- // The real JID of focus participant - can be overridden here
|
|
|
- // focusUserJid: 'focus@auth.jitsi-meet.example.com',
|
|
|
-
|
|
|
-
|
|
|
// Testing / experimental features.
|
|
|
- //
|
|
|
-
|
|
|
testing: {
|
|
|
+ // enable screensharing bitrate cap
|
|
|
+ capScreenshareBitrate: {{ $CONFIG_TESTING_CAP_SCREENSHARE_BITRATE }},
|
|
|
+
|
|
|
+ // enable octo
|
|
|
+ octo: {
|
|
|
+ probability: {{ $CONFIG_TESTING_OCTO_PROBABILITY }}
|
|
|
+ },
|
|
|
+
|
|
|
// Enables experimental simulcast support on Firefox.
|
|
|
enableFirefoxSimulcast: false,
|
|
|
|
|
@@ -84,7 +125,7 @@ var config = {
|
|
|
// startAudioOnly: false,
|
|
|
|
|
|
// Every participant after the Nth will start audio muted.
|
|
|
- // startAudioMuted: 10,
|
|
|
+ startAudioMuted: {{ $CONFIG_START_AUDIO_MUTED }},
|
|
|
|
|
|
// Start calls with audio muted. Unlike the option above, this one is only
|
|
|
// applied locally. FIXME: having these 2 options is confusing.
|
|
@@ -97,26 +138,40 @@ var config = {
|
|
|
// Video
|
|
|
|
|
|
// Sets the preferred resolution (height) for local video. Defaults to 720.
|
|
|
- // resolution: 720,
|
|
|
+ resolution: {{ $CONFIG_RESOLUTION }},
|
|
|
|
|
|
// w3c spec-compliant video constraints to use for video capture. Currently
|
|
|
// used by browsers that return true from lib-jitsi-meet's
|
|
|
// util#browser#usesNewGumFlow. The constraints are independency from
|
|
|
// this config's resolution value. Defaults to requesting an ideal aspect
|
|
|
// ratio of 16:9 with an ideal resolution of 720.
|
|
|
- // constraints: {
|
|
|
- // video: {
|
|
|
- // aspectRatio: 16 / 9,
|
|
|
- // height: {
|
|
|
- // ideal: 720,
|
|
|
- // max: 720,
|
|
|
- // min: 240
|
|
|
- // }
|
|
|
- // }
|
|
|
- // },
|
|
|
+ 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
|
|
|
+ }
|
|
|
+ }
|
|
|
+ },
|
|
|
+
|
|
|
+ // URL for pre-bind BOSH session setup service
|
|
|
+{{ 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 -}}
|
|
|
|
|
|
// Enable / disable simulcast support.
|
|
|
- // disableSimulcast: false,
|
|
|
+ disableSimulcast: {{ $CONFIG_DISABLE_SIMULCAST }},
|
|
|
|
|
|
// Enable / disable layer suspension. If enabled, endpoints whose HD
|
|
|
// layers are not in use will be suspended (no longer sent) until they
|
|
@@ -128,7 +183,7 @@ var config = {
|
|
|
disableSuspendVideo: true,
|
|
|
|
|
|
// Every participant after the Nth will start video muted.
|
|
|
- // startVideoMuted: 10,
|
|
|
+ startVideoMuted: {{ $CONFIG_START_VIDEO_MUTED }},
|
|
|
|
|
|
// Start calls with video muted. Unlike the option above, this one is only
|
|
|
// applied locally. FIXME: having these 2 options is confusing.
|
|
@@ -147,8 +202,11 @@ var config = {
|
|
|
// Desktop sharing
|
|
|
|
|
|
// The ID of the jidesha extension for Chrome.
|
|
|
+ {{ if .Env.CONFIG_CHROME_EXT_ID }}
|
|
|
+ desktopSharingChromeExtId: '{{.Env.CONFIG_CHROME_EXT_ID}}',
|
|
|
+ {{ else }}
|
|
|
desktopSharingChromeExtId: null,
|
|
|
-
|
|
|
+ {{ end }}
|
|
|
// Whether desktop sharing should be disabled on Chrome.
|
|
|
// desktopSharingChromeDisabled: false,
|
|
|
|
|
@@ -157,7 +215,7 @@ var config = {
|
|
|
desktopSharingChromeSources: [ 'screen', 'window', 'tab' ],
|
|
|
|
|
|
// Required version of Chrome extension
|
|
|
- desktopSharingChromeMinExtVersion: '0.1',
|
|
|
+ desktopSharingChromeMinExtVersion: '{{ $CONFIG_CHROME_MIN_EXT_VERSION }}',
|
|
|
|
|
|
// Whether desktop sharing should be disabled on Firefox.
|
|
|
// desktopSharingFirefoxDisabled: false,
|
|
@@ -174,32 +232,45 @@ var config = {
|
|
|
// Recording
|
|
|
|
|
|
// Whether to enable file recording or not.
|
|
|
- // fileRecordingsEnabled: false,
|
|
|
+ {{ if $ENABLE_RECORDING }}
|
|
|
+ hiddenDomain: '{{ $XMPP_RECORDER_DOMAIN }}',
|
|
|
+ fileRecordingsEnabled: true,
|
|
|
+
|
|
|
+ // Whether to enable live streaming or not.
|
|
|
+ liveStreamingEnabled: true,
|
|
|
+ {{ if .Env.CONFIG_DROPBOX_APPKEY }}
|
|
|
// Enable the dropbox integration.
|
|
|
- // dropbox: {
|
|
|
- // appKey: '<APP_KEY>' // Specify your app key here.
|
|
|
- // // A URL to redirect the user to, after authenticating
|
|
|
- // // by default uses:
|
|
|
- // // 'https://jitsi-meet.example.com/static/oauth.html'
|
|
|
- // redirectURI:
|
|
|
- // 'https://jitsi-meet.example.com/subfolder/static/oauth.html'
|
|
|
- // },
|
|
|
+ dropbox: {
|
|
|
+ // Specify your app key here.
|
|
|
+ appKey: '{{ .Env.CONFIG_DROPBOX_APPKEY }}',
|
|
|
+ {{ if .Env.CONFIG_DROPBOX_REDIRECT_URI }}
|
|
|
+ // A URL to redirect the user to, after authenticating
|
|
|
+ // by default uses:
|
|
|
+ // 'https://jitsi-meet.example.com/static/oauth.html'
|
|
|
+ redirectURI: '{{ .Env.CONFIG_DROPBOX_REDIRECT_URI }}'
|
|
|
+ {{ end }}
|
|
|
+ },
|
|
|
+ {{ end }}
|
|
|
+ {{ if $CONFIG_FILE_RECORDING_SERVICE_ENABLED }}
|
|
|
// When integrations like dropbox are enabled only that will be shown,
|
|
|
// by enabling fileRecordingsServiceEnabled, we show both the integrations
|
|
|
// and the generic recording service (its configuration and storage type
|
|
|
// depends on jibri configuration)
|
|
|
- // fileRecordingsServiceEnabled: false,
|
|
|
+ fileRecordingsServiceEnabled: true,
|
|
|
+ {{ end }}
|
|
|
+ {{ if $CONFIG_FILE_RECORDING_SERVICE_SHARING_ENABLED }}
|
|
|
// Whether to show the possibility to share file recording with other people
|
|
|
// (e.g. meeting participants), based on the actual implementation
|
|
|
// on the backend.
|
|
|
- // fileRecordingsServiceSharingEnabled: false,
|
|
|
-
|
|
|
- // Whether to enable live streaming or not.
|
|
|
- // liveStreamingEnabled: false,
|
|
|
+ fileRecordingsServiceSharingEnabled: true,
|
|
|
+ {{ end }}
|
|
|
+ {{ end }}
|
|
|
|
|
|
+ {{ if $ENABLE_TRANSCRIPTIONS }}
|
|
|
// Transcription (in interface_config,
|
|
|
// subtitles and buttons can be configured)
|
|
|
- // transcribingEnabled: false,
|
|
|
+ transcribingEnabled: true,
|
|
|
+ {{ end }}
|
|
|
|
|
|
// Misc
|
|
|
|
|
@@ -213,30 +284,38 @@ var config = {
|
|
|
// (draft-holmer-rmcat-transport-wide-cc-extensions-01). This setting
|
|
|
// affects congestion control, it practically enables send-side bandwidth
|
|
|
// estimations.
|
|
|
- // enableTcc: true,
|
|
|
+ enableTcc: {{ $CONFIG_ENABLE_TCC }},
|
|
|
|
|
|
// Disables or enables REMB (the default is in Jicofo and set to false)
|
|
|
// (draft-alvestrand-rmcat-remb-03). This setting affects congestion
|
|
|
// control, it practically enables recv-side bandwidth estimations. When
|
|
|
// both TCC and REMB are enabled, TCC takes precedence. When both are
|
|
|
// disabled, then bandwidth estimations are disabled.
|
|
|
- // enableRemb: false,
|
|
|
+ enableRemb: {{ $CONFIG_ENABLE_REMB }},
|
|
|
|
|
|
// Defines the minimum number of participants to start a call (the default
|
|
|
// is set in Jicofo and set to 2).
|
|
|
// minParticipants: 2,
|
|
|
|
|
|
+ {{ if $CONFIG_USE_STUN_TURN -}}
|
|
|
// Use XEP-0215 to fetch STUN and TURN servers.
|
|
|
- // useStunTurn: true,
|
|
|
+ useStunTurn: true,
|
|
|
+ {{ else -}}
|
|
|
+ // Skip STUN and TURN.
|
|
|
+ useStunTurn: false,
|
|
|
+ {{ end -}}
|
|
|
|
|
|
// Enable IPv6 support.
|
|
|
- // useIPv6: true,
|
|
|
+ {{ if .Env.CONFIG_USE_IPV6 -}}
|
|
|
+ useIPv6: true,
|
|
|
+ {{ end -}}
|
|
|
|
|
|
// Enables / disables a data communication channel with the Videobridge.
|
|
|
// Values can be 'datachannel', 'websocket', true (treat it as
|
|
|
// 'datachannel'), undefined (treat it as 'datachannel') and false (don't
|
|
|
// open any channel).
|
|
|
// openBridgeChannel: true,
|
|
|
+ openBridgeChannel: '{{ $CONFIG_OPEN_BRIDGE_CHANNEL }}', // One of true, 'datachannel', or 'websocket'
|
|
|
|
|
|
|
|
|
// UI
|
|
@@ -245,8 +324,13 @@ var config = {
|
|
|
// Use display name as XMPP nickname.
|
|
|
// useNicks: false,
|
|
|
|
|
|
+ {{ if $CONFIG_REQUIRE_DISPLAY_NAME }}
|
|
|
// Require users to always specify a display name.
|
|
|
- // requireDisplayName: true,
|
|
|
+ requireDisplayName: true,
|
|
|
+ {{ else }}
|
|
|
+ // No need to specify a display name.
|
|
|
+ requireDisplayName: false,
|
|
|
+ {{ end }}
|
|
|
|
|
|
// Whether to use a welcome page or not. In case it's false a random room
|
|
|
// will be joined when no room is specified.
|
|
@@ -265,7 +349,7 @@ var config = {
|
|
|
// If true all users without a token will be considered guests and all users
|
|
|
// with token will be considered non-guests. Only guests will be allowed to
|
|
|
// edit their profile.
|
|
|
- enableUserRolesBasedOnToken: false,
|
|
|
+ enableUserRolesBasedOnToken: {{ $CONFIG_ENABLE_USER_ROLES_BASED_ON_TOKEN }},
|
|
|
|
|
|
// Whether or not some features are checked based on token.
|
|
|
// enableFeaturesBasedOnToken: false,
|
|
@@ -283,7 +367,9 @@ var config = {
|
|
|
|
|
|
// Enables calendar integration, depends on googleApiApplicationClientID
|
|
|
// and microsoftApiApplicationClientID
|
|
|
- // enableCalendarIntegration: false,
|
|
|
+{{ if $CONFIG_ENABLE_CALENDAR }}
|
|
|
+ enableCalendarIntegration: true,
|
|
|
+{{ end }}
|
|
|
|
|
|
// Stats
|
|
|
//
|
|
@@ -294,15 +380,19 @@ var config = {
|
|
|
// estimation tests.
|
|
|
// gatherStats: false,
|
|
|
|
|
|
+{{ if .Env.CONFIG_CALLSTATS_ID }}
|
|
|
// To enable sending statistics to callstats.io you must provide the
|
|
|
// Application ID and Secret.
|
|
|
- // callStatsID: '',
|
|
|
- // callStatsSecret: '',
|
|
|
-
|
|
|
+ callStatsID: '{{ .Env.CONFIG_CALLSTATS_ID }}',
|
|
|
+{{ end }}
|
|
|
+{{ if .Env.CONFIG_CALLSTATS_ID }}
|
|
|
+ callStatsSecret: '{{ .Env.CONFIG_CALLSTATS_SECRET }}',
|
|
|
+{{ end }}
|
|
|
+{{ if $CONFIG_ENABLE_STATS_ID }}
|
|
|
// enables callstatsUsername to be reported as statsId and used
|
|
|
// by callstats as repoted remote id
|
|
|
- // enableStatsID: false
|
|
|
-
|
|
|
+ enableStatsID: true,
|
|
|
+{{ end }}
|
|
|
// enables sending participants display name to callstats
|
|
|
// enableDisplayNameInStats: false
|
|
|
|
|
@@ -329,8 +419,9 @@ var config = {
|
|
|
enabled: true,
|
|
|
|
|
|
// Use XEP-0215 to fetch STUN and TURN servers.
|
|
|
- // useStunTurn: true,
|
|
|
-
|
|
|
+ {{ if .Env.CONFIG_P2P_STUNTURN }}
|
|
|
+ useStunTurn: true,
|
|
|
+ {{ end }}
|
|
|
// The STUN servers that will be used in the peer to peer connections
|
|
|
stunServers: [
|
|
|
{ urls: 'stun:stun.l.google.com:19302' },
|
|
@@ -361,12 +452,21 @@ var config = {
|
|
|
|
|
|
analytics: {
|
|
|
// The Google Analytics Tracking ID:
|
|
|
- // googleAnalyticsTrackingId: 'your-tracking-id-UA-123456-1'
|
|
|
-
|
|
|
+ {{ if .Env.CONFIG_GOOGLE_ANALYTICS_ID }}
|
|
|
+ googleAnalyticsTrackingId: '{{ .Env.CONFIG_GOOGLE_ANALYTICS_ID }}',
|
|
|
+ {{ end }}
|
|
|
// The Amplitude APP Key:
|
|
|
// amplitudeAPPKey: '<APP_KEY>'
|
|
|
-
|
|
|
+ {{ 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 }}
|
|
|
// Array of script URLs to load as lib-jitsi-meet "analytics handlers".
|
|
|
+ {{ if .Env.CONFIG_ANALYTICS_SCRIPT_URLS }}
|
|
|
+ scriptURLs: [ '{{ join "','" (splitList "," .Env.CONFIG_ANALYTICS_SCRIPT_URLS) }}' ],
|
|
|
+ {{ end }}
|
|
|
// scriptURLs: [
|
|
|
// "libs/analytics-ga.min.js", // google-analytics
|
|
|
// "https://example.com/my-custom-analytics.js"
|
|
@@ -375,11 +475,16 @@ var config = {
|
|
|
|
|
|
// Information about the jitsi-meet instance we are connecting to, including
|
|
|
// the user region as seen by the server.
|
|
|
- deploymentInfo: {
|
|
|
+ // deploymentInfo: {
|
|
|
// shard: "shard1",
|
|
|
// region: "europe",
|
|
|
// userRegion: "asia"
|
|
|
- }
|
|
|
+ // }
|
|
|
+ deploymentInfo: {
|
|
|
+ environment: '{{ .Env.CONFIG_DEPLOYMENTINFO_ENVIRONMENT }}',
|
|
|
+ envType: '{{ .Env.CONFIG_DEPLOYMENTINFO_ENVIRONMENT_TYPE }}',
|
|
|
+ userRegion: '<!--# echo var="http_x_proxy_region" default="" -->',
|
|
|
+ },
|
|
|
|
|
|
// Local Recording
|
|
|
//
|
|
@@ -426,6 +531,63 @@ var config = {
|
|
|
// the menu has option to flip the locally seen video for local presentations
|
|
|
// disableLocalVideoFlip: false
|
|
|
|
|
|
+
|
|
|
+ // Lipsync hack in jicofo, may not be safe
|
|
|
+ {{ 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 }}
|
|
|
// List of undocumented settings used in jitsi-meet
|
|
|
/**
|
|
|
_immediateReloadThreshold
|
|
@@ -433,23 +595,12 @@ var config = {
|
|
|
autoRecordToken
|
|
|
debug
|
|
|
debugAudioLevels
|
|
|
- deploymentInfo
|
|
|
- dialInConfCodeUrl
|
|
|
- dialInNumbersUrl
|
|
|
- dialOutAuthUrl
|
|
|
- dialOutCodesUrl
|
|
|
disableRemoteControl
|
|
|
displayJids
|
|
|
- etherpad_base
|
|
|
- externalConnectUrl
|
|
|
+
|
|
|
firefox_fake_device
|
|
|
- googleApiApplicationClientID
|
|
|
iAmRecorder
|
|
|
iAmSipGateway
|
|
|
- microsoftApiApplicationClientID
|
|
|
- peopleSearchQueryTypes
|
|
|
- peopleSearchUrl
|
|
|
- requireDisplayName
|
|
|
tokenAuthUrl
|
|
|
*/
|
|
|
|
|
@@ -460,20 +611,16 @@ var config = {
|
|
|
abTesting
|
|
|
avgRtpStatsN
|
|
|
callStatsConfIDNamespace
|
|
|
- callStatsCustomScriptUrl
|
|
|
desktopSharingSources
|
|
|
disableAEC
|
|
|
disableAGC
|
|
|
disableAP
|
|
|
disableHPF
|
|
|
disableNS
|
|
|
- enableLipSync
|
|
|
- enableTalkWhileMuted
|
|
|
forceJVB121Ratio
|
|
|
hiddenDomain
|
|
|
ignoreStartMuted
|
|
|
nick
|
|
|
- startBitrate
|
|
|
*/
|
|
|
|
|
|
};
|