[__jitsi*] Update to 2.0.6726
Sponsored by: plataformess.org
This commit is contained in:
parent
a38275f6d7
commit
e052178122
8 changed files with 1001 additions and 239 deletions
|
@ -125,7 +125,10 @@ require="__directory${NGINX_ETC}/sites-available" __file "${NGINX_ETC}/sites-ava
|
||||||
|
|
||||||
server_names_hash_bucket_size 64;
|
server_names_hash_bucket_size 64;
|
||||||
|
|
||||||
# nginx server configuration for:
|
types {
|
||||||
|
# nginx's default mime.types doesn't include a mapping for wasm
|
||||||
|
application/wasm wasm;
|
||||||
|
}
|
||||||
|
|
||||||
server {
|
server {
|
||||||
|
|
||||||
|
|
30
type/__jitsi_meet_domain/files/_update_jitsi_configurations.sh
Executable file
30
type/__jitsi_meet_domain/files/_update_jitsi_configurations.sh
Executable file
|
@ -0,0 +1,30 @@
|
||||||
|
#!/bin/sh -eu
|
||||||
|
|
||||||
|
# This is a helper to update the '.sh.orig' files for jitsi's
|
||||||
|
# configuration files.
|
||||||
|
# Then the changes must be propagated to their corresponding .sh
|
||||||
|
# files by the type maintainer or a contributor
|
||||||
|
|
||||||
|
# We could automate this, but are using it as an indicator for the
|
||||||
|
# latest branch with which we conciliated changes.
|
||||||
|
BRANCH="jitsi-meet_6726"
|
||||||
|
REPO="https://github.com/jitsi/jitsi-meet"
|
||||||
|
|
||||||
|
get_url() {
|
||||||
|
file="${1}"
|
||||||
|
printf "%s/raw/stable/%s/%s" "${REPO}" "${BRANCH}" "${file}"
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
download_file() {
|
||||||
|
file="${1}"
|
||||||
|
destination="${2:-${file}.sh.orig}"
|
||||||
|
url="$(get_url "${file}")"
|
||||||
|
echo "Downloading ${destination}"
|
||||||
|
curl -L "${url}" > "${destination}"
|
||||||
|
echo
|
||||||
|
}
|
||||||
|
|
||||||
|
download_file config.js
|
||||||
|
download_file interface_config.js
|
||||||
|
download_file doc/debian/jitsi-meet/jitsi-meet.example nginx.sh.orig
|
|
@ -39,9 +39,6 @@ fi
|
||||||
// Websocket URL
|
// Websocket URL
|
||||||
// websocket: 'wss://${JITSI_HOST}/xmpp-websocket',
|
// websocket: 'wss://${JITSI_HOST}/xmpp-websocket',
|
||||||
|
|
||||||
// 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
|
// The real JID of focus participant - can be overridden here
|
||||||
// Do not change username - FIXME: Make focus username configurable
|
// Do not change username - FIXME: Make focus username configurable
|
||||||
// https://github.com/jitsi/jitsi-meet/issues/7376
|
// https://github.com/jitsi/jitsi-meet/issues/7376
|
||||||
|
@ -56,9 +53,16 @@ fi
|
||||||
// issues related to insertable streams.
|
// issues related to insertable streams.
|
||||||
// disableE2EE: false,
|
// disableE2EE: false,
|
||||||
|
|
||||||
|
// Enables/disables thumbnail reordering in the filmstrip. It is enabled by default unless explicitly
|
||||||
|
// disabled by the below option.
|
||||||
|
// enableThumbnailReordering: true,
|
||||||
|
|
||||||
|
// Enables XMPP WebSocket (as opposed to BOSH) for the given amount of users.
|
||||||
|
// mobileXmppWsThreshold: 10 // enable XMPP WebSockets on mobile for 10% of the users
|
||||||
|
|
||||||
// P2P test mode disables automatic switching to P2P when there are 2
|
// P2P test mode disables automatic switching to P2P when there are 2
|
||||||
// participants in the conference.
|
// participants in the conference.
|
||||||
p2pTestMode: false
|
// p2pTestMode: false,
|
||||||
|
|
||||||
// Enables the test specific features consumed by jitsi-meet-torture
|
// Enables the test specific features consumed by jitsi-meet-torture
|
||||||
// testMode: false
|
// testMode: false
|
||||||
|
@ -71,8 +75,10 @@ fi
|
||||||
// simulcast is turned off for the desktop share. If presenter is turned
|
// simulcast is turned off for the desktop share. If presenter is turned
|
||||||
// on while screensharing is in progress, the max bitrate is automatically
|
// on while screensharing is in progress, the max bitrate is automatically
|
||||||
// adjusted to 2.5 Mbps. This takes a value between 0 and 1 which determines
|
// adjusted to 2.5 Mbps. This takes a value between 0 and 1 which determines
|
||||||
// the probability for this to be enabled.
|
// the probability for this to be enabled. This setting has been deprecated.
|
||||||
// capScreenshareBitrate: 1 // 0 to disable
|
// desktopSharingFrameRate.max now determines whether simulcast will be enabled
|
||||||
|
// or disabled for the screenshare.
|
||||||
|
// capScreenshareBitrate: 1 // 0 to disable - deprecated.
|
||||||
|
|
||||||
// Enable callstats only for a percentage of users.
|
// Enable callstats only for a percentage of users.
|
||||||
// This takes a value between 0 and 100 which determines the probability for
|
// This takes a value between 0 and 100 which determines the probability for
|
||||||
|
@ -80,6 +86,18 @@ fi
|
||||||
// callStatsThreshold: 5 // enable callstats for 5% of the users.
|
// callStatsThreshold: 5 // enable callstats for 5% of the users.
|
||||||
},
|
},
|
||||||
|
|
||||||
|
// Disables moderator indicators.
|
||||||
|
// disableModeratorIndicator: false,
|
||||||
|
|
||||||
|
// Disables the reactions feature.
|
||||||
|
// disableReactions: true,
|
||||||
|
|
||||||
|
// Disables polls feature.
|
||||||
|
// disablePolls: false,
|
||||||
|
|
||||||
|
// Disables self-view tile. (hides it from tile view and from filmstrip)
|
||||||
|
// disableSelfView: false,
|
||||||
|
|
||||||
// Disables ICE/UDP by filtering out local and remote UDP candidates in
|
// Disables ICE/UDP by filtering out local and remote UDP candidates in
|
||||||
// signalling.
|
// signalling.
|
||||||
// webrtcIceUdpDisable: false,
|
// webrtcIceUdpDisable: false,
|
||||||
|
@ -92,6 +110,9 @@ fi
|
||||||
// Media
|
// Media
|
||||||
//
|
//
|
||||||
|
|
||||||
|
// Enable unified plan implementation support on Chromium based browsers.
|
||||||
|
// enableUnifiedOnChrome: false,
|
||||||
|
|
||||||
// Audio
|
// Audio
|
||||||
|
|
||||||
// Disable measuring of audio levels.
|
// Disable measuring of audio levels.
|
||||||
|
@ -108,6 +129,10 @@ fi
|
||||||
// about the call.
|
// about the call.
|
||||||
// enableSaveLogs: false,
|
// enableSaveLogs: false,
|
||||||
|
|
||||||
|
// Enabling this will hide the "Show More" link in the GSM popover that can be
|
||||||
|
// used to display more statistics about the connection (IP, Port, protocol, etc).
|
||||||
|
// disableShowMoreStats: true,
|
||||||
|
|
||||||
// Enabling this will run the lib-jitsi-meet noise detection module which will
|
// Enabling this will run the lib-jitsi-meet noise detection module which will
|
||||||
// notify the user if there is noise, other than voice, coming from the current
|
// notify the user if there is noise, other than voice, coming from the current
|
||||||
// selected microphone. The purpose it to let the user know that the input could
|
// selected microphone. The purpose it to let the user know that the input could
|
||||||
|
@ -129,19 +154,34 @@ fi
|
||||||
// participants and to enable it back a reload is needed.
|
// participants and to enable it back a reload is needed.
|
||||||
// startSilent: false
|
// startSilent: false
|
||||||
|
|
||||||
// Sets the preferred target bitrate for the Opus audio codec by setting its
|
|
||||||
// 'maxaveragebitrate' parameter. Currently not available in p2p mode.
|
|
||||||
// Valid values are in the range 6000 to 510000
|
|
||||||
// opusMaxAverageBitrate: 20000,
|
|
||||||
|
|
||||||
// Enables support for opus-red (redundancy for Opus).
|
// Enables support for opus-red (redundancy for Opus).
|
||||||
// enableOpusRed: false,
|
// enableOpusRed: false,
|
||||||
|
|
||||||
|
// Specify audio quality stereo and opusMaxAverageBitrate values in order to enable HD audio.
|
||||||
|
// Beware, by doing so, you are disabling echo cancellation, noise suppression and AGC.
|
||||||
|
// audioQuality: {
|
||||||
|
// stereo: false,
|
||||||
|
// opusMaxAverageBitrate: null // Value to fit the 6000 to 510000 range.
|
||||||
|
// },
|
||||||
|
|
||||||
// Video
|
// Video
|
||||||
|
|
||||||
// Sets the preferred resolution (height) for local video. Defaults to 720.
|
// Sets the preferred resolution (height) for local video. Defaults to 720.
|
||||||
// resolution: 720,
|
// resolution: 720,
|
||||||
|
|
||||||
|
// Specifies whether the raised hand will hide when someone becomes a dominant speaker or not
|
||||||
|
// disableRemoveRaisedHandOnFocus: false,
|
||||||
|
|
||||||
|
// Specifies whether there will be a search field in speaker stats or not
|
||||||
|
// disableSpeakerStatsSearch: false,
|
||||||
|
|
||||||
|
// Specifies whether participants in speaker stats should be ordered or not, and with what priority
|
||||||
|
// speakerStatsOrder: [
|
||||||
|
// 'role', <- Moderators on top
|
||||||
|
// 'name', <- Alphabetically by name
|
||||||
|
// 'hasLeft', <- The ones that have left in the bottom
|
||||||
|
// ] <- the order of the array elements determines priority
|
||||||
|
|
||||||
// How many participants while in the tile view mode, before the receiving video quality is reduced from HD to SD.
|
// How many participants while in the tile view mode, before the receiving video quality is reduced from HD to SD.
|
||||||
// Use -1 to disable.
|
// Use -1 to disable.
|
||||||
// maxFullResolutionParticipants: 2,
|
// maxFullResolutionParticipants: 2,
|
||||||
|
@ -165,9 +205,10 @@ $(if [ -n "${VIDEO_CONSTRAINTS}" ]; then echo "${VIDEO_CONSTRAINTS},"; fi)
|
||||||
// Enable / disable simulcast support.
|
// Enable / disable simulcast support.
|
||||||
// disableSimulcast: false,
|
// disableSimulcast: false,
|
||||||
|
|
||||||
// Enable / disable layer suspension. If enabled, endpoints whose HD
|
// Enable / disable layer suspension. If enabled, endpoints whose HD layers are not in use will be suspended
|
||||||
// layers are not in use will be suspended (no longer sent) until they
|
// (no longer sent) until they are requested again. This is enabled by default. This must be enabled for screen
|
||||||
// are requested again.
|
// sharing to work as expected on Chrome. Disabling this might result in low resolution screenshare being sent
|
||||||
|
// by the client.
|
||||||
// enableLayerSuspension: false,
|
// enableLayerSuspension: false,
|
||||||
|
|
||||||
// Every participant after the Nth will start video muted.
|
// Every participant after the Nth will start video muted.
|
||||||
|
@ -229,6 +270,18 @@ $(if [ -n "${VIDEO_CONSTRAINTS}" ]; then echo "${VIDEO_CONSTRAINTS},"; fi)
|
||||||
// subtitles and buttons can be configured)
|
// subtitles and buttons can be configured)
|
||||||
// transcribingEnabled: false,
|
// transcribingEnabled: false,
|
||||||
|
|
||||||
|
// If true transcriber will use the application language.
|
||||||
|
// The application language is either explicitly set by participants in their settings or automatically
|
||||||
|
// detected based on the environment, e.g. if the app is opened in a chrome instance which is using french as its
|
||||||
|
// default language then transcriptions for that participant will be in french.
|
||||||
|
// Defaults to true.
|
||||||
|
// transcribeWithAppLanguage: true,
|
||||||
|
|
||||||
|
// Transcriber language. This settings will only work if "transcribeWithAppLanguage" is explicitly set to false.
|
||||||
|
// Available languages can be found in
|
||||||
|
// ./src/react/features/transcribing/transcriber-langs.json.
|
||||||
|
// preferredTranscribeLanguage: 'en-US',
|
||||||
|
|
||||||
// Enables automatic turning on captions when recording is started
|
// Enables automatic turning on captions when recording is started
|
||||||
// autoCaptionOnRecord: false,
|
// autoCaptionOnRecord: false,
|
||||||
|
|
||||||
|
@ -237,6 +290,20 @@ $(if [ -n "${VIDEO_CONSTRAINTS}" ]; then echo "${VIDEO_CONSTRAINTS},"; fi)
|
||||||
// Default value for the channel "last N" attribute. -1 for unlimited.
|
// Default value for the channel "last N" attribute. -1 for unlimited.
|
||||||
channelLastN: ${CHANNEL_LAST_N},
|
channelLastN: ${CHANNEL_LAST_N},
|
||||||
|
|
||||||
|
// Connection indicators
|
||||||
|
// connectionIndicators: {
|
||||||
|
// autoHide: true,
|
||||||
|
// autoHideTimeout: 5000,
|
||||||
|
// disabled: false,
|
||||||
|
// disableDetails: false,
|
||||||
|
// inactiveDisabled: false
|
||||||
|
// },
|
||||||
|
|
||||||
|
// Provides a way for the lastN value to be controlled through the UI.
|
||||||
|
// When startLastN is present, conference starts with a last-n value of startLastN and channelLastN
|
||||||
|
// value will be used when the quality level is selected using "Manage Video Quality" slider.
|
||||||
|
// startLastN: 1,
|
||||||
|
|
||||||
// Provides a way to use different "last N" values based on the number of participants in the conference.
|
// Provides a way to use different "last N" values based on the number of participants in the conference.
|
||||||
// The keys in an Object represent number of participants and the values are "last N" to be used when number of
|
// The keys in an Object represent number of participants and the values are "last N" to be used when number of
|
||||||
// participants gets to or above the number.
|
// participants gets to or above the number.
|
||||||
|
@ -274,12 +341,24 @@ $(if [ -n "${VIDEO_CONSTRAINTS}" ]; then echo "${VIDEO_CONSTRAINTS},"; fi)
|
||||||
// // to take effect.
|
// // to take effect.
|
||||||
// preferredCodec: 'VP8',
|
// preferredCodec: 'VP8',
|
||||||
//
|
//
|
||||||
|
// // Provides a way to enforce the preferred codec for the conference even when the conference has endpoints
|
||||||
|
// // that do not support the preferred codec. For example, older versions of Safari do not support VP9 yet.
|
||||||
|
// // This will result in Safari not being able to decode video from endpoints sending VP9 video.
|
||||||
|
// // When set to false, the conference falls back to VP8 whenever there is an endpoint that doesn't support the
|
||||||
|
// // preferred codec and goes back to the preferred codec when that endpoint leaves.
|
||||||
|
// // enforcePreferredCodec: false,
|
||||||
|
//
|
||||||
// // Provides a way to configure the maximum bitrates that will be enforced on the simulcast streams for
|
// // Provides a way to configure the maximum bitrates that will be enforced on the simulcast streams for
|
||||||
// // video tracks. The keys in the object represent the type of the stream (LD, SD or HD) and the values
|
// // video tracks. The keys in the object represent the type of the stream (LD, SD or HD) and the values
|
||||||
// // are the max.bitrates to be set on that particular type of stream. The actual send may vary based on
|
// // are the max.bitrates to be set on that particular type of stream. The actual send may vary based on
|
||||||
// // the available bandwidth calculated by the browser, but it will be capped by the values specified here.
|
// // the available bandwidth calculated by the browser, but it will be capped by the values specified here.
|
||||||
// // This is currently not implemented on app based clients on mobile.
|
// // This is currently not implemented on app based clients on mobile.
|
||||||
// maxBitratesVideo: {
|
// maxBitratesVideo: {
|
||||||
|
// H264: {
|
||||||
|
// low: 200000,
|
||||||
|
// standard: 500000,
|
||||||
|
// high: 1500000
|
||||||
|
// },
|
||||||
// VP8 : {
|
// VP8 : {
|
||||||
// low: 200000,
|
// low: 200000,
|
||||||
// standard: 500000,
|
// standard: 500000,
|
||||||
|
@ -312,6 +391,13 @@ $(if [ -n "${VIDEO_CONSTRAINTS}" ]; then echo "${VIDEO_CONSTRAINTS},"; fi)
|
||||||
// resizeDesktopForPresenter: false
|
// resizeDesktopForPresenter: false
|
||||||
// },
|
// },
|
||||||
|
|
||||||
|
// Notification timeouts
|
||||||
|
// notificationTimeouts: {
|
||||||
|
// short: 2500,
|
||||||
|
// medium: 5000,
|
||||||
|
// long: 10000
|
||||||
|
// },
|
||||||
|
|
||||||
// // Options for the recording limit notification.
|
// // Options for the recording limit notification.
|
||||||
// recordingLimit: {
|
// recordingLimit: {
|
||||||
//
|
//
|
||||||
|
@ -330,6 +416,9 @@ $(if [ -n "${VIDEO_CONSTRAINTS}" ]; then echo "${VIDEO_CONSTRAINTS},"; fi)
|
||||||
// Disables or enables RTX (RFC 4588) (defaults to false).
|
// Disables or enables RTX (RFC 4588) (defaults to false).
|
||||||
// disableRtx: false,
|
// disableRtx: false,
|
||||||
|
|
||||||
|
// Moves all Jitsi Meet 'beforeunload' logic (cleanup, leaving, disconnecting, etc) to the 'unload' event.
|
||||||
|
// disableBeforeUnloadHandlers: true,
|
||||||
|
|
||||||
// Disables or enables TCC support in this client (default: enabled).
|
// Disables or enables TCC support in this client (default: enabled).
|
||||||
// enableTcc: true,
|
// enableTcc: true,
|
||||||
|
|
||||||
|
@ -345,8 +434,7 @@ $(if [ -n "${VIDEO_CONSTRAINTS}" ]; then echo "${VIDEO_CONSTRAINTS},"; fi)
|
||||||
// enableIceRestart: false,
|
// enableIceRestart: false,
|
||||||
|
|
||||||
// Enables forced reload of the client when the call is migrated as a result of
|
// Enables forced reload of the client when the call is migrated as a result of
|
||||||
// the bridge going down. Currently enabled by default as call migration through
|
// the bridge going down.
|
||||||
// session-terminate is causing siganling issues when Octo is enabled.
|
|
||||||
// enableForcedReload: true,
|
// enableForcedReload: true,
|
||||||
|
|
||||||
// Use TURN/UDP servers for the jitsi-videobridge connection (by default
|
// Use TURN/UDP servers for the jitsi-videobridge connection (by default
|
||||||
|
@ -354,6 +442,11 @@ $(if [ -n "${VIDEO_CONSTRAINTS}" ]; then echo "${VIDEO_CONSTRAINTS},"; fi)
|
||||||
// bridge itself is reachable via UDP)
|
// bridge itself is reachable via UDP)
|
||||||
// useTurnUdp: false
|
// useTurnUdp: false
|
||||||
|
|
||||||
|
// Enable support for encoded transform in supported browsers. This allows
|
||||||
|
// E2EE to work in Safari if the corresponding flag is enabled in the browser.
|
||||||
|
// Experimental.
|
||||||
|
// enableEncodedTransformSupport: false,
|
||||||
|
|
||||||
// UI
|
// UI
|
||||||
//
|
//
|
||||||
|
|
||||||
|
@ -363,6 +456,12 @@ $(if [ -n "${VIDEO_CONSTRAINTS}" ]; then echo "${VIDEO_CONSTRAINTS},"; fi)
|
||||||
// Hides lobby button
|
// Hides lobby button
|
||||||
// hideLobbyButton: false,
|
// hideLobbyButton: false,
|
||||||
|
|
||||||
|
// If Lobby is enabled starts knocking automatically.
|
||||||
|
// autoKnockLobby: false,
|
||||||
|
|
||||||
|
// Hides add breakout room button
|
||||||
|
// hideAddRoomButton: false,
|
||||||
|
|
||||||
// Require users to always specify a display name.
|
// Require users to always specify a display name.
|
||||||
// requireDisplayName: true,
|
// requireDisplayName: true,
|
||||||
|
|
||||||
|
@ -382,7 +481,15 @@ $(if [ -n "${VIDEO_CONSTRAINTS}" ]; then echo "${VIDEO_CONSTRAINTS},"; fi)
|
||||||
// enableClosePage: false,
|
// enableClosePage: false,
|
||||||
|
|
||||||
// Disable hiding of remote thumbnails when in a 1-on-1 conference call.
|
// Disable hiding of remote thumbnails when in a 1-on-1 conference call.
|
||||||
// disable1On1Mode: false,
|
// Setting this to null, will also disable showing the remote videos
|
||||||
|
// when the toolbar is shown on mouse movements
|
||||||
|
// disable1On1Mode: null | false | true,
|
||||||
|
|
||||||
|
// Default local name to be displayed
|
||||||
|
// defaultLocalDisplayName: 'me',
|
||||||
|
|
||||||
|
// Default remote name to be displayed
|
||||||
|
// defaultRemoteDisplayName: 'Fellow Jitster',
|
||||||
|
|
||||||
// Default language for the user interface.
|
// Default language for the user interface.
|
||||||
defaultLanguage: '${DEFAULT_LANGUAGE}',
|
defaultLanguage: '${DEFAULT_LANGUAGE}',
|
||||||
|
@ -405,8 +512,18 @@ $(if [ -n "${VIDEO_CONSTRAINTS}" ]; then echo "${VIDEO_CONSTRAINTS},"; fi)
|
||||||
// and microsoftApiApplicationClientID
|
// and microsoftApiApplicationClientID
|
||||||
// enableCalendarIntegration: false,
|
// enableCalendarIntegration: false,
|
||||||
|
|
||||||
// When 'true', it shows an intermediate page before joining, where the user can configure their devices.
|
// Configs for prejoin page.
|
||||||
// prejoinPageEnabled: false,
|
// prejoinConfig: {
|
||||||
|
// // When 'true', it shows an intermediate page before joining, where the user can configure their devices.
|
||||||
|
// // This replaces \`prejoinPageEnabled\`.
|
||||||
|
// enabled: true,
|
||||||
|
// // List of buttons to hide from the extra join options dropdown.
|
||||||
|
// hideExtraJoinButtons: ['no-audio', 'by-phone']
|
||||||
|
// },
|
||||||
|
|
||||||
|
// When 'true', the user cannot edit the display name.
|
||||||
|
// (Mainly useful when used in conjuction with the JWT so the JWT name becomes read only.)
|
||||||
|
// readOnlyName: false,
|
||||||
|
|
||||||
// If etherpad integration is enabled, setting this to true will
|
// If etherpad integration is enabled, setting this to true will
|
||||||
// automatically open the etherpad when a participant joins. This
|
// automatically open the etherpad when a participant joins. This
|
||||||
|
@ -427,6 +544,10 @@ $(if [ -n "${VIDEO_CONSTRAINTS}" ]; then echo "${VIDEO_CONSTRAINTS},"; fi)
|
||||||
// Base URL for a Gravatar-compatible service. Defaults to libravatar.
|
// Base URL for a Gravatar-compatible service. Defaults to libravatar.
|
||||||
// gravatarBaseURL: 'https://seccdn.libravatar.org/avatar/',
|
// gravatarBaseURL: 'https://seccdn.libravatar.org/avatar/',
|
||||||
|
|
||||||
|
// App name to be displayed in the invitation email subject, as an alternative to
|
||||||
|
// interfaceConfig.APP_NAME.
|
||||||
|
// inviteAppName: null,
|
||||||
|
|
||||||
// Moved from interfaceConfig(TOOLBAR_BUTTONS).
|
// Moved from interfaceConfig(TOOLBAR_BUTTONS).
|
||||||
// The name of the toolbar buttons to display in the toolbar, including the
|
// The name of the toolbar buttons to display in the toolbar, including the
|
||||||
// "More actions" menu. If present, the button will display. Exceptions are
|
// "More actions" menu. If present, the button will display. Exceptions are
|
||||||
|
@ -439,13 +560,94 @@ $(if [ -n "${VIDEO_CONSTRAINTS}" ]; then echo "${VIDEO_CONSTRAINTS},"; fi)
|
||||||
// - 'desktop' controls the "Share your screen" button
|
// - 'desktop' controls the "Share your screen" button
|
||||||
// - if \`toolbarButtons\` is undefined, we fallback to enabling all buttons on the UI
|
// - if \`toolbarButtons\` is undefined, we fallback to enabling all buttons on the UI
|
||||||
// toolbarButtons: [
|
// toolbarButtons: [
|
||||||
// 'microphone', 'camera', 'closedcaptions', 'desktop', 'embedmeeting', 'fullscreen',
|
// 'camera',
|
||||||
// 'fodeviceselection', 'hangup', 'profile', 'chat', 'recording',
|
// 'chat',
|
||||||
// 'livestreaming', 'etherpad', 'sharedvideo', 'shareaudio', 'settings', 'raisehand',
|
// 'closedcaptions',
|
||||||
// 'videoquality', 'filmstrip', 'invite', 'feedback', 'stats', 'shortcuts',
|
// 'desktop',
|
||||||
// 'tileview', 'select-background', 'download', 'help', 'mute-everyone', 'mute-video-everyone', 'security'
|
// 'download',
|
||||||
|
// 'embedmeeting',
|
||||||
|
// 'etherpad',
|
||||||
|
// 'feedback',
|
||||||
|
// 'filmstrip',
|
||||||
|
// 'fullscreen',
|
||||||
|
// 'hangup',
|
||||||
|
// 'help',
|
||||||
|
// 'invite',
|
||||||
|
// 'livestreaming',
|
||||||
|
// 'microphone',
|
||||||
|
// 'mute-everyone',
|
||||||
|
// 'mute-video-everyone',
|
||||||
|
// 'participants-pane',
|
||||||
|
// 'profile',
|
||||||
|
// 'raisehand',
|
||||||
|
// 'recording',
|
||||||
|
// 'security',
|
||||||
|
// 'select-background',
|
||||||
|
// 'settings',
|
||||||
|
// 'shareaudio',
|
||||||
|
// 'sharedvideo',
|
||||||
|
// 'shortcuts',
|
||||||
|
// 'stats',
|
||||||
|
// 'tileview',
|
||||||
|
// 'toggle-camera',
|
||||||
|
// 'videoquality',
|
||||||
|
// '__end'
|
||||||
// ],
|
// ],
|
||||||
|
|
||||||
|
// Holds values related to toolbar visibility control.
|
||||||
|
// toolbarConfig: {
|
||||||
|
// // Moved from interfaceConfig.INITIAL_TOOLBAR_TIMEOUT
|
||||||
|
// // The initial numer of miliseconds for the toolbar buttons to be visible on screen.
|
||||||
|
// initialTimeout: 20000,
|
||||||
|
// // Moved from interfaceConfig.TOOLBAR_TIMEOUT
|
||||||
|
// // Number of miliseconds for the toolbar buttons to be visible on screen.
|
||||||
|
// timeout: 4000,
|
||||||
|
// // Moved from interfaceConfig.TOOLBAR_ALWAYS_VISIBLE
|
||||||
|
// // Whether toolbar should be always visible or should hide after x miliseconds.
|
||||||
|
// alwaysVisible: false
|
||||||
|
// },
|
||||||
|
|
||||||
|
// Toolbar buttons which have their click event exposed through the API on
|
||||||
|
// \`toolbarButtonClicked\` event instead of executing the normal click routine.
|
||||||
|
// buttonsWithNotifyClick: [
|
||||||
|
// 'camera',
|
||||||
|
// 'chat',
|
||||||
|
// 'closedcaptions',
|
||||||
|
// 'desktop',
|
||||||
|
// 'download',
|
||||||
|
// 'embedmeeting',
|
||||||
|
// 'etherpad',
|
||||||
|
// 'feedback',
|
||||||
|
// 'filmstrip',
|
||||||
|
// 'fullscreen',
|
||||||
|
// 'hangup',
|
||||||
|
// 'help',
|
||||||
|
// 'invite',
|
||||||
|
// 'livestreaming',
|
||||||
|
// 'microphone',
|
||||||
|
// 'mute-everyone',
|
||||||
|
// 'mute-video-everyone',
|
||||||
|
// 'participants-pane',
|
||||||
|
// 'profile',
|
||||||
|
// 'raisehand',
|
||||||
|
// 'recording',
|
||||||
|
// 'security',
|
||||||
|
// 'select-background',
|
||||||
|
// 'settings',
|
||||||
|
// 'shareaudio',
|
||||||
|
// 'sharedvideo',
|
||||||
|
// 'shortcuts',
|
||||||
|
// 'stats',
|
||||||
|
// 'tileview',
|
||||||
|
// 'toggle-camera',
|
||||||
|
// 'videoquality',
|
||||||
|
// '__end'
|
||||||
|
// ],
|
||||||
|
|
||||||
|
// List of pre meeting screens buttons to hide. The values must be one or more of the 5 allowed buttons:
|
||||||
|
// 'microphone', 'camera', 'select-background', 'invite', 'settings'
|
||||||
|
// hiddenPremeetingButtons: [],
|
||||||
|
|
||||||
// Stats
|
// Stats
|
||||||
//
|
//
|
||||||
|
|
||||||
|
@ -463,12 +665,37 @@ $(if [ -n "${VIDEO_CONSTRAINTS}" ]; then echo "${VIDEO_CONSTRAINTS},"; fi)
|
||||||
// callStatsID: '',
|
// callStatsID: '',
|
||||||
// callStatsSecret: '',
|
// callStatsSecret: '',
|
||||||
|
|
||||||
|
// The callstats initialize config params as described in the API:
|
||||||
|
// https://docs.callstats.io/docs/javascript#callstatsinitialize-with-app-secret
|
||||||
|
// callStatsConfigParams: {
|
||||||
|
// disableBeforeUnloadHandler: true, // disables callstats.js's window.onbeforeunload parameter.
|
||||||
|
// applicationVersion: "app_version", // Application version specified by the developer.
|
||||||
|
// disablePrecalltest: true, // disables the pre-call test, it is enabled by default.
|
||||||
|
// siteID: "siteID", // The name/ID of the site/campus from where the call/pre-call test is made.
|
||||||
|
// additionalIDs: { // additionalIDs object, contains application related IDs.
|
||||||
|
// customerID: "Customer Identifier. Example, walmart.",
|
||||||
|
// tenantID: "Tenant Identifier. Example, monster.",
|
||||||
|
// productName: "Product Name. Example, Jitsi.",
|
||||||
|
// meetingsName: "Meeting Name. Example, Jitsi loves callstats.",
|
||||||
|
// serverName: "Server/MiddleBox Name. Example, jvb-prod-us-east-mlkncws12.",
|
||||||
|
// pbxID: "PBX Identifier. Example, walmart.",
|
||||||
|
// pbxExtensionID: "PBX Extension Identifier. Example, 5625.",
|
||||||
|
// fqExtensionID: "Fully qualified Extension Identifier. Example, +71 (US) +5625.",
|
||||||
|
// sessionID: "Session Identifier. Example, session-12-34"
|
||||||
|
// },
|
||||||
|
// collectLegacyStats: true, //enables the collection of legacy stats in chrome browser
|
||||||
|
// collectIP: true //enables the collection localIP address
|
||||||
|
// },
|
||||||
|
|
||||||
// Enables sending participants' display names to callstats
|
// Enables sending participants' display names to callstats
|
||||||
// enableDisplayNameInStats: false,
|
// enableDisplayNameInStats: false,
|
||||||
|
|
||||||
// Enables sending participants' emails (if available) to callstats and other analytics
|
// Enables sending participants' emails (if available) to callstats and other analytics
|
||||||
// enableEmailInStats: false,
|
// enableEmailInStats: false,
|
||||||
|
|
||||||
|
// Enables detecting faces of participants and get their expression and send it to other participants
|
||||||
|
// enableFacialRecognition: true,
|
||||||
|
|
||||||
// Controls the percentage of automatic feedback shown to participants when callstats is enabled.
|
// Controls the percentage of automatic feedback shown to participants when callstats is enabled.
|
||||||
// The default value is 100%. If set to 0, no automatic feedback will be requested
|
// The default value is 100%. If set to 0, no automatic feedback will be requested
|
||||||
// feedbackPercentage: 100,
|
// feedbackPercentage: 100,
|
||||||
|
@ -494,11 +721,8 @@ $(if [ -n "${VIDEO_CONSTRAINTS}" ]; then echo "${VIDEO_CONSTRAINTS},"; fi)
|
||||||
// connection.
|
// connection.
|
||||||
enabled: true,
|
enabled: true,
|
||||||
|
|
||||||
// The STUN servers that will be used in the peer to peer connections
|
// Enable unified plan implementation support on Chromium for p2p connection.
|
||||||
stunServers: [
|
// enableUnifiedOnChrome: false,
|
||||||
|
|
||||||
{ urls: 'stun:${TURN_SERVER}:443' }
|
|
||||||
]
|
|
||||||
|
|
||||||
// Sets the ICE transport policy for the p2p connection. At the time
|
// Sets the ICE transport policy for the p2p connection. At the time
|
||||||
// of this writing the list of possible values are 'all' and 'relay',
|
// of this writing the list of possible values are 'all' and 'relay',
|
||||||
|
@ -525,10 +749,20 @@ $(if [ -n "${VIDEO_CONSTRAINTS}" ]; then echo "${VIDEO_CONSTRAINTS},"; fi)
|
||||||
|
|
||||||
// How long we're going to wait, before going back to P2P after the 3rd
|
// How long we're going to wait, before going back to P2P after the 3rd
|
||||||
// participant has left the conference (to filter out page reload).
|
// participant has left the conference (to filter out page reload).
|
||||||
// backToP2PDelay: 5
|
// backToP2PDelay: 5,
|
||||||
|
|
||||||
|
// The STUN servers that will be used in the peer to peer connections
|
||||||
|
stunServers: [
|
||||||
|
|
||||||
|
// { urls: 'stun:jitsi-meet.example.com:3478' },
|
||||||
|
{ urls: 'stun:${TURN_SERVER}:443' }
|
||||||
|
]
|
||||||
},
|
},
|
||||||
|
|
||||||
analytics: {
|
analytics: {
|
||||||
|
// True if the analytics should be disabled
|
||||||
|
// disabled: false,
|
||||||
|
|
||||||
// The Google Analytics Tracking ID:
|
// The Google Analytics Tracking ID:
|
||||||
// googleAnalyticsTrackingId: 'your-tracking-id-UA-123456-1'
|
// googleAnalyticsTrackingId: 'your-tracking-id-UA-123456-1'
|
||||||
|
|
||||||
|
@ -544,7 +778,7 @@ $(if [ -n "${VIDEO_CONSTRAINTS}" ]; then echo "${VIDEO_CONSTRAINTS},"; fi)
|
||||||
// module connects to the provided rtcstatsEndpoint and sends statistics regarding
|
// module connects to the provided rtcstatsEndpoint and sends statistics regarding
|
||||||
// PeerConnection states along with getStats metrics polled at the specified
|
// PeerConnection states along with getStats metrics polled at the specified
|
||||||
// interval.
|
// interval.
|
||||||
// rtcstatsEnabled: true,
|
// rtcstatsEnabled: false,
|
||||||
|
|
||||||
// In order to enable rtcstats one needs to provide a endpoint url.
|
// In order to enable rtcstats one needs to provide a endpoint url.
|
||||||
// rtcstatsEndpoint: wss://rtcstats-server-pilot.jitsi.net/,
|
// rtcstatsEndpoint: wss://rtcstats-server-pilot.jitsi.net/,
|
||||||
|
@ -572,13 +806,43 @@ $(if [ -n "${VIDEO_CONSTRAINTS}" ]; then echo "${VIDEO_CONSTRAINTS},"; fi)
|
||||||
// userRegion: "asia"
|
// userRegion: "asia"
|
||||||
},
|
},
|
||||||
|
|
||||||
|
// Array<string> of disabled sounds.
|
||||||
|
// Possible values:
|
||||||
|
// - 'ASKED_TO_UNMUTE_SOUND'
|
||||||
|
// - 'E2EE_OFF_SOUND'
|
||||||
|
// - 'E2EE_ON_SOUND'
|
||||||
|
// - 'INCOMING_MSG_SOUND'
|
||||||
|
// - 'KNOCKING_PARTICIPANT_SOUND'
|
||||||
|
// - 'LIVE_STREAMING_OFF_SOUND'
|
||||||
|
// - 'LIVE_STREAMING_ON_SOUND'
|
||||||
|
// - 'NO_AUDIO_SIGNAL_SOUND'
|
||||||
|
// - 'NOISY_AUDIO_INPUT_SOUND'
|
||||||
|
// - 'OUTGOING_CALL_EXPIRED_SOUND'
|
||||||
|
// - 'OUTGOING_CALL_REJECTED_SOUND'
|
||||||
|
// - 'OUTGOING_CALL_RINGING_SOUND'
|
||||||
|
// - 'OUTGOING_CALL_START_SOUND'
|
||||||
|
// - 'PARTICIPANT_JOINED_SOUND'
|
||||||
|
// - 'PARTICIPANT_LEFT_SOUND'
|
||||||
|
// - 'RAISE_HAND_SOUND'
|
||||||
|
// - 'REACTION_SOUND'
|
||||||
|
// - 'RECORDING_OFF_SOUND'
|
||||||
|
// - 'RECORDING_ON_SOUND'
|
||||||
|
// - 'TALK_WHILE_MUTED_SOUND'
|
||||||
|
// disabledSounds: [],
|
||||||
|
|
||||||
|
// DEPRECATED! Use \`disabledSounds\` instead.
|
||||||
// Decides whether the start/stop recording audio notifications should play on record.
|
// Decides whether the start/stop recording audio notifications should play on record.
|
||||||
// disableRecordAudioNotification: false,
|
// disableRecordAudioNotification: false,
|
||||||
|
|
||||||
|
// DEPRECATED! Use \`disabledSounds\` instead.
|
||||||
// Disables the sounds that play when other participants join or leave the
|
// Disables the sounds that play when other participants join or leave the
|
||||||
// conference (if set to true, these sounds will not be played).
|
// conference (if set to true, these sounds will not be played).
|
||||||
// disableJoinLeaveSounds: false,
|
// disableJoinLeaveSounds: false,
|
||||||
|
|
||||||
|
// DEPRECATED! Use \`disabledSounds\` instead.
|
||||||
|
// Disables the sounds that play when a chat message is received.
|
||||||
|
// disableIncomingMessageSound: false,
|
||||||
|
|
||||||
// Information for the chrome extension banner
|
// Information for the chrome extension banner
|
||||||
// chromeExtensionBanner: {
|
// chromeExtensionBanner: {
|
||||||
// // The chrome extension to be installed address
|
// // The chrome extension to be installed address
|
||||||
|
@ -599,8 +863,8 @@ $(if [ -n "${VIDEO_CONSTRAINTS}" ]; then echo "${VIDEO_CONSTRAINTS},"; fi)
|
||||||
// localRecording: {
|
// localRecording: {
|
||||||
// Enables local recording.
|
// Enables local recording.
|
||||||
// Additionally, 'localrecording' (all lowercase) needs to be added to
|
// Additionally, 'localrecording' (all lowercase) needs to be added to
|
||||||
// TOOLBAR_BUTTONS in interface_config.js for the Local Recording
|
// the \`toolbarButtons\`-array for the Local Recording button to show up
|
||||||
// button to show up on the toolbar.
|
// on the toolbar.
|
||||||
//
|
//
|
||||||
// enabled: true,
|
// enabled: true,
|
||||||
//
|
//
|
||||||
|
@ -609,6 +873,10 @@ $(if [ -n "${VIDEO_CONSTRAINTS}" ]; then echo "${VIDEO_CONSTRAINTS},"; fi)
|
||||||
// format: 'flac'
|
// format: 'flac'
|
||||||
//
|
//
|
||||||
|
|
||||||
|
// },
|
||||||
|
// e2ee: {
|
||||||
|
// labels,
|
||||||
|
// externallyManagedKey: false
|
||||||
// },
|
// },
|
||||||
|
|
||||||
// Options related to end-to-end (participant to participant) ping.
|
// Options related to end-to-end (participant to participant) ping.
|
||||||
|
@ -663,7 +931,9 @@ $(if [ -n "${VIDEO_CONSTRAINTS}" ]; then echo "${VIDEO_CONSTRAINTS},"; fi)
|
||||||
// Options related to the remote participant menu.
|
// Options related to the remote participant menu.
|
||||||
// remoteVideoMenu: {
|
// remoteVideoMenu: {
|
||||||
// // If set to true the 'Kick out' button will be disabled.
|
// // If set to true the 'Kick out' button will be disabled.
|
||||||
// disableKick: true
|
// disableKick: true,
|
||||||
|
// // If set to true the 'Grant moderator' button will be disabled.
|
||||||
|
// disableGrantModerator: true
|
||||||
// },
|
// },
|
||||||
|
|
||||||
// If set to true all muting operations of remote participants will be disabled.
|
// If set to true all muting operations of remote participants will be disabled.
|
||||||
|
@ -675,8 +945,11 @@ $(if [ -n "${VIDEO_CONSTRAINTS}" ]; then echo "${VIDEO_CONSTRAINTS},"; fi)
|
||||||
/**
|
/**
|
||||||
External API url used to receive branding specific information.
|
External API url used to receive branding specific information.
|
||||||
If there is no url set or there are missing fields, the defaults are applied.
|
If there is no url set or there are missing fields, the defaults are applied.
|
||||||
|
The config file should be in JSON.
|
||||||
None of the fields are mandatory and the response must have the shape:
|
None of the fields are mandatory and the response must have the shape:
|
||||||
{
|
{
|
||||||
|
// The domain url to apply (will replace the domain in the sharing conference link/embed section)
|
||||||
|
inviteDomain: 'example-company.org,
|
||||||
// The hex value for the colour used as background
|
// The hex value for the colour used as background
|
||||||
backgroundColor: '#fff',
|
backgroundColor: '#fff',
|
||||||
// The url for the image used as background
|
// The url for the image used as background
|
||||||
|
@ -684,11 +957,55 @@ $(if [ -n "${VIDEO_CONSTRAINTS}" ]; then echo "${VIDEO_CONSTRAINTS},"; fi)
|
||||||
// The anchor url used when clicking the logo image
|
// The anchor url used when clicking the logo image
|
||||||
logoClickUrl: 'https://example-company.org',
|
logoClickUrl: 'https://example-company.org',
|
||||||
// The url used for the image used as logo
|
// The url used for the image used as logo
|
||||||
logoImageUrl: 'https://example.com/logo-img.png'
|
logoImageUrl: 'https://example.com/logo-img.png',
|
||||||
|
// Overwrite for pool of background images for avatars
|
||||||
|
avatarBackgrounds: ['url(https://example.com/avatar-background-1.png)', '#FFF'],
|
||||||
|
// The lobby/prejoin screen background
|
||||||
|
premeetingBackground: 'url(https://example.com/premeeting-background.png)',
|
||||||
|
// A list of images that can be used as video backgrounds.
|
||||||
|
// When this field is present, the default images will be replaced with those provided.
|
||||||
|
virtualBackgrounds: ['https://example.com/img.jpg'],
|
||||||
|
// Object containing a theme's properties. It also supports partial overwrites of the main theme.
|
||||||
|
// For a list of all possible theme tokens and their current defaults, please check:
|
||||||
|
// https://github.com/jitsi/jitsi-meet/tree/master/resources/custom-theme/custom-theme.json
|
||||||
|
// For a short explanations on each of the tokens, please check:
|
||||||
|
// https://github.com/jitsi/jitsi-meet/blob/master/react/features/base/ui/Tokens.js
|
||||||
|
// IMPORTANT!: This is work in progress so many of the various tokens are not yet applied in code
|
||||||
|
// or they are partially applied.
|
||||||
|
customTheme: {
|
||||||
|
palette: {
|
||||||
|
ui01: "orange !important",
|
||||||
|
ui02: "maroon",
|
||||||
|
surface02: 'darkgreen',
|
||||||
|
ui03: "violet",
|
||||||
|
ui04: "magenta",
|
||||||
|
ui05: "blueviolet",
|
||||||
|
field02Hover: 'red',
|
||||||
|
action01: 'green',
|
||||||
|
action01Hover: 'lightgreen',
|
||||||
|
action02Disabled: 'beige',
|
||||||
|
success02: 'cadetblue',
|
||||||
|
action02Hover: 'aliceblue'
|
||||||
|
},
|
||||||
|
typography: {
|
||||||
|
labelRegular: {
|
||||||
|
fontSize: 25,
|
||||||
|
lineHeight: 30,
|
||||||
|
fontWeight: 500
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
*/
|
*/
|
||||||
dynamicBrandingUrl: "${DYNAMIC_BRANDING_URL}",
|
dynamicBrandingUrl: "${DYNAMIC_BRANDING_URL}",
|
||||||
|
|
||||||
|
// When true the user cannot add more images to be used as virtual background.
|
||||||
|
// Only the default ones from will be available.
|
||||||
|
// disableAddingBackgroundImages: false,
|
||||||
|
|
||||||
|
// Disables using screensharing as virtual background.
|
||||||
|
// disableScreensharingVirtualBackground: false,
|
||||||
|
|
||||||
// Sets the background transparency level. '0' is fully transparent, '1' is opaque.
|
// Sets the background transparency level. '0' is fully transparent, '1' is opaque.
|
||||||
// backgroundAlpha: 1,
|
// backgroundAlpha: 1,
|
||||||
|
|
||||||
|
@ -700,12 +1017,35 @@ $(if [ -n "${VIDEO_CONSTRAINTS}" ]; then echo "${VIDEO_CONSTRAINTS},"; fi)
|
||||||
// If true, tile view will not be enabled automatically when the participants count threshold is reached.
|
// If true, tile view will not be enabled automatically when the participants count threshold is reached.
|
||||||
// disableTileView: true,
|
// disableTileView: true,
|
||||||
|
|
||||||
|
// If true, the tiles will be displayed contained within the available space rather than enlarged to cover it.
|
||||||
|
// disableTileEnlargement: true,
|
||||||
|
|
||||||
|
// Controls the visibility and behavior of the top header conference info labels.
|
||||||
|
// If a label's id is not in any of the 2 arrays, it will not be visible at all on the header.
|
||||||
|
// conferenceInfo: {
|
||||||
|
// // those labels will not be hidden in tandem with the toolbox.
|
||||||
|
// alwaysVisible: ['recording', 'local-recording'],
|
||||||
|
// // those labels will be auto-hidden in tandem with the toolbox buttons.
|
||||||
|
// autoHide: [
|
||||||
|
// 'subject',
|
||||||
|
// 'conference-timer',
|
||||||
|
// 'participants-count',
|
||||||
|
// 'e2ee',
|
||||||
|
// 'transcribing',
|
||||||
|
// 'video-quality',
|
||||||
|
// 'insecure-room'
|
||||||
|
// ]
|
||||||
|
// },
|
||||||
|
|
||||||
// Hides the conference subject
|
// Hides the conference subject
|
||||||
// hideConferenceSubject: true,
|
// hideConferenceSubject: true,
|
||||||
|
|
||||||
// Hides the conference timer.
|
// Hides the conference timer.
|
||||||
// hideConferenceTimer: true,
|
// hideConferenceTimer: true,
|
||||||
|
|
||||||
|
// Hides the recording label
|
||||||
|
// hideRecordingLabel: false,
|
||||||
|
|
||||||
// Hides the participants stats
|
// Hides the participants stats
|
||||||
// hideParticipantsStats: true,
|
// hideParticipantsStats: true,
|
||||||
|
|
||||||
|
@ -717,6 +1057,13 @@ $(if [ -n "${VIDEO_CONSTRAINTS}" ]; then echo "${VIDEO_CONSTRAINTS},"; fi)
|
||||||
// is not persisting the local storage inside the iframe.
|
// is not persisting the local storage inside the iframe.
|
||||||
// useHostPageLocalStorage: true,
|
// useHostPageLocalStorage: true,
|
||||||
|
|
||||||
|
// etherpad ("shared document") integration.
|
||||||
|
//
|
||||||
|
|
||||||
|
// If set, add a "Open shared document" link to the bottom right menu that
|
||||||
|
// will open an etherpad document.
|
||||||
|
// etherpad_base: 'https://your-etherpad-installati.on/p/',
|
||||||
|
|
||||||
// List of undocumented settings used in jitsi-meet
|
// List of undocumented settings used in jitsi-meet
|
||||||
/**
|
/**
|
||||||
_immediateReloadThreshold
|
_immediateReloadThreshold
|
||||||
|
@ -729,8 +1076,8 @@ $(if [ -n "${VIDEO_CONSTRAINTS}" ]; then echo "${VIDEO_CONSTRAINTS},"; fi)
|
||||||
dialOutCodesUrl
|
dialOutCodesUrl
|
||||||
disableRemoteControl
|
disableRemoteControl
|
||||||
displayJids
|
displayJids
|
||||||
etherpad_base
|
|
||||||
externalConnectUrl
|
externalConnectUrl
|
||||||
|
e2eeLabels
|
||||||
firefox_fake_device
|
firefox_fake_device
|
||||||
googleApiApplicationClientID
|
googleApiApplicationClientID
|
||||||
iAmRecorder
|
iAmRecorder
|
||||||
|
@ -772,6 +1119,11 @@ $(if [ -n "${VIDEO_CONSTRAINTS}" ]; then echo "${VIDEO_CONSTRAINTS},"; fi)
|
||||||
websocketKeepAliveUrl
|
websocketKeepAliveUrl
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Default interval (milliseconds) for triggering mouseMoved iframe API event
|
||||||
|
*/
|
||||||
|
mouseMoveCallbackInterval: 1000,
|
||||||
|
|
||||||
/**
|
/**
|
||||||
Use this array to configure which notifications will be shown to the user
|
Use this array to configure which notifications will be shown to the user
|
||||||
The items correspond to the title or description key of that notification
|
The items correspond to the title or description key of that notification
|
||||||
|
@ -805,11 +1157,19 @@ $(if [ -n "${VIDEO_CONSTRAINTS}" ]; then echo "${VIDEO_CONSTRAINTS},"; fi)
|
||||||
// 'lobby.notificationTitle', // shown when lobby is toggled and when join requests are allowed / denied
|
// 'lobby.notificationTitle', // shown when lobby is toggled and when join requests are allowed / denied
|
||||||
// 'localRecording.localRecording', // shown when a local recording is started
|
// 'localRecording.localRecording', // shown when a local recording is started
|
||||||
// 'notify.disconnected', // shown when a participant has left
|
// 'notify.disconnected', // shown when a participant has left
|
||||||
|
// 'notify.connectedOneMember', // show when a participant joined
|
||||||
|
// 'notify.connectedTwoMembers', // show when two participants joined simultaneously
|
||||||
|
// 'notify.connectedThreePlusMembers', // show when more than 2 participants joined simultaneously
|
||||||
// 'notify.grantedTo', // shown when moderator rights were granted to a participant
|
// 'notify.grantedTo', // shown when moderator rights were granted to a participant
|
||||||
// 'notify.invitedOneMember', // shown when 1 participant has been invited
|
// 'notify.invitedOneMember', // shown when 1 participant has been invited
|
||||||
// 'notify.invitedThreePlusMembers', // shown when 3+ participants have been invited
|
// 'notify.invitedThreePlusMembers', // shown when 3+ participants have been invited
|
||||||
// 'notify.invitedTwoMembers', // shown when 2 participants have been invited
|
// 'notify.invitedTwoMembers', // shown when 2 participants have been invited
|
||||||
// 'notify.kickParticipant', // shown when a participant is kicked
|
// 'notify.kickParticipant', // shown when a participant is kicked
|
||||||
|
// 'notify.moderationStartedTitle', // shown when AV moderation is activated
|
||||||
|
// 'notify.moderationStoppedTitle', // shown when AV moderation is deactivated
|
||||||
|
// 'notify.moderationInEffectTitle', // shown when user attempts to unmute audio during AV moderation
|
||||||
|
// 'notify.moderationInEffectVideoTitle', // shown when user attempts to enable video during AV moderation
|
||||||
|
// 'notify.moderationInEffectCSTitle', // shown when user attempts to share content during AV moderation
|
||||||
// 'notify.mutedRemotelyTitle', // shown when user is muted by a remote party
|
// 'notify.mutedRemotelyTitle', // shown when user is muted by a remote party
|
||||||
// 'notify.mutedTitle', // shown when user has been muted upon joining,
|
// 'notify.mutedTitle', // shown when user has been muted upon joining,
|
||||||
// 'notify.newDeviceAudioTitle', // prompts the user to use a newly detected audio device
|
// 'notify.newDeviceAudioTitle', // prompts the user to use a newly detected audio device
|
||||||
|
@ -818,6 +1178,7 @@ $(if [ -n "${VIDEO_CONSTRAINTS}" ]; then echo "${VIDEO_CONSTRAINTS},"; fi)
|
||||||
// 'notify.passwordSetRemotely', // shown when a password has been set remotely
|
// 'notify.passwordSetRemotely', // shown when a password has been set remotely
|
||||||
// 'notify.raisedHand', // shown when a partcipant used raise hand,
|
// 'notify.raisedHand', // shown when a partcipant used raise hand,
|
||||||
// 'notify.startSilentTitle', // shown when user joined with no audio
|
// 'notify.startSilentTitle', // shown when user joined with no audio
|
||||||
|
// 'notify.unmute', // shown to moderator when user raises hand during AV moderation
|
||||||
// 'prejoin.errorDialOut',
|
// 'prejoin.errorDialOut',
|
||||||
// 'prejoin.errorDialOutDisconnected',
|
// 'prejoin.errorDialOutDisconnected',
|
||||||
// 'prejoin.errorDialOutFailed',
|
// 'prejoin.errorDialOutFailed',
|
||||||
|
@ -831,7 +1192,13 @@ $(if [ -n "${VIDEO_CONSTRAINTS}" ]; then echo "${VIDEO_CONSTRAINTS},"; fi)
|
||||||
// 'toolbar.noisyAudioInputTitle', // shown when noise is detected for the current microphone
|
// 'toolbar.noisyAudioInputTitle', // shown when noise is detected for the current microphone
|
||||||
// 'toolbar.talkWhileMutedPopup', // shown when user tries to speak while muted
|
// 'toolbar.talkWhileMutedPopup', // shown when user tries to speak while muted
|
||||||
// 'transcribing.failedToStart' // shown when transcribing fails to start
|
// 'transcribing.failedToStart' // shown when transcribing fails to start
|
||||||
// ]
|
// ],
|
||||||
|
|
||||||
|
// Prevent the filmstrip from autohiding when screen width is under a certain threshold
|
||||||
|
// disableFilmstripAutohiding: false,
|
||||||
|
|
||||||
|
// Specifies whether the chat emoticons are disabled or not
|
||||||
|
// disableChatSmileys: false,
|
||||||
|
|
||||||
// Allow all above example options to include a trailing comma and
|
// Allow all above example options to include a trailing comma and
|
||||||
// prevent fear when commenting out the last value.
|
// prevent fear when commenting out the last value.
|
||||||
|
|
|
@ -27,9 +27,6 @@ var config = {
|
||||||
// Websocket URL
|
// Websocket URL
|
||||||
// websocket: 'wss://jitsi-meet.example.com/xmpp-websocket',
|
// websocket: 'wss://jitsi-meet.example.com/xmpp-websocket',
|
||||||
|
|
||||||
// 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
|
// The real JID of focus participant - can be overridden here
|
||||||
// Do not change username - FIXME: Make focus username configurable
|
// Do not change username - FIXME: Make focus username configurable
|
||||||
// https://github.com/jitsi/jitsi-meet/issues/7376
|
// https://github.com/jitsi/jitsi-meet/issues/7376
|
||||||
|
@ -44,9 +41,16 @@ var config = {
|
||||||
// issues related to insertable streams.
|
// issues related to insertable streams.
|
||||||
// disableE2EE: false,
|
// disableE2EE: false,
|
||||||
|
|
||||||
|
// Enables/disables thumbnail reordering in the filmstrip. It is enabled by default unless explicitly
|
||||||
|
// disabled by the below option.
|
||||||
|
// enableThumbnailReordering: true,
|
||||||
|
|
||||||
|
// Enables XMPP WebSocket (as opposed to BOSH) for the given amount of users.
|
||||||
|
// mobileXmppWsThreshold: 10 // enable XMPP WebSockets on mobile for 10% of the users
|
||||||
|
|
||||||
// P2P test mode disables automatic switching to P2P when there are 2
|
// P2P test mode disables automatic switching to P2P when there are 2
|
||||||
// participants in the conference.
|
// participants in the conference.
|
||||||
p2pTestMode: false
|
// p2pTestMode: false,
|
||||||
|
|
||||||
// Enables the test specific features consumed by jitsi-meet-torture
|
// Enables the test specific features consumed by jitsi-meet-torture
|
||||||
// testMode: false
|
// testMode: false
|
||||||
|
@ -59,8 +63,10 @@ var config = {
|
||||||
// simulcast is turned off for the desktop share. If presenter is turned
|
// simulcast is turned off for the desktop share. If presenter is turned
|
||||||
// on while screensharing is in progress, the max bitrate is automatically
|
// on while screensharing is in progress, the max bitrate is automatically
|
||||||
// adjusted to 2.5 Mbps. This takes a value between 0 and 1 which determines
|
// adjusted to 2.5 Mbps. This takes a value between 0 and 1 which determines
|
||||||
// the probability for this to be enabled.
|
// the probability for this to be enabled. This setting has been deprecated.
|
||||||
// capScreenshareBitrate: 1 // 0 to disable
|
// desktopSharingFrameRate.max now determines whether simulcast will be enabled
|
||||||
|
// or disabled for the screenshare.
|
||||||
|
// capScreenshareBitrate: 1 // 0 to disable - deprecated.
|
||||||
|
|
||||||
// Enable callstats only for a percentage of users.
|
// Enable callstats only for a percentage of users.
|
||||||
// This takes a value between 0 and 100 which determines the probability for
|
// This takes a value between 0 and 100 which determines the probability for
|
||||||
|
@ -68,6 +74,18 @@ var config = {
|
||||||
// callStatsThreshold: 5 // enable callstats for 5% of the users.
|
// callStatsThreshold: 5 // enable callstats for 5% of the users.
|
||||||
},
|
},
|
||||||
|
|
||||||
|
// Disables moderator indicators.
|
||||||
|
// disableModeratorIndicator: false,
|
||||||
|
|
||||||
|
// Disables the reactions feature.
|
||||||
|
// disableReactions: true,
|
||||||
|
|
||||||
|
// Disables polls feature.
|
||||||
|
// disablePolls: false,
|
||||||
|
|
||||||
|
// Disables self-view tile. (hides it from tile view and from filmstrip)
|
||||||
|
// disableSelfView: false,
|
||||||
|
|
||||||
// Disables ICE/UDP by filtering out local and remote UDP candidates in
|
// Disables ICE/UDP by filtering out local and remote UDP candidates in
|
||||||
// signalling.
|
// signalling.
|
||||||
// webrtcIceUdpDisable: false,
|
// webrtcIceUdpDisable: false,
|
||||||
|
@ -80,6 +98,9 @@ var config = {
|
||||||
// Media
|
// Media
|
||||||
//
|
//
|
||||||
|
|
||||||
|
// Enable unified plan implementation support on Chromium based browsers.
|
||||||
|
// enableUnifiedOnChrome: false,
|
||||||
|
|
||||||
// Audio
|
// Audio
|
||||||
|
|
||||||
// Disable measuring of audio levels.
|
// Disable measuring of audio levels.
|
||||||
|
@ -96,6 +117,10 @@ var config = {
|
||||||
// about the call.
|
// about the call.
|
||||||
// enableSaveLogs: false,
|
// enableSaveLogs: false,
|
||||||
|
|
||||||
|
// Enabling this will hide the "Show More" link in the GSM popover that can be
|
||||||
|
// used to display more statistics about the connection (IP, Port, protocol, etc).
|
||||||
|
// disableShowMoreStats: true,
|
||||||
|
|
||||||
// Enabling this will run the lib-jitsi-meet noise detection module which will
|
// Enabling this will run the lib-jitsi-meet noise detection module which will
|
||||||
// notify the user if there is noise, other than voice, coming from the current
|
// notify the user if there is noise, other than voice, coming from the current
|
||||||
// selected microphone. The purpose it to let the user know that the input could
|
// selected microphone. The purpose it to let the user know that the input could
|
||||||
|
@ -117,19 +142,34 @@ var config = {
|
||||||
// participants and to enable it back a reload is needed.
|
// participants and to enable it back a reload is needed.
|
||||||
// startSilent: false
|
// startSilent: false
|
||||||
|
|
||||||
// Sets the preferred target bitrate for the Opus audio codec by setting its
|
|
||||||
// 'maxaveragebitrate' parameter. Currently not available in p2p mode.
|
|
||||||
// Valid values are in the range 6000 to 510000
|
|
||||||
// opusMaxAverageBitrate: 20000,
|
|
||||||
|
|
||||||
// Enables support for opus-red (redundancy for Opus).
|
// Enables support for opus-red (redundancy for Opus).
|
||||||
// enableOpusRed: false,
|
// enableOpusRed: false,
|
||||||
|
|
||||||
|
// Specify audio quality stereo and opusMaxAverageBitrate values in order to enable HD audio.
|
||||||
|
// Beware, by doing so, you are disabling echo cancellation, noise suppression and AGC.
|
||||||
|
// audioQuality: {
|
||||||
|
// stereo: false,
|
||||||
|
// opusMaxAverageBitrate: null // Value to fit the 6000 to 510000 range.
|
||||||
|
// },
|
||||||
|
|
||||||
// Video
|
// Video
|
||||||
|
|
||||||
// Sets the preferred resolution (height) for local video. Defaults to 720.
|
// Sets the preferred resolution (height) for local video. Defaults to 720.
|
||||||
// resolution: 720,
|
// resolution: 720,
|
||||||
|
|
||||||
|
// Specifies whether the raised hand will hide when someone becomes a dominant speaker or not
|
||||||
|
// disableRemoveRaisedHandOnFocus: false,
|
||||||
|
|
||||||
|
// Specifies whether there will be a search field in speaker stats or not
|
||||||
|
// disableSpeakerStatsSearch: false,
|
||||||
|
|
||||||
|
// Specifies whether participants in speaker stats should be ordered or not, and with what priority
|
||||||
|
// speakerStatsOrder: [
|
||||||
|
// 'role', <- Moderators on top
|
||||||
|
// 'name', <- Alphabetically by name
|
||||||
|
// 'hasLeft', <- The ones that have left in the bottom
|
||||||
|
// ] <- the order of the array elements determines priority
|
||||||
|
|
||||||
// How many participants while in the tile view mode, before the receiving video quality is reduced from HD to SD.
|
// How many participants while in the tile view mode, before the receiving video quality is reduced from HD to SD.
|
||||||
// Use -1 to disable.
|
// Use -1 to disable.
|
||||||
// maxFullResolutionParticipants: 2,
|
// maxFullResolutionParticipants: 2,
|
||||||
|
@ -152,9 +192,10 @@ var config = {
|
||||||
// Enable / disable simulcast support.
|
// Enable / disable simulcast support.
|
||||||
// disableSimulcast: false,
|
// disableSimulcast: false,
|
||||||
|
|
||||||
// Enable / disable layer suspension. If enabled, endpoints whose HD
|
// Enable / disable layer suspension. If enabled, endpoints whose HD layers are not in use will be suspended
|
||||||
// layers are not in use will be suspended (no longer sent) until they
|
// (no longer sent) until they are requested again. This is enabled by default. This must be enabled for screen
|
||||||
// are requested again.
|
// sharing to work as expected on Chrome. Disabling this might result in low resolution screenshare being sent
|
||||||
|
// by the client.
|
||||||
// enableLayerSuspension: false,
|
// enableLayerSuspension: false,
|
||||||
|
|
||||||
// Every participant after the Nth will start video muted.
|
// Every participant after the Nth will start video muted.
|
||||||
|
@ -216,6 +257,18 @@ var config = {
|
||||||
// subtitles and buttons can be configured)
|
// subtitles and buttons can be configured)
|
||||||
// transcribingEnabled: false,
|
// transcribingEnabled: false,
|
||||||
|
|
||||||
|
// If true transcriber will use the application language.
|
||||||
|
// The application language is either explicitly set by participants in their settings or automatically
|
||||||
|
// detected based on the environment, e.g. if the app is opened in a chrome instance which is using french as its
|
||||||
|
// default language then transcriptions for that participant will be in french.
|
||||||
|
// Defaults to true.
|
||||||
|
// transcribeWithAppLanguage: true,
|
||||||
|
|
||||||
|
// Transcriber language. This settings will only work if "transcribeWithAppLanguage" is explicitly set to false.
|
||||||
|
// Available languages can be found in
|
||||||
|
// ./src/react/features/transcribing/transcriber-langs.json.
|
||||||
|
// preferredTranscribeLanguage: 'en-US',
|
||||||
|
|
||||||
// Enables automatic turning on captions when recording is started
|
// Enables automatic turning on captions when recording is started
|
||||||
// autoCaptionOnRecord: false,
|
// autoCaptionOnRecord: false,
|
||||||
|
|
||||||
|
@ -224,6 +277,20 @@ var config = {
|
||||||
// Default value for the channel "last N" attribute. -1 for unlimited.
|
// Default value for the channel "last N" attribute. -1 for unlimited.
|
||||||
channelLastN: -1,
|
channelLastN: -1,
|
||||||
|
|
||||||
|
// Connection indicators
|
||||||
|
// connectionIndicators: {
|
||||||
|
// autoHide: true,
|
||||||
|
// autoHideTimeout: 5000,
|
||||||
|
// disabled: false,
|
||||||
|
// disableDetails: false,
|
||||||
|
// inactiveDisabled: false
|
||||||
|
// },
|
||||||
|
|
||||||
|
// Provides a way for the lastN value to be controlled through the UI.
|
||||||
|
// When startLastN is present, conference starts with a last-n value of startLastN and channelLastN
|
||||||
|
// value will be used when the quality level is selected using "Manage Video Quality" slider.
|
||||||
|
// startLastN: 1,
|
||||||
|
|
||||||
// Provides a way to use different "last N" values based on the number of participants in the conference.
|
// Provides a way to use different "last N" values based on the number of participants in the conference.
|
||||||
// The keys in an Object represent number of participants and the values are "last N" to be used when number of
|
// The keys in an Object represent number of participants and the values are "last N" to be used when number of
|
||||||
// participants gets to or above the number.
|
// participants gets to or above the number.
|
||||||
|
@ -261,12 +328,24 @@ var config = {
|
||||||
// // to take effect.
|
// // to take effect.
|
||||||
// preferredCodec: 'VP8',
|
// preferredCodec: 'VP8',
|
||||||
//
|
//
|
||||||
|
// // Provides a way to enforce the preferred codec for the conference even when the conference has endpoints
|
||||||
|
// // that do not support the preferred codec. For example, older versions of Safari do not support VP9 yet.
|
||||||
|
// // This will result in Safari not being able to decode video from endpoints sending VP9 video.
|
||||||
|
// // When set to false, the conference falls back to VP8 whenever there is an endpoint that doesn't support the
|
||||||
|
// // preferred codec and goes back to the preferred codec when that endpoint leaves.
|
||||||
|
// // enforcePreferredCodec: false,
|
||||||
|
//
|
||||||
// // Provides a way to configure the maximum bitrates that will be enforced on the simulcast streams for
|
// // Provides a way to configure the maximum bitrates that will be enforced on the simulcast streams for
|
||||||
// // video tracks. The keys in the object represent the type of the stream (LD, SD or HD) and the values
|
// // video tracks. The keys in the object represent the type of the stream (LD, SD or HD) and the values
|
||||||
// // are the max.bitrates to be set on that particular type of stream. The actual send may vary based on
|
// // are the max.bitrates to be set on that particular type of stream. The actual send may vary based on
|
||||||
// // the available bandwidth calculated by the browser, but it will be capped by the values specified here.
|
// // the available bandwidth calculated by the browser, but it will be capped by the values specified here.
|
||||||
// // This is currently not implemented on app based clients on mobile.
|
// // This is currently not implemented on app based clients on mobile.
|
||||||
// maxBitratesVideo: {
|
// maxBitratesVideo: {
|
||||||
|
// H264: {
|
||||||
|
// low: 200000,
|
||||||
|
// standard: 500000,
|
||||||
|
// high: 1500000
|
||||||
|
// },
|
||||||
// VP8 : {
|
// VP8 : {
|
||||||
// low: 200000,
|
// low: 200000,
|
||||||
// standard: 500000,
|
// standard: 500000,
|
||||||
|
@ -299,6 +378,13 @@ var config = {
|
||||||
// resizeDesktopForPresenter: false
|
// resizeDesktopForPresenter: false
|
||||||
// },
|
// },
|
||||||
|
|
||||||
|
// Notification timeouts
|
||||||
|
// notificationTimeouts: {
|
||||||
|
// short: 2500,
|
||||||
|
// medium: 5000,
|
||||||
|
// long: 10000
|
||||||
|
// },
|
||||||
|
|
||||||
// // Options for the recording limit notification.
|
// // Options for the recording limit notification.
|
||||||
// recordingLimit: {
|
// recordingLimit: {
|
||||||
//
|
//
|
||||||
|
@ -317,6 +403,9 @@ var config = {
|
||||||
// Disables or enables RTX (RFC 4588) (defaults to false).
|
// Disables or enables RTX (RFC 4588) (defaults to false).
|
||||||
// disableRtx: false,
|
// disableRtx: false,
|
||||||
|
|
||||||
|
// Moves all Jitsi Meet 'beforeunload' logic (cleanup, leaving, disconnecting, etc) to the 'unload' event.
|
||||||
|
// disableBeforeUnloadHandlers: true,
|
||||||
|
|
||||||
// Disables or enables TCC support in this client (default: enabled).
|
// Disables or enables TCC support in this client (default: enabled).
|
||||||
// enableTcc: true,
|
// enableTcc: true,
|
||||||
|
|
||||||
|
@ -332,8 +421,7 @@ var config = {
|
||||||
// enableIceRestart: false,
|
// enableIceRestart: false,
|
||||||
|
|
||||||
// Enables forced reload of the client when the call is migrated as a result of
|
// Enables forced reload of the client when the call is migrated as a result of
|
||||||
// the bridge going down. Currently enabled by default as call migration through
|
// the bridge going down.
|
||||||
// session-terminate is causing siganling issues when Octo is enabled.
|
|
||||||
// enableForcedReload: true,
|
// enableForcedReload: true,
|
||||||
|
|
||||||
// Use TURN/UDP servers for the jitsi-videobridge connection (by default
|
// Use TURN/UDP servers for the jitsi-videobridge connection (by default
|
||||||
|
@ -341,6 +429,11 @@ var config = {
|
||||||
// bridge itself is reachable via UDP)
|
// bridge itself is reachable via UDP)
|
||||||
// useTurnUdp: false
|
// useTurnUdp: false
|
||||||
|
|
||||||
|
// Enable support for encoded transform in supported browsers. This allows
|
||||||
|
// E2EE to work in Safari if the corresponding flag is enabled in the browser.
|
||||||
|
// Experimental.
|
||||||
|
// enableEncodedTransformSupport: false,
|
||||||
|
|
||||||
// UI
|
// UI
|
||||||
//
|
//
|
||||||
|
|
||||||
|
@ -350,6 +443,12 @@ var config = {
|
||||||
// Hides lobby button
|
// Hides lobby button
|
||||||
// hideLobbyButton: false,
|
// hideLobbyButton: false,
|
||||||
|
|
||||||
|
// If Lobby is enabled starts knocking automatically.
|
||||||
|
// autoKnockLobby: false,
|
||||||
|
|
||||||
|
// Hides add breakout room button
|
||||||
|
// hideAddRoomButton: false,
|
||||||
|
|
||||||
// Require users to always specify a display name.
|
// Require users to always specify a display name.
|
||||||
// requireDisplayName: true,
|
// requireDisplayName: true,
|
||||||
|
|
||||||
|
@ -369,7 +468,15 @@ var config = {
|
||||||
// enableClosePage: false,
|
// enableClosePage: false,
|
||||||
|
|
||||||
// Disable hiding of remote thumbnails when in a 1-on-1 conference call.
|
// Disable hiding of remote thumbnails when in a 1-on-1 conference call.
|
||||||
// disable1On1Mode: false,
|
// Setting this to null, will also disable showing the remote videos
|
||||||
|
// when the toolbar is shown on mouse movements
|
||||||
|
// disable1On1Mode: null | false | true,
|
||||||
|
|
||||||
|
// Default local name to be displayed
|
||||||
|
// defaultLocalDisplayName: 'me',
|
||||||
|
|
||||||
|
// Default remote name to be displayed
|
||||||
|
// defaultRemoteDisplayName: 'Fellow Jitster',
|
||||||
|
|
||||||
// Default language for the user interface.
|
// Default language for the user interface.
|
||||||
// defaultLanguage: 'en',
|
// defaultLanguage: 'en',
|
||||||
|
@ -392,8 +499,18 @@ var config = {
|
||||||
// and microsoftApiApplicationClientID
|
// and microsoftApiApplicationClientID
|
||||||
// enableCalendarIntegration: false,
|
// enableCalendarIntegration: false,
|
||||||
|
|
||||||
// When 'true', it shows an intermediate page before joining, where the user can configure their devices.
|
// Configs for prejoin page.
|
||||||
// prejoinPageEnabled: false,
|
// prejoinConfig: {
|
||||||
|
// // When 'true', it shows an intermediate page before joining, where the user can configure their devices.
|
||||||
|
// // This replaces `prejoinPageEnabled`.
|
||||||
|
// enabled: true,
|
||||||
|
// // List of buttons to hide from the extra join options dropdown.
|
||||||
|
// hideExtraJoinButtons: ['no-audio', 'by-phone']
|
||||||
|
// },
|
||||||
|
|
||||||
|
// When 'true', the user cannot edit the display name.
|
||||||
|
// (Mainly useful when used in conjuction with the JWT so the JWT name becomes read only.)
|
||||||
|
// readOnlyName: false,
|
||||||
|
|
||||||
// If etherpad integration is enabled, setting this to true will
|
// If etherpad integration is enabled, setting this to true will
|
||||||
// automatically open the etherpad when a participant joins. This
|
// automatically open the etherpad when a participant joins. This
|
||||||
|
@ -414,6 +531,10 @@ var config = {
|
||||||
// Base URL for a Gravatar-compatible service. Defaults to libravatar.
|
// Base URL for a Gravatar-compatible service. Defaults to libravatar.
|
||||||
// gravatarBaseURL: 'https://seccdn.libravatar.org/avatar/',
|
// gravatarBaseURL: 'https://seccdn.libravatar.org/avatar/',
|
||||||
|
|
||||||
|
// App name to be displayed in the invitation email subject, as an alternative to
|
||||||
|
// interfaceConfig.APP_NAME.
|
||||||
|
// inviteAppName: null,
|
||||||
|
|
||||||
// Moved from interfaceConfig(TOOLBAR_BUTTONS).
|
// Moved from interfaceConfig(TOOLBAR_BUTTONS).
|
||||||
// The name of the toolbar buttons to display in the toolbar, including the
|
// The name of the toolbar buttons to display in the toolbar, including the
|
||||||
// "More actions" menu. If present, the button will display. Exceptions are
|
// "More actions" menu. If present, the button will display. Exceptions are
|
||||||
|
@ -426,13 +547,94 @@ var config = {
|
||||||
// - 'desktop' controls the "Share your screen" button
|
// - 'desktop' controls the "Share your screen" button
|
||||||
// - if `toolbarButtons` is undefined, we fallback to enabling all buttons on the UI
|
// - if `toolbarButtons` is undefined, we fallback to enabling all buttons on the UI
|
||||||
// toolbarButtons: [
|
// toolbarButtons: [
|
||||||
// 'microphone', 'camera', 'closedcaptions', 'desktop', 'embedmeeting', 'fullscreen',
|
// 'camera',
|
||||||
// 'fodeviceselection', 'hangup', 'profile', 'chat', 'recording',
|
// 'chat',
|
||||||
// 'livestreaming', 'etherpad', 'sharedvideo', 'shareaudio', 'settings', 'raisehand',
|
// 'closedcaptions',
|
||||||
// 'videoquality', 'filmstrip', 'invite', 'feedback', 'stats', 'shortcuts',
|
// 'desktop',
|
||||||
// 'tileview', 'select-background', 'download', 'help', 'mute-everyone', 'mute-video-everyone', 'security'
|
// 'download',
|
||||||
|
// 'embedmeeting',
|
||||||
|
// 'etherpad',
|
||||||
|
// 'feedback',
|
||||||
|
// 'filmstrip',
|
||||||
|
// 'fullscreen',
|
||||||
|
// 'hangup',
|
||||||
|
// 'help',
|
||||||
|
// 'invite',
|
||||||
|
// 'livestreaming',
|
||||||
|
// 'microphone',
|
||||||
|
// 'mute-everyone',
|
||||||
|
// 'mute-video-everyone',
|
||||||
|
// 'participants-pane',
|
||||||
|
// 'profile',
|
||||||
|
// 'raisehand',
|
||||||
|
// 'recording',
|
||||||
|
// 'security',
|
||||||
|
// 'select-background',
|
||||||
|
// 'settings',
|
||||||
|
// 'shareaudio',
|
||||||
|
// 'sharedvideo',
|
||||||
|
// 'shortcuts',
|
||||||
|
// 'stats',
|
||||||
|
// 'tileview',
|
||||||
|
// 'toggle-camera',
|
||||||
|
// 'videoquality',
|
||||||
|
// '__end'
|
||||||
// ],
|
// ],
|
||||||
|
|
||||||
|
// Holds values related to toolbar visibility control.
|
||||||
|
// toolbarConfig: {
|
||||||
|
// // Moved from interfaceConfig.INITIAL_TOOLBAR_TIMEOUT
|
||||||
|
// // The initial numer of miliseconds for the toolbar buttons to be visible on screen.
|
||||||
|
// initialTimeout: 20000,
|
||||||
|
// // Moved from interfaceConfig.TOOLBAR_TIMEOUT
|
||||||
|
// // Number of miliseconds for the toolbar buttons to be visible on screen.
|
||||||
|
// timeout: 4000,
|
||||||
|
// // Moved from interfaceConfig.TOOLBAR_ALWAYS_VISIBLE
|
||||||
|
// // Whether toolbar should be always visible or should hide after x miliseconds.
|
||||||
|
// alwaysVisible: false
|
||||||
|
// },
|
||||||
|
|
||||||
|
// Toolbar buttons which have their click event exposed through the API on
|
||||||
|
// `toolbarButtonClicked` event instead of executing the normal click routine.
|
||||||
|
// buttonsWithNotifyClick: [
|
||||||
|
// 'camera',
|
||||||
|
// 'chat',
|
||||||
|
// 'closedcaptions',
|
||||||
|
// 'desktop',
|
||||||
|
// 'download',
|
||||||
|
// 'embedmeeting',
|
||||||
|
// 'etherpad',
|
||||||
|
// 'feedback',
|
||||||
|
// 'filmstrip',
|
||||||
|
// 'fullscreen',
|
||||||
|
// 'hangup',
|
||||||
|
// 'help',
|
||||||
|
// 'invite',
|
||||||
|
// 'livestreaming',
|
||||||
|
// 'microphone',
|
||||||
|
// 'mute-everyone',
|
||||||
|
// 'mute-video-everyone',
|
||||||
|
// 'participants-pane',
|
||||||
|
// 'profile',
|
||||||
|
// 'raisehand',
|
||||||
|
// 'recording',
|
||||||
|
// 'security',
|
||||||
|
// 'select-background',
|
||||||
|
// 'settings',
|
||||||
|
// 'shareaudio',
|
||||||
|
// 'sharedvideo',
|
||||||
|
// 'shortcuts',
|
||||||
|
// 'stats',
|
||||||
|
// 'tileview',
|
||||||
|
// 'toggle-camera',
|
||||||
|
// 'videoquality',
|
||||||
|
// '__end'
|
||||||
|
// ],
|
||||||
|
|
||||||
|
// List of pre meeting screens buttons to hide. The values must be one or more of the 5 allowed buttons:
|
||||||
|
// 'microphone', 'camera', 'select-background', 'invite', 'settings'
|
||||||
|
// hiddenPremeetingButtons: [],
|
||||||
|
|
||||||
// Stats
|
// Stats
|
||||||
//
|
//
|
||||||
|
|
||||||
|
@ -450,12 +652,37 @@ var config = {
|
||||||
// callStatsID: '',
|
// callStatsID: '',
|
||||||
// callStatsSecret: '',
|
// callStatsSecret: '',
|
||||||
|
|
||||||
|
// The callstats initialize config params as described in the API:
|
||||||
|
// https://docs.callstats.io/docs/javascript#callstatsinitialize-with-app-secret
|
||||||
|
// callStatsConfigParams: {
|
||||||
|
// disableBeforeUnloadHandler: true, // disables callstats.js's window.onbeforeunload parameter.
|
||||||
|
// applicationVersion: "app_version", // Application version specified by the developer.
|
||||||
|
// disablePrecalltest: true, // disables the pre-call test, it is enabled by default.
|
||||||
|
// siteID: "siteID", // The name/ID of the site/campus from where the call/pre-call test is made.
|
||||||
|
// additionalIDs: { // additionalIDs object, contains application related IDs.
|
||||||
|
// customerID: "Customer Identifier. Example, walmart.",
|
||||||
|
// tenantID: "Tenant Identifier. Example, monster.",
|
||||||
|
// productName: "Product Name. Example, Jitsi.",
|
||||||
|
// meetingsName: "Meeting Name. Example, Jitsi loves callstats.",
|
||||||
|
// serverName: "Server/MiddleBox Name. Example, jvb-prod-us-east-mlkncws12.",
|
||||||
|
// pbxID: "PBX Identifier. Example, walmart.",
|
||||||
|
// pbxExtensionID: "PBX Extension Identifier. Example, 5625.",
|
||||||
|
// fqExtensionID: "Fully qualified Extension Identifier. Example, +71 (US) +5625.",
|
||||||
|
// sessionID: "Session Identifier. Example, session-12-34"
|
||||||
|
// },
|
||||||
|
// collectLegacyStats: true, //enables the collection of legacy stats in chrome browser
|
||||||
|
// collectIP: true //enables the collection localIP address
|
||||||
|
// },
|
||||||
|
|
||||||
// Enables sending participants' display names to callstats
|
// Enables sending participants' display names to callstats
|
||||||
// enableDisplayNameInStats: false,
|
// enableDisplayNameInStats: false,
|
||||||
|
|
||||||
// Enables sending participants' emails (if available) to callstats and other analytics
|
// Enables sending participants' emails (if available) to callstats and other analytics
|
||||||
// enableEmailInStats: false,
|
// enableEmailInStats: false,
|
||||||
|
|
||||||
|
// Enables detecting faces of participants and get their expression and send it to other participants
|
||||||
|
// enableFacialRecognition: true,
|
||||||
|
|
||||||
// Controls the percentage of automatic feedback shown to participants when callstats is enabled.
|
// Controls the percentage of automatic feedback shown to participants when callstats is enabled.
|
||||||
// The default value is 100%. If set to 0, no automatic feedback will be requested
|
// The default value is 100%. If set to 0, no automatic feedback will be requested
|
||||||
// feedbackPercentage: 100,
|
// feedbackPercentage: 100,
|
||||||
|
@ -481,12 +708,8 @@ var config = {
|
||||||
// connection.
|
// connection.
|
||||||
enabled: true,
|
enabled: true,
|
||||||
|
|
||||||
// The STUN servers that will be used in the peer to peer connections
|
// Enable unified plan implementation support on Chromium for p2p connection.
|
||||||
stunServers: [
|
// enableUnifiedOnChrome: false,
|
||||||
|
|
||||||
// { urls: 'stun:jitsi-meet.example.com:3478' },
|
|
||||||
{ urls: 'stun:meet-jit-si-turnrelay.jitsi.net:443' }
|
|
||||||
]
|
|
||||||
|
|
||||||
// Sets the ICE transport policy for the p2p connection. At the time
|
// Sets the ICE transport policy for the p2p connection. At the time
|
||||||
// of this writing the list of possible values are 'all' and 'relay',
|
// of this writing the list of possible values are 'all' and 'relay',
|
||||||
|
@ -513,10 +736,20 @@ var config = {
|
||||||
|
|
||||||
// How long we're going to wait, before going back to P2P after the 3rd
|
// How long we're going to wait, before going back to P2P after the 3rd
|
||||||
// participant has left the conference (to filter out page reload).
|
// participant has left the conference (to filter out page reload).
|
||||||
// backToP2PDelay: 5
|
// backToP2PDelay: 5,
|
||||||
|
|
||||||
|
// The STUN servers that will be used in the peer to peer connections
|
||||||
|
stunServers: [
|
||||||
|
|
||||||
|
// { urls: 'stun:jitsi-meet.example.com:3478' },
|
||||||
|
{ urls: 'stun:meet-jit-si-turnrelay.jitsi.net:443' }
|
||||||
|
]
|
||||||
},
|
},
|
||||||
|
|
||||||
analytics: {
|
analytics: {
|
||||||
|
// True if the analytics should be disabled
|
||||||
|
// disabled: false,
|
||||||
|
|
||||||
// The Google Analytics Tracking ID:
|
// The Google Analytics Tracking ID:
|
||||||
// googleAnalyticsTrackingId: 'your-tracking-id-UA-123456-1'
|
// googleAnalyticsTrackingId: 'your-tracking-id-UA-123456-1'
|
||||||
|
|
||||||
|
@ -532,7 +765,7 @@ var config = {
|
||||||
// module connects to the provided rtcstatsEndpoint and sends statistics regarding
|
// module connects to the provided rtcstatsEndpoint and sends statistics regarding
|
||||||
// PeerConnection states along with getStats metrics polled at the specified
|
// PeerConnection states along with getStats metrics polled at the specified
|
||||||
// interval.
|
// interval.
|
||||||
// rtcstatsEnabled: true,
|
// rtcstatsEnabled: false,
|
||||||
|
|
||||||
// In order to enable rtcstats one needs to provide a endpoint url.
|
// In order to enable rtcstats one needs to provide a endpoint url.
|
||||||
// rtcstatsEndpoint: wss://rtcstats-server-pilot.jitsi.net/,
|
// rtcstatsEndpoint: wss://rtcstats-server-pilot.jitsi.net/,
|
||||||
|
@ -560,13 +793,43 @@ var config = {
|
||||||
// userRegion: "asia"
|
// userRegion: "asia"
|
||||||
},
|
},
|
||||||
|
|
||||||
|
// Array<string> of disabled sounds.
|
||||||
|
// Possible values:
|
||||||
|
// - 'ASKED_TO_UNMUTE_SOUND'
|
||||||
|
// - 'E2EE_OFF_SOUND'
|
||||||
|
// - 'E2EE_ON_SOUND'
|
||||||
|
// - 'INCOMING_MSG_SOUND'
|
||||||
|
// - 'KNOCKING_PARTICIPANT_SOUND'
|
||||||
|
// - 'LIVE_STREAMING_OFF_SOUND'
|
||||||
|
// - 'LIVE_STREAMING_ON_SOUND'
|
||||||
|
// - 'NO_AUDIO_SIGNAL_SOUND'
|
||||||
|
// - 'NOISY_AUDIO_INPUT_SOUND'
|
||||||
|
// - 'OUTGOING_CALL_EXPIRED_SOUND'
|
||||||
|
// - 'OUTGOING_CALL_REJECTED_SOUND'
|
||||||
|
// - 'OUTGOING_CALL_RINGING_SOUND'
|
||||||
|
// - 'OUTGOING_CALL_START_SOUND'
|
||||||
|
// - 'PARTICIPANT_JOINED_SOUND'
|
||||||
|
// - 'PARTICIPANT_LEFT_SOUND'
|
||||||
|
// - 'RAISE_HAND_SOUND'
|
||||||
|
// - 'REACTION_SOUND'
|
||||||
|
// - 'RECORDING_OFF_SOUND'
|
||||||
|
// - 'RECORDING_ON_SOUND'
|
||||||
|
// - 'TALK_WHILE_MUTED_SOUND'
|
||||||
|
// disabledSounds: [],
|
||||||
|
|
||||||
|
// DEPRECATED! Use `disabledSounds` instead.
|
||||||
// Decides whether the start/stop recording audio notifications should play on record.
|
// Decides whether the start/stop recording audio notifications should play on record.
|
||||||
// disableRecordAudioNotification: false,
|
// disableRecordAudioNotification: false,
|
||||||
|
|
||||||
|
// DEPRECATED! Use `disabledSounds` instead.
|
||||||
// Disables the sounds that play when other participants join or leave the
|
// Disables the sounds that play when other participants join or leave the
|
||||||
// conference (if set to true, these sounds will not be played).
|
// conference (if set to true, these sounds will not be played).
|
||||||
// disableJoinLeaveSounds: false,
|
// disableJoinLeaveSounds: false,
|
||||||
|
|
||||||
|
// DEPRECATED! Use `disabledSounds` instead.
|
||||||
|
// Disables the sounds that play when a chat message is received.
|
||||||
|
// disableIncomingMessageSound: false,
|
||||||
|
|
||||||
// Information for the chrome extension banner
|
// Information for the chrome extension banner
|
||||||
// chromeExtensionBanner: {
|
// chromeExtensionBanner: {
|
||||||
// // The chrome extension to be installed address
|
// // The chrome extension to be installed address
|
||||||
|
@ -587,8 +850,8 @@ var config = {
|
||||||
// localRecording: {
|
// localRecording: {
|
||||||
// Enables local recording.
|
// Enables local recording.
|
||||||
// Additionally, 'localrecording' (all lowercase) needs to be added to
|
// Additionally, 'localrecording' (all lowercase) needs to be added to
|
||||||
// TOOLBAR_BUTTONS in interface_config.js for the Local Recording
|
// the `toolbarButtons`-array for the Local Recording button to show up
|
||||||
// button to show up on the toolbar.
|
// on the toolbar.
|
||||||
//
|
//
|
||||||
// enabled: true,
|
// enabled: true,
|
||||||
//
|
//
|
||||||
|
@ -597,6 +860,10 @@ var config = {
|
||||||
// format: 'flac'
|
// format: 'flac'
|
||||||
//
|
//
|
||||||
|
|
||||||
|
// },
|
||||||
|
// e2ee: {
|
||||||
|
// labels,
|
||||||
|
// externallyManagedKey: false
|
||||||
// },
|
// },
|
||||||
|
|
||||||
// Options related to end-to-end (participant to participant) ping.
|
// Options related to end-to-end (participant to participant) ping.
|
||||||
|
@ -651,7 +918,9 @@ var config = {
|
||||||
// Options related to the remote participant menu.
|
// Options related to the remote participant menu.
|
||||||
// remoteVideoMenu: {
|
// remoteVideoMenu: {
|
||||||
// // If set to true the 'Kick out' button will be disabled.
|
// // If set to true the 'Kick out' button will be disabled.
|
||||||
// disableKick: true
|
// disableKick: true,
|
||||||
|
// // If set to true the 'Grant moderator' button will be disabled.
|
||||||
|
// disableGrantModerator: true
|
||||||
// },
|
// },
|
||||||
|
|
||||||
// If set to true all muting operations of remote participants will be disabled.
|
// If set to true all muting operations of remote participants will be disabled.
|
||||||
|
@ -663,8 +932,11 @@ var config = {
|
||||||
/**
|
/**
|
||||||
External API url used to receive branding specific information.
|
External API url used to receive branding specific information.
|
||||||
If there is no url set or there are missing fields, the defaults are applied.
|
If there is no url set or there are missing fields, the defaults are applied.
|
||||||
|
The config file should be in JSON.
|
||||||
None of the fields are mandatory and the response must have the shape:
|
None of the fields are mandatory and the response must have the shape:
|
||||||
{
|
{
|
||||||
|
// The domain url to apply (will replace the domain in the sharing conference link/embed section)
|
||||||
|
inviteDomain: 'example-company.org,
|
||||||
// The hex value for the colour used as background
|
// The hex value for the colour used as background
|
||||||
backgroundColor: '#fff',
|
backgroundColor: '#fff',
|
||||||
// The url for the image used as background
|
// The url for the image used as background
|
||||||
|
@ -672,11 +944,55 @@ var config = {
|
||||||
// The anchor url used when clicking the logo image
|
// The anchor url used when clicking the logo image
|
||||||
logoClickUrl: 'https://example-company.org',
|
logoClickUrl: 'https://example-company.org',
|
||||||
// The url used for the image used as logo
|
// The url used for the image used as logo
|
||||||
logoImageUrl: 'https://example.com/logo-img.png'
|
logoImageUrl: 'https://example.com/logo-img.png',
|
||||||
|
// Overwrite for pool of background images for avatars
|
||||||
|
avatarBackgrounds: ['url(https://example.com/avatar-background-1.png)', '#FFF'],
|
||||||
|
// The lobby/prejoin screen background
|
||||||
|
premeetingBackground: 'url(https://example.com/premeeting-background.png)',
|
||||||
|
// A list of images that can be used as video backgrounds.
|
||||||
|
// When this field is present, the default images will be replaced with those provided.
|
||||||
|
virtualBackgrounds: ['https://example.com/img.jpg'],
|
||||||
|
// Object containing a theme's properties. It also supports partial overwrites of the main theme.
|
||||||
|
// For a list of all possible theme tokens and their current defaults, please check:
|
||||||
|
// https://github.com/jitsi/jitsi-meet/tree/master/resources/custom-theme/custom-theme.json
|
||||||
|
// For a short explanations on each of the tokens, please check:
|
||||||
|
// https://github.com/jitsi/jitsi-meet/blob/master/react/features/base/ui/Tokens.js
|
||||||
|
// IMPORTANT!: This is work in progress so many of the various tokens are not yet applied in code
|
||||||
|
// or they are partially applied.
|
||||||
|
customTheme: {
|
||||||
|
palette: {
|
||||||
|
ui01: "orange !important",
|
||||||
|
ui02: "maroon",
|
||||||
|
surface02: 'darkgreen',
|
||||||
|
ui03: "violet",
|
||||||
|
ui04: "magenta",
|
||||||
|
ui05: "blueviolet",
|
||||||
|
field02Hover: 'red',
|
||||||
|
action01: 'green',
|
||||||
|
action01Hover: 'lightgreen',
|
||||||
|
action02Disabled: 'beige',
|
||||||
|
success02: 'cadetblue',
|
||||||
|
action02Hover: 'aliceblue'
|
||||||
|
},
|
||||||
|
typography: {
|
||||||
|
labelRegular: {
|
||||||
|
fontSize: 25,
|
||||||
|
lineHeight: 30,
|
||||||
|
fontWeight: 500
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
*/
|
*/
|
||||||
// dynamicBrandingUrl: '',
|
// dynamicBrandingUrl: '',
|
||||||
|
|
||||||
|
// When true the user cannot add more images to be used as virtual background.
|
||||||
|
// Only the default ones from will be available.
|
||||||
|
// disableAddingBackgroundImages: false,
|
||||||
|
|
||||||
|
// Disables using screensharing as virtual background.
|
||||||
|
// disableScreensharingVirtualBackground: false,
|
||||||
|
|
||||||
// Sets the background transparency level. '0' is fully transparent, '1' is opaque.
|
// Sets the background transparency level. '0' is fully transparent, '1' is opaque.
|
||||||
// backgroundAlpha: 1,
|
// backgroundAlpha: 1,
|
||||||
|
|
||||||
|
@ -688,12 +1004,35 @@ var config = {
|
||||||
// If true, tile view will not be enabled automatically when the participants count threshold is reached.
|
// If true, tile view will not be enabled automatically when the participants count threshold is reached.
|
||||||
// disableTileView: true,
|
// disableTileView: true,
|
||||||
|
|
||||||
|
// If true, the tiles will be displayed contained within the available space rather than enlarged to cover it.
|
||||||
|
// disableTileEnlargement: true,
|
||||||
|
|
||||||
|
// Controls the visibility and behavior of the top header conference info labels.
|
||||||
|
// If a label's id is not in any of the 2 arrays, it will not be visible at all on the header.
|
||||||
|
// conferenceInfo: {
|
||||||
|
// // those labels will not be hidden in tandem with the toolbox.
|
||||||
|
// alwaysVisible: ['recording', 'local-recording'],
|
||||||
|
// // those labels will be auto-hidden in tandem with the toolbox buttons.
|
||||||
|
// autoHide: [
|
||||||
|
// 'subject',
|
||||||
|
// 'conference-timer',
|
||||||
|
// 'participants-count',
|
||||||
|
// 'e2ee',
|
||||||
|
// 'transcribing',
|
||||||
|
// 'video-quality',
|
||||||
|
// 'insecure-room'
|
||||||
|
// ]
|
||||||
|
// },
|
||||||
|
|
||||||
// Hides the conference subject
|
// Hides the conference subject
|
||||||
// hideConferenceSubject: true,
|
// hideConferenceSubject: true,
|
||||||
|
|
||||||
// Hides the conference timer.
|
// Hides the conference timer.
|
||||||
// hideConferenceTimer: true,
|
// hideConferenceTimer: true,
|
||||||
|
|
||||||
|
// Hides the recording label
|
||||||
|
// hideRecordingLabel: false,
|
||||||
|
|
||||||
// Hides the participants stats
|
// Hides the participants stats
|
||||||
// hideParticipantsStats: true,
|
// hideParticipantsStats: true,
|
||||||
|
|
||||||
|
@ -705,6 +1044,13 @@ var config = {
|
||||||
// is not persisting the local storage inside the iframe.
|
// is not persisting the local storage inside the iframe.
|
||||||
// useHostPageLocalStorage: true,
|
// useHostPageLocalStorage: true,
|
||||||
|
|
||||||
|
// etherpad ("shared document") integration.
|
||||||
|
//
|
||||||
|
|
||||||
|
// If set, add a "Open shared document" link to the bottom right menu that
|
||||||
|
// will open an etherpad document.
|
||||||
|
// etherpad_base: 'https://your-etherpad-installati.on/p/',
|
||||||
|
|
||||||
// List of undocumented settings used in jitsi-meet
|
// List of undocumented settings used in jitsi-meet
|
||||||
/**
|
/**
|
||||||
_immediateReloadThreshold
|
_immediateReloadThreshold
|
||||||
|
@ -717,8 +1063,8 @@ var config = {
|
||||||
dialOutCodesUrl
|
dialOutCodesUrl
|
||||||
disableRemoteControl
|
disableRemoteControl
|
||||||
displayJids
|
displayJids
|
||||||
etherpad_base
|
|
||||||
externalConnectUrl
|
externalConnectUrl
|
||||||
|
e2eeLabels
|
||||||
firefox_fake_device
|
firefox_fake_device
|
||||||
googleApiApplicationClientID
|
googleApiApplicationClientID
|
||||||
iAmRecorder
|
iAmRecorder
|
||||||
|
@ -760,6 +1106,11 @@ var config = {
|
||||||
websocketKeepAliveUrl
|
websocketKeepAliveUrl
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Default interval (milliseconds) for triggering mouseMoved iframe API event
|
||||||
|
*/
|
||||||
|
mouseMoveCallbackInterval: 1000,
|
||||||
|
|
||||||
/**
|
/**
|
||||||
Use this array to configure which notifications will be shown to the user
|
Use this array to configure which notifications will be shown to the user
|
||||||
The items correspond to the title or description key of that notification
|
The items correspond to the title or description key of that notification
|
||||||
|
@ -793,11 +1144,19 @@ var config = {
|
||||||
// 'lobby.notificationTitle', // shown when lobby is toggled and when join requests are allowed / denied
|
// 'lobby.notificationTitle', // shown when lobby is toggled and when join requests are allowed / denied
|
||||||
// 'localRecording.localRecording', // shown when a local recording is started
|
// 'localRecording.localRecording', // shown when a local recording is started
|
||||||
// 'notify.disconnected', // shown when a participant has left
|
// 'notify.disconnected', // shown when a participant has left
|
||||||
|
// 'notify.connectedOneMember', // show when a participant joined
|
||||||
|
// 'notify.connectedTwoMembers', // show when two participants joined simultaneously
|
||||||
|
// 'notify.connectedThreePlusMembers', // show when more than 2 participants joined simultaneously
|
||||||
// 'notify.grantedTo', // shown when moderator rights were granted to a participant
|
// 'notify.grantedTo', // shown when moderator rights were granted to a participant
|
||||||
// 'notify.invitedOneMember', // shown when 1 participant has been invited
|
// 'notify.invitedOneMember', // shown when 1 participant has been invited
|
||||||
// 'notify.invitedThreePlusMembers', // shown when 3+ participants have been invited
|
// 'notify.invitedThreePlusMembers', // shown when 3+ participants have been invited
|
||||||
// 'notify.invitedTwoMembers', // shown when 2 participants have been invited
|
// 'notify.invitedTwoMembers', // shown when 2 participants have been invited
|
||||||
// 'notify.kickParticipant', // shown when a participant is kicked
|
// 'notify.kickParticipant', // shown when a participant is kicked
|
||||||
|
// 'notify.moderationStartedTitle', // shown when AV moderation is activated
|
||||||
|
// 'notify.moderationStoppedTitle', // shown when AV moderation is deactivated
|
||||||
|
// 'notify.moderationInEffectTitle', // shown when user attempts to unmute audio during AV moderation
|
||||||
|
// 'notify.moderationInEffectVideoTitle', // shown when user attempts to enable video during AV moderation
|
||||||
|
// 'notify.moderationInEffectCSTitle', // shown when user attempts to share content during AV moderation
|
||||||
// 'notify.mutedRemotelyTitle', // shown when user is muted by a remote party
|
// 'notify.mutedRemotelyTitle', // shown when user is muted by a remote party
|
||||||
// 'notify.mutedTitle', // shown when user has been muted upon joining,
|
// 'notify.mutedTitle', // shown when user has been muted upon joining,
|
||||||
// 'notify.newDeviceAudioTitle', // prompts the user to use a newly detected audio device
|
// 'notify.newDeviceAudioTitle', // prompts the user to use a newly detected audio device
|
||||||
|
@ -806,6 +1165,7 @@ var config = {
|
||||||
// 'notify.passwordSetRemotely', // shown when a password has been set remotely
|
// 'notify.passwordSetRemotely', // shown when a password has been set remotely
|
||||||
// 'notify.raisedHand', // shown when a partcipant used raise hand,
|
// 'notify.raisedHand', // shown when a partcipant used raise hand,
|
||||||
// 'notify.startSilentTitle', // shown when user joined with no audio
|
// 'notify.startSilentTitle', // shown when user joined with no audio
|
||||||
|
// 'notify.unmute', // shown to moderator when user raises hand during AV moderation
|
||||||
// 'prejoin.errorDialOut',
|
// 'prejoin.errorDialOut',
|
||||||
// 'prejoin.errorDialOutDisconnected',
|
// 'prejoin.errorDialOutDisconnected',
|
||||||
// 'prejoin.errorDialOutFailed',
|
// 'prejoin.errorDialOutFailed',
|
||||||
|
@ -819,7 +1179,13 @@ var config = {
|
||||||
// 'toolbar.noisyAudioInputTitle', // shown when noise is detected for the current microphone
|
// 'toolbar.noisyAudioInputTitle', // shown when noise is detected for the current microphone
|
||||||
// 'toolbar.talkWhileMutedPopup', // shown when user tries to speak while muted
|
// 'toolbar.talkWhileMutedPopup', // shown when user tries to speak while muted
|
||||||
// 'transcribing.failedToStart' // shown when transcribing fails to start
|
// 'transcribing.failedToStart' // shown when transcribing fails to start
|
||||||
// ]
|
// ],
|
||||||
|
|
||||||
|
// Prevent the filmstrip from autohiding when screen width is under a certain threshold
|
||||||
|
// disableFilmstripAutohiding: false,
|
||||||
|
|
||||||
|
// Specifies whether the chat emoticons are disabled or not
|
||||||
|
// disableChatSmileys: false,
|
||||||
|
|
||||||
// Allow all above example options to include a trailing comma and
|
// Allow all above example options to include a trailing comma and
|
||||||
// prevent fear when commenting out the last value.
|
// prevent fear when commenting out the last value.
|
||||||
|
|
|
@ -36,42 +36,13 @@ var interfaceConfig = {
|
||||||
BRAND_WATERMARK_LINK: '',
|
BRAND_WATERMARK_LINK: '',
|
||||||
|
|
||||||
CLOSE_PAGE_GUEST_HINT: false, // A html text to be shown to guests on the close page, false disables it
|
CLOSE_PAGE_GUEST_HINT: false, // A html text to be shown to guests on the close page, false disables it
|
||||||
/**
|
|
||||||
* Whether the connection indicator icon should hide itself based on
|
|
||||||
* connection strength. If true, the connection indicator will remain
|
|
||||||
* displayed while the participant has a weak connection and will hide
|
|
||||||
* itself after the CONNECTION_INDICATOR_HIDE_TIMEOUT when the connection is
|
|
||||||
* strong.
|
|
||||||
*
|
|
||||||
* @type {boolean}
|
|
||||||
*/
|
|
||||||
CONNECTION_INDICATOR_AUTO_HIDE_ENABLED: true,
|
|
||||||
|
|
||||||
/**
|
|
||||||
* How long the connection indicator should remain displayed before hiding.
|
|
||||||
* Used in conjunction with CONNECTION_INDICATOR_AUTOHIDE_ENABLED.
|
|
||||||
*
|
|
||||||
* @type {number}
|
|
||||||
*/
|
|
||||||
CONNECTION_INDICATOR_AUTO_HIDE_TIMEOUT: 5000,
|
|
||||||
|
|
||||||
/**
|
|
||||||
* If true, hides the connection indicators completely.
|
|
||||||
*
|
|
||||||
* @type {boolean}
|
|
||||||
*/
|
|
||||||
CONNECTION_INDICATOR_DISABLED: false,
|
|
||||||
|
|
||||||
DEFAULT_BACKGROUND: '#474747',
|
DEFAULT_BACKGROUND: '#474747',
|
||||||
DEFAULT_LOCAL_DISPLAY_NAME: 'me',
|
|
||||||
DEFAULT_LOGO_URL: '${BRANDING_WATERMARK_PATH}',
|
DEFAULT_LOGO_URL: '${BRANDING_WATERMARK_PATH}',
|
||||||
DEFAULT_REMOTE_DISPLAY_NAME: 'Fellow Jitster',
|
|
||||||
DEFAULT_WELCOME_PAGE_LOGO_URL: '${BRANDING_WATERMARK_PATH}',
|
DEFAULT_WELCOME_PAGE_LOGO_URL: '${BRANDING_WATERMARK_PATH}',
|
||||||
|
|
||||||
DISABLE_DOMINANT_SPEAKER_INDICATOR: false,
|
DISABLE_DOMINANT_SPEAKER_INDICATOR: false,
|
||||||
|
|
||||||
DISABLE_FOCUS_INDICATOR: false,
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* If true, notifications regarding joining/leaving are no longer displayed.
|
* If true, notifications regarding joining/leaving are no longer displayed.
|
||||||
*/
|
*/
|
||||||
|
@ -127,7 +98,6 @@ var interfaceConfig = {
|
||||||
*/
|
*/
|
||||||
HIDE_INVITE_MORE_HEADER: false,
|
HIDE_INVITE_MORE_HEADER: false,
|
||||||
|
|
||||||
INITIAL_TOOLBAR_TIMEOUT: 20000,
|
|
||||||
JITSI_WATERMARK_LINK: 'https://jitsi.org',
|
JITSI_WATERMARK_LINK: 'https://jitsi.org',
|
||||||
|
|
||||||
LANG_DETECTION: true, // Allow i18n to detect the system language
|
LANG_DETECTION: true, // Allow i18n to detect the system language
|
||||||
|
@ -213,16 +183,6 @@ var interfaceConfig = {
|
||||||
*/
|
*/
|
||||||
SUPPORT_URL: 'https://community.jitsi.org/',
|
SUPPORT_URL: 'https://community.jitsi.org/',
|
||||||
|
|
||||||
TOOLBAR_ALWAYS_VISIBLE: false,
|
|
||||||
|
|
||||||
/**
|
|
||||||
* DEPRECATED!
|
|
||||||
* This config was moved to config.js as \`toolbarButtons\`.
|
|
||||||
*/
|
|
||||||
// TOOLBAR_BUTTONS: [],
|
|
||||||
|
|
||||||
TOOLBAR_TIMEOUT: 4000,
|
|
||||||
|
|
||||||
// Browsers, in addition to those which do not fully support WebRTC, that
|
// Browsers, in addition to those which do not fully support WebRTC, that
|
||||||
// are not supported and should show the unsupported browser page.
|
// are not supported and should show the unsupported browser page.
|
||||||
UNSUPPORTED_BROWSERS: [],
|
UNSUPPORTED_BROWSERS: [],
|
||||||
|
@ -274,19 +234,40 @@ var interfaceConfig = {
|
||||||
*/
|
*/
|
||||||
// ANDROID_APP_PACKAGE: 'org.jitsi.meet',
|
// ANDROID_APP_PACKAGE: 'org.jitsi.meet',
|
||||||
|
|
||||||
/**
|
|
||||||
* Override the behavior of some notifications to remain displayed until
|
|
||||||
* explicitly dismissed through a user action. The value is how long, in
|
|
||||||
* milliseconds, those notifications should remain displayed.
|
|
||||||
*/
|
|
||||||
// ENFORCE_NOTIFICATION_AUTO_DISMISS_TIMEOUT: 15000,
|
|
||||||
|
|
||||||
// List of undocumented settings
|
// List of undocumented settings
|
||||||
/**
|
/**
|
||||||
INDICATOR_FONT_SIZES
|
INDICATOR_FONT_SIZES
|
||||||
PHONE_NUMBER_REGEX
|
PHONE_NUMBER_REGEX
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
// -----------------DEPRECATED CONFIGS BELOW THIS LINE-----------------------------
|
||||||
|
|
||||||
|
// Connection indicators (
|
||||||
|
// CONNECTION_INDICATOR_AUTO_HIDE_ENABLED,
|
||||||
|
// CONNECTION_INDICATOR_AUTO_HIDE_TIMEOUT,
|
||||||
|
// CONNECTION_INDICATOR_DISABLED) got moved to config.js.
|
||||||
|
|
||||||
|
// Please use disableModeratorIndicator from config.js
|
||||||
|
// DISABLE_FOCUS_INDICATOR: false,
|
||||||
|
|
||||||
|
// Please use defaultLocalDisplayName from config.js
|
||||||
|
// DEFAULT_LOCAL_DISPLAY_NAME: 'me',
|
||||||
|
|
||||||
|
// Please use defaultRemoteDisplayName from config.js
|
||||||
|
// DEFAULT_REMOTE_DISPLAY_NAME: 'Fellow Jitster',
|
||||||
|
|
||||||
|
// Moved to config.js as \`toolbarConfig.initialTimeout\`.
|
||||||
|
// INITIAL_TOOLBAR_TIMEOUT: 20000,
|
||||||
|
|
||||||
|
// Moved to config.js as \`toolbarConfig.alwaysVisible\`.
|
||||||
|
// TOOLBAR_ALWAYS_VISIBLE: false,
|
||||||
|
|
||||||
|
// This config was moved to config.js as \`toolbarButtons\`.
|
||||||
|
// TOOLBAR_BUTTONS: [],
|
||||||
|
|
||||||
|
// Moved to config.js as \`toolbarConfig.timeout\`.
|
||||||
|
// TOOLBAR_TIMEOUT: 4000,
|
||||||
|
|
||||||
// Allow all above example options to include a trailing comma and
|
// Allow all above example options to include a trailing comma and
|
||||||
// prevent fear when commenting out the last value.
|
// prevent fear when commenting out the last value.
|
||||||
// eslint-disable-next-line sort-keys
|
// eslint-disable-next-line sort-keys
|
||||||
|
|
|
@ -25,42 +25,13 @@ var interfaceConfig = {
|
||||||
BRAND_WATERMARK_LINK: '',
|
BRAND_WATERMARK_LINK: '',
|
||||||
|
|
||||||
CLOSE_PAGE_GUEST_HINT: false, // A html text to be shown to guests on the close page, false disables it
|
CLOSE_PAGE_GUEST_HINT: false, // A html text to be shown to guests on the close page, false disables it
|
||||||
/**
|
|
||||||
* Whether the connection indicator icon should hide itself based on
|
|
||||||
* connection strength. If true, the connection indicator will remain
|
|
||||||
* displayed while the participant has a weak connection and will hide
|
|
||||||
* itself after the CONNECTION_INDICATOR_HIDE_TIMEOUT when the connection is
|
|
||||||
* strong.
|
|
||||||
*
|
|
||||||
* @type {boolean}
|
|
||||||
*/
|
|
||||||
CONNECTION_INDICATOR_AUTO_HIDE_ENABLED: true,
|
|
||||||
|
|
||||||
/**
|
|
||||||
* How long the connection indicator should remain displayed before hiding.
|
|
||||||
* Used in conjunction with CONNECTION_INDICATOR_AUTOHIDE_ENABLED.
|
|
||||||
*
|
|
||||||
* @type {number}
|
|
||||||
*/
|
|
||||||
CONNECTION_INDICATOR_AUTO_HIDE_TIMEOUT: 5000,
|
|
||||||
|
|
||||||
/**
|
|
||||||
* If true, hides the connection indicators completely.
|
|
||||||
*
|
|
||||||
* @type {boolean}
|
|
||||||
*/
|
|
||||||
CONNECTION_INDICATOR_DISABLED: false,
|
|
||||||
|
|
||||||
DEFAULT_BACKGROUND: '#474747',
|
DEFAULT_BACKGROUND: '#474747',
|
||||||
DEFAULT_LOCAL_DISPLAY_NAME: 'me',
|
|
||||||
DEFAULT_LOGO_URL: 'images/watermark.svg',
|
DEFAULT_LOGO_URL: 'images/watermark.svg',
|
||||||
DEFAULT_REMOTE_DISPLAY_NAME: 'Fellow Jitster',
|
|
||||||
DEFAULT_WELCOME_PAGE_LOGO_URL: 'images/watermark.svg',
|
DEFAULT_WELCOME_PAGE_LOGO_URL: 'images/watermark.svg',
|
||||||
|
|
||||||
DISABLE_DOMINANT_SPEAKER_INDICATOR: false,
|
DISABLE_DOMINANT_SPEAKER_INDICATOR: false,
|
||||||
|
|
||||||
DISABLE_FOCUS_INDICATOR: false,
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* If true, notifications regarding joining/leaving are no longer displayed.
|
* If true, notifications regarding joining/leaving are no longer displayed.
|
||||||
*/
|
*/
|
||||||
|
@ -116,7 +87,6 @@ var interfaceConfig = {
|
||||||
*/
|
*/
|
||||||
HIDE_INVITE_MORE_HEADER: false,
|
HIDE_INVITE_MORE_HEADER: false,
|
||||||
|
|
||||||
INITIAL_TOOLBAR_TIMEOUT: 20000,
|
|
||||||
JITSI_WATERMARK_LINK: 'https://jitsi.org',
|
JITSI_WATERMARK_LINK: 'https://jitsi.org',
|
||||||
|
|
||||||
LANG_DETECTION: true, // Allow i18n to detect the system language
|
LANG_DETECTION: true, // Allow i18n to detect the system language
|
||||||
|
@ -202,16 +172,6 @@ var interfaceConfig = {
|
||||||
*/
|
*/
|
||||||
SUPPORT_URL: 'https://community.jitsi.org/',
|
SUPPORT_URL: 'https://community.jitsi.org/',
|
||||||
|
|
||||||
TOOLBAR_ALWAYS_VISIBLE: false,
|
|
||||||
|
|
||||||
/**
|
|
||||||
* DEPRECATED!
|
|
||||||
* This config was moved to config.js as `toolbarButtons`.
|
|
||||||
*/
|
|
||||||
// TOOLBAR_BUTTONS: [],
|
|
||||||
|
|
||||||
TOOLBAR_TIMEOUT: 4000,
|
|
||||||
|
|
||||||
// Browsers, in addition to those which do not fully support WebRTC, that
|
// Browsers, in addition to those which do not fully support WebRTC, that
|
||||||
// are not supported and should show the unsupported browser page.
|
// are not supported and should show the unsupported browser page.
|
||||||
UNSUPPORTED_BROWSERS: [],
|
UNSUPPORTED_BROWSERS: [],
|
||||||
|
@ -263,19 +223,40 @@ var interfaceConfig = {
|
||||||
*/
|
*/
|
||||||
// ANDROID_APP_PACKAGE: 'org.jitsi.meet',
|
// ANDROID_APP_PACKAGE: 'org.jitsi.meet',
|
||||||
|
|
||||||
/**
|
|
||||||
* Override the behavior of some notifications to remain displayed until
|
|
||||||
* explicitly dismissed through a user action. The value is how long, in
|
|
||||||
* milliseconds, those notifications should remain displayed.
|
|
||||||
*/
|
|
||||||
// ENFORCE_NOTIFICATION_AUTO_DISMISS_TIMEOUT: 15000,
|
|
||||||
|
|
||||||
// List of undocumented settings
|
// List of undocumented settings
|
||||||
/**
|
/**
|
||||||
INDICATOR_FONT_SIZES
|
INDICATOR_FONT_SIZES
|
||||||
PHONE_NUMBER_REGEX
|
PHONE_NUMBER_REGEX
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
// -----------------DEPRECATED CONFIGS BELOW THIS LINE-----------------------------
|
||||||
|
|
||||||
|
// Connection indicators (
|
||||||
|
// CONNECTION_INDICATOR_AUTO_HIDE_ENABLED,
|
||||||
|
// CONNECTION_INDICATOR_AUTO_HIDE_TIMEOUT,
|
||||||
|
// CONNECTION_INDICATOR_DISABLED) got moved to config.js.
|
||||||
|
|
||||||
|
// Please use disableModeratorIndicator from config.js
|
||||||
|
// DISABLE_FOCUS_INDICATOR: false,
|
||||||
|
|
||||||
|
// Please use defaultLocalDisplayName from config.js
|
||||||
|
// DEFAULT_LOCAL_DISPLAY_NAME: 'me',
|
||||||
|
|
||||||
|
// Please use defaultRemoteDisplayName from config.js
|
||||||
|
// DEFAULT_REMOTE_DISPLAY_NAME: 'Fellow Jitster',
|
||||||
|
|
||||||
|
// Moved to config.js as `toolbarConfig.initialTimeout`.
|
||||||
|
// INITIAL_TOOLBAR_TIMEOUT: 20000,
|
||||||
|
|
||||||
|
// Moved to config.js as `toolbarConfig.alwaysVisible`.
|
||||||
|
// TOOLBAR_ALWAYS_VISIBLE: false,
|
||||||
|
|
||||||
|
// This config was moved to config.js as `toolbarButtons`.
|
||||||
|
// TOOLBAR_BUTTONS: [],
|
||||||
|
|
||||||
|
// Moved to config.js as `toolbarConfig.timeout`.
|
||||||
|
// TOOLBAR_TIMEOUT: 4000,
|
||||||
|
|
||||||
// Allow all above example options to include a trailing comma and
|
// Allow all above example options to include a trailing comma and
|
||||||
// prevent fear when commenting out the last value.
|
// prevent fear when commenting out the last value.
|
||||||
// eslint-disable-next-line sort-keys
|
// eslint-disable-next-line sort-keys
|
||||||
|
|
|
@ -2,6 +2,14 @@
|
||||||
|
|
||||||
# shellcheck disable=SC2034 # This is intended to be included
|
# shellcheck disable=SC2034 # This is intended to be included
|
||||||
JITSI_NGINX_CONFIG="$(cat <<EOF
|
JITSI_NGINX_CONFIG="$(cat <<EOF
|
||||||
|
# Jitsi uses following lines by default, in our cdist types they must be commented
|
||||||
|
# out as we already set it with __jitsi_meet in the default server config.
|
||||||
|
#server_names_hash_bucket_size 64;
|
||||||
|
#
|
||||||
|
#types {
|
||||||
|
## nginx's default mime.types doesn't include a mapping for wasm
|
||||||
|
# application/wasm wasm;
|
||||||
|
#}
|
||||||
server {
|
server {
|
||||||
listen 80;
|
listen 80;
|
||||||
listen [::]:80;
|
listen [::]:80;
|
||||||
|
@ -30,6 +38,7 @@ server {
|
||||||
ssl_session_tickets off;
|
ssl_session_tickets off;
|
||||||
|
|
||||||
add_header Strict-Transport-Security "max-age=63072000" always;
|
add_header Strict-Transport-Security "max-age=63072000" always;
|
||||||
|
set \$prefix "";
|
||||||
|
|
||||||
ssl_certificate /etc/letsencrypt/live/${DOMAIN}/fullchain.pem;
|
ssl_certificate /etc/letsencrypt/live/${DOMAIN}/fullchain.pem;
|
||||||
ssl_certificate_key /etc/letsencrypt/live/${DOMAIN}/privkey.pem;
|
ssl_certificate_key /etc/letsencrypt/live/${DOMAIN}/privkey.pem;
|
||||||
|
@ -85,7 +94,9 @@ server {
|
||||||
|
|
||||||
# BOSH
|
# BOSH
|
||||||
location = /http-bind {
|
location = /http-bind {
|
||||||
proxy_pass http://localhost:5280/http-bind;
|
# We are using 127.0.0.1, because we are not specifying a resolver
|
||||||
|
# otherwise nginx will fail to resolve 'localhost'
|
||||||
|
proxy_pass http://127.0.0.1:5280/http-bind?prefix=\$prefix&\$args;
|
||||||
proxy_set_header X-Forwarded-For \$remote_addr;
|
proxy_set_header X-Forwarded-For \$remote_addr;
|
||||||
# Prevision for 'multi-domain' jitsi instances
|
# Prevision for 'multi-domain' jitsi instances
|
||||||
# https://community.jitsi.org/t/same-jitsi-meet-instance-with-multiple-domain-names/17391
|
# https://community.jitsi.org/t/same-jitsi-meet-instance-with-multiple-domain-names/17391
|
||||||
|
@ -113,6 +124,15 @@ server {
|
||||||
tcp_nodelay on;
|
tcp_nodelay on;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# load test minimal client, uncomment when used
|
||||||
|
#location ~ ^/_load-test/([^/?&:'"]+)\$ {
|
||||||
|
# rewrite ^/_load-test/(.*)\$ /load-test/index.html break;
|
||||||
|
#}
|
||||||
|
#location ~ ^/_load-test/libs/(.*)\$ {
|
||||||
|
# add_header 'Access-Control-Allow-Origin' '*';
|
||||||
|
# alias /usr/share/jitsi-meet/load-test/libs/\$1;
|
||||||
|
#}
|
||||||
|
|
||||||
location ~ ^/([^/?&:'"]+)\$ {
|
location ~ ^/([^/?&:'"]+)\$ {
|
||||||
try_files \$uri @root_path;
|
try_files \$uri @root_path;
|
||||||
}
|
}
|
||||||
|
@ -129,13 +149,6 @@ server {
|
||||||
alias /etc/jitsi/meet/jitsi-meet.example.com-config.js;
|
alias /etc/jitsi/meet/jitsi-meet.example.com-config.js;
|
||||||
}
|
}
|
||||||
|
|
||||||
#Anything that didn't match above, and isn't a real file, assume it's a room name and redirect to /
|
|
||||||
location ~ ^/([^/?&:'"]+)/(.*)\$ {
|
|
||||||
set \$subdomain "\$1.";
|
|
||||||
set \$subdir "\$1/";
|
|
||||||
rewrite ^/([^/?&:'"]+)/(.*)\$ /\$2;
|
|
||||||
}
|
|
||||||
|
|
||||||
# BOSH for subdomains
|
# BOSH for subdomains
|
||||||
location ~ ^/([^/?&:'"]+)/http-bind {
|
location ~ ^/([^/?&:'"]+)/http-bind {
|
||||||
set \$subdomain "\$1.";
|
set \$subdomain "\$1.";
|
||||||
|
@ -153,6 +166,13 @@ server {
|
||||||
|
|
||||||
rewrite ^/(.*)\$ /xmpp-websocket;
|
rewrite ^/(.*)\$ /xmpp-websocket;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# Anything that didn't match above, and isn't a real file, assume it's a room name and redirect to /
|
||||||
|
location ~ ^/([^/?&:'"]+)/(.*)\$ {
|
||||||
|
set \$subdomain "\$1.";
|
||||||
|
set \$subdir "\$1/";
|
||||||
|
rewrite ^/([^/?&:'"]+)/(.*)\$ /\$2;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
EOF
|
EOF
|
||||||
)"
|
)"
|
||||||
|
|
|
@ -1,5 +1,9 @@
|
||||||
server_names_hash_bucket_size 64;
|
server_names_hash_bucket_size 64;
|
||||||
|
|
||||||
|
types {
|
||||||
|
# nginx's default mime.types doesn't include a mapping for wasm
|
||||||
|
application/wasm wasm;
|
||||||
|
}
|
||||||
server {
|
server {
|
||||||
listen 80;
|
listen 80;
|
||||||
listen [::]:80;
|
listen [::]:80;
|
||||||
|
@ -31,6 +35,7 @@ server {
|
||||||
ssl_session_tickets off;
|
ssl_session_tickets off;
|
||||||
|
|
||||||
add_header Strict-Transport-Security "max-age=63072000" always;
|
add_header Strict-Transport-Security "max-age=63072000" always;
|
||||||
|
set $prefix "";
|
||||||
|
|
||||||
ssl_certificate /etc/jitsi/meet/jitsi-meet.example.com.crt;
|
ssl_certificate /etc/jitsi/meet/jitsi-meet.example.com.crt;
|
||||||
ssl_certificate_key /etc/jitsi/meet/jitsi-meet.example.com.key;
|
ssl_certificate_key /etc/jitsi/meet/jitsi-meet.example.com.key;
|
||||||
|
@ -72,7 +77,7 @@ server {
|
||||||
|
|
||||||
# BOSH
|
# BOSH
|
||||||
location = /http-bind {
|
location = /http-bind {
|
||||||
proxy_pass http://localhost:5280/http-bind;
|
proxy_pass http://127.0.0.1:5280/http-bind?prefix=$prefix&$args;
|
||||||
proxy_set_header X-Forwarded-For $remote_addr;
|
proxy_set_header X-Forwarded-For $remote_addr;
|
||||||
proxy_set_header Host $http_host;
|
proxy_set_header Host $http_host;
|
||||||
}
|
}
|
||||||
|
@ -96,6 +101,15 @@ server {
|
||||||
tcp_nodelay on;
|
tcp_nodelay on;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# load test minimal client, uncomment when used
|
||||||
|
#location ~ ^/_load-test/([^/?&:'"]+)$ {
|
||||||
|
# rewrite ^/_load-test/(.*)$ /load-test/index.html break;
|
||||||
|
#}
|
||||||
|
#location ~ ^/_load-test/libs/(.*)$ {
|
||||||
|
# add_header 'Access-Control-Allow-Origin' '*';
|
||||||
|
# alias /usr/share/jitsi-meet/load-test/libs/$1;
|
||||||
|
#}
|
||||||
|
|
||||||
location ~ ^/([^/?&:'"]+)$ {
|
location ~ ^/([^/?&:'"]+)$ {
|
||||||
try_files $uri @root_path;
|
try_files $uri @root_path;
|
||||||
}
|
}
|
||||||
|
@ -112,13 +126,6 @@ server {
|
||||||
alias /etc/jitsi/meet/jitsi-meet.example.com-config.js;
|
alias /etc/jitsi/meet/jitsi-meet.example.com-config.js;
|
||||||
}
|
}
|
||||||
|
|
||||||
#Anything that didn't match above, and isn't a real file, assume it's a room name and redirect to /
|
|
||||||
location ~ ^/([^/?&:'"]+)/(.*)$ {
|
|
||||||
set $subdomain "$1.";
|
|
||||||
set $subdir "$1/";
|
|
||||||
rewrite ^/([^/?&:'"]+)/(.*)$ /$2;
|
|
||||||
}
|
|
||||||
|
|
||||||
# BOSH for subdomains
|
# BOSH for subdomains
|
||||||
location ~ ^/([^/?&:'"]+)/http-bind {
|
location ~ ^/([^/?&:'"]+)/http-bind {
|
||||||
set $subdomain "$1.";
|
set $subdomain "$1.";
|
||||||
|
@ -136,4 +143,11 @@ server {
|
||||||
|
|
||||||
rewrite ^/(.*)$ /xmpp-websocket;
|
rewrite ^/(.*)$ /xmpp-websocket;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# Anything that didn't match above, and isn't a real file, assume it's a room name and redirect to /
|
||||||
|
location ~ ^/([^/?&:'"]+)/(.*)$ {
|
||||||
|
set $subdomain "$1.";
|
||||||
|
set $subdir "$1/";
|
||||||
|
rewrite ^/([^/?&:'"]+)/(.*)$ /$2;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue