forked from extern/docker
523 lines
14 KiB
YAML
523 lines
14 KiB
YAML
public:
|
|
app:
|
|
mobileFontSize: 16px
|
|
desktopFontSize: 14px
|
|
audioChatNotification: false
|
|
autoJoin: true
|
|
listenOnlyMode: {{ .Env.LISTEN_ONLY_MODE }}
|
|
forceListenOnly: false
|
|
skipCheck: {{ .Env.DISABLE_ECHO_TEST }}
|
|
clientTitle: {{ .Env.CLIENT_TITLE }}
|
|
appName: BigBlueButton HTML5 Client
|
|
bbbServerVersion: 2.2
|
|
copyright: "©2020 BigBlueButton Inc."
|
|
html5ClientBuild: 1114
|
|
helpLink: https://bigbluebutton.org/html5/
|
|
lockOnJoin: true
|
|
cdn: ""
|
|
basename: "/html5client"
|
|
askForFeedbackOnLogout: false
|
|
# the default logoutUrl matches window.location.origin i.e. bigbluebutton.org for demo.bigbluebutton.org
|
|
# in some cases we want only custom logoutUrl to be used when provided on meeting create. Default value: true
|
|
allowDefaultLogoutUrl: true
|
|
allowUserLookup: false
|
|
enableNetworkInformation: false
|
|
enableLimitOfViewersInWebcam: false
|
|
enableMultipleCameras: false
|
|
enableTalkingIndicator: true
|
|
mirrorOwnWebcam: false
|
|
viewersInWebcam: 8
|
|
ipv4FallbackDomain: ""
|
|
allowLogout: true
|
|
allowFullscreen: true
|
|
remainingTimeThreshold: 30
|
|
remainingTimeAlertThreshold: 1
|
|
# Warning: increasing the limit of breakout rooms per meeting
|
|
# can generate excessive overhead to the server. We recommend
|
|
# this value to be kept under 12.
|
|
breakoutRoomLimit: {{ .Env.BREAKOUTROOM_LIMIT }}
|
|
# https://github.com/bigbluebutton/bigbluebutton/pull/10826
|
|
customHeartbeat: true
|
|
defaultSettings:
|
|
application:
|
|
animations: true
|
|
chatAudioAlerts: false
|
|
chatPushAlerts: false
|
|
userJoinAudioAlerts: false
|
|
userJoinPushAlerts: false
|
|
raiseHandAudioAlerts: false
|
|
raiseHandPushAlerts: false
|
|
fallbackLocale: en
|
|
overrideLocale: null
|
|
audio:
|
|
inputDeviceId: undefined
|
|
outputDeviceId: undefined
|
|
dataSaving:
|
|
viewParticipantsWebcams: true
|
|
viewScreenshare: true
|
|
shortcuts:
|
|
openOptions:
|
|
accesskey: O
|
|
descId: openOptions
|
|
toggleUserList:
|
|
accesskey: U
|
|
descId: toggleUserList
|
|
toggleMute:
|
|
accesskey: M
|
|
descId: toggleMute
|
|
joinAudio:
|
|
accesskey: J
|
|
descId: joinAudio
|
|
leaveAudio:
|
|
accesskey: L
|
|
descId: leaveAudio
|
|
togglePublicChat:
|
|
accesskey: P
|
|
descId: togglePublicChat
|
|
hidePrivateChat:
|
|
accesskey: H
|
|
descId: hidePrivateChat
|
|
closePrivateChat:
|
|
accesskey: G
|
|
descId: closePrivateChat
|
|
openActions:
|
|
accesskey: A
|
|
descId: openActions
|
|
branding:
|
|
displayBrandingArea: false
|
|
connectionTimeout: 60000
|
|
showHelpButton: true
|
|
effectiveConnection:
|
|
- critical
|
|
- danger
|
|
- warning
|
|
externalVideoPlayer:
|
|
enabled: true
|
|
networkMonitoring:
|
|
enableNetworkMonitoring: false
|
|
packetLostThreshold: 10
|
|
kurento:
|
|
wsUrl: wss://{{ .Env.DOMAIN }}/bbb-webrtc-sfu
|
|
chromeDefaultExtensionKey: akgoaoikmbmhcopjgakkcepdgdgkjfbc
|
|
chromeDefaultExtensionLink: https://chrome.google.com/webstore/detail/bigbluebutton-screenshare/akgoaoikmbmhcopjgakkcepdgdgkjfbc
|
|
chromeExtensionKey: KEY
|
|
chromeExtensionLink: LINK
|
|
screenshare:
|
|
constraints:
|
|
video:
|
|
frameRate:
|
|
ideal: 5
|
|
max: 10
|
|
width:
|
|
max: 2560
|
|
height:
|
|
max: 1600
|
|
audio: false
|
|
chromeScreenshareSources:
|
|
- window
|
|
- screen
|
|
firefoxScreenshareSource: window
|
|
# cameraProfiles is an array of:
|
|
# - id: profile identifier
|
|
# name: human-readable profile name
|
|
# bitrate
|
|
# hidden: whether this profile will be hidden in the video preview dropdown
|
|
# constraints: a video media constraints dictionary (without the video key)
|
|
cameraProfiles:
|
|
- id: low-u30
|
|
name: low-u30
|
|
bitrate: 30
|
|
hidden: true
|
|
constraints:
|
|
frameRate: 3
|
|
- id: low-u25
|
|
name: low-u25
|
|
bitrate: 40
|
|
hidden: true
|
|
constraints:
|
|
frameRate: 3
|
|
- id: low-u20
|
|
name: low-u20
|
|
bitrate: 50
|
|
hidden: true
|
|
constraints:
|
|
frameRate: 5
|
|
- id: low-u15
|
|
name: low-u15
|
|
bitrate: 70
|
|
hidden: true
|
|
constraints:
|
|
frameRate: 8
|
|
- id: low-u12
|
|
name: low-u12
|
|
bitrate: 90
|
|
hidden: true
|
|
constraints:
|
|
frameRate: 10
|
|
- id: low-u8
|
|
name: low-u8
|
|
bitrate: 100
|
|
hidden: true
|
|
constraints:
|
|
frameRate: 10
|
|
- id: low
|
|
name: Low
|
|
default: false
|
|
bitrate: 100
|
|
- id: medium
|
|
name: Medium
|
|
default: true
|
|
bitrate: 200
|
|
- id: high
|
|
name: High
|
|
default: false
|
|
bitrate: 500
|
|
- id: hd
|
|
name: High definition
|
|
default: false
|
|
bitrate: 800
|
|
enableScreensharing: true
|
|
enableVideo: true
|
|
enableVideoMenu: true
|
|
enableListenOnly: true
|
|
autoShareWebcam: {{ .Env.AUTO_SHARE_WEBCAM }}
|
|
skipVideoPreview: {{ .Env.DISABLE_VIDEO_PREVIEW }}
|
|
# Entry `thresholds` is an array of:
|
|
# - threshold: minimum number of cameras being shared for profile to applied
|
|
# profile: a camera profile id from the cameraProfiles configuration array
|
|
# that will be applied to all cameras when threshold is hit
|
|
cameraQualityThresholds:
|
|
enabled: true
|
|
thresholds:
|
|
- threshold: 8
|
|
profile: low-u8
|
|
- threshold: 12
|
|
profile: low-u12
|
|
- threshold: 15
|
|
profile: low-u15
|
|
- threshold: 20
|
|
profile: low-u20
|
|
- threshold: 25
|
|
profile: low-u25
|
|
- threshold: 30
|
|
profile: low-u30
|
|
pagination:
|
|
# whether to globally enable or disable pagination.
|
|
enabled: false
|
|
# how long (in ms) the negotiation will be debounced after a page change.
|
|
pageChangeDebounceTime: 2500
|
|
# video page sizes for DESKTOP endpoints. It stands for the number of SUBSCRIBER streams.
|
|
# PUBLISHERS aren't accounted for .
|
|
# A page size of 0 (zero) means that the page size is unlimited (disabled).
|
|
desktopPageSizes:
|
|
moderator: 0
|
|
viewer: 5
|
|
# video page sizes for MOBILE endpoints
|
|
mobilePageSizes:
|
|
moderator: 2
|
|
viewer: 2
|
|
pingPong:
|
|
clearUsersInSeconds: 180
|
|
pongTimeInSeconds: 15
|
|
allowOutsideCommands:
|
|
toggleRecording: true
|
|
toggleSelfVoice: false
|
|
poll:
|
|
enabled: true
|
|
max_custom: 5
|
|
captions:
|
|
enabled: true
|
|
enableDictation: false
|
|
backgroundColor: "#000000"
|
|
fontColor: "#FFFFFF"
|
|
fontFamily: Calibri
|
|
fontSize: 24px
|
|
takeOwnership: true
|
|
lines: 2
|
|
time: 5000
|
|
chat:
|
|
enabled: {{ .Env.CHAT_ENABLED }}
|
|
bufferChatInsertsMs: 0
|
|
startClosed: {{ .Env.CHAT_START_CLOSED }}
|
|
min_message_length: 1
|
|
max_message_length: 5000
|
|
grouping_messages_window: 10000
|
|
type_system: SYSTEM_MESSAGE
|
|
type_public: PUBLIC_ACCESS
|
|
type_private: PRIVATE_ACCESS
|
|
system_userid: SYSTEM_MESSAGE
|
|
system_username: SYSTEM_MESSAGE
|
|
public_id: public
|
|
public_group_id: MAIN-PUBLIC-GROUP-CHAT
|
|
public_userid: public_chat_userid
|
|
public_username: public_chat_username
|
|
storage_key: UNREAD_CHATS
|
|
system_messages_keys:
|
|
chat_clear: PUBLIC_CHAT_CLEAR
|
|
typingIndicator:
|
|
enabled: true
|
|
note:
|
|
enabled: true
|
|
url: https://{{ .Env.DOMAIN }}/pad
|
|
config:
|
|
showLineNumbers: false
|
|
showChat: false
|
|
noColors: true
|
|
showControls: true
|
|
rtl: false
|
|
layout:
|
|
autoSwapLayout: false
|
|
hidePresentation: false
|
|
webcamsDefaultPlacement: "top"
|
|
media:
|
|
stunTurnServersFetchAddress: "/bigbluebutton/api/stuns"
|
|
cacheStunTurnServers: true
|
|
fallbackStunServer: ''
|
|
recvonlyIceGatheringCheck: true
|
|
mediaTag: "#remote-media"
|
|
callTransferTimeout: 5000
|
|
callHangupTimeout: 2000
|
|
callHangupMaximumRetries: 10
|
|
echoTestNumber: 'echo'
|
|
relayOnlyOnReconnect: false
|
|
listenOnlyCallTimeout: 25000
|
|
#Timeout (ms) for gathering ICE candidates. When this timeout expires
|
|
#the SDP is sent to the server with the candidates the browser gathered
|
|
#so far. Increasing this value might help avoiding 1004 error when
|
|
#user activates microphone.
|
|
iceGatheringTimeout: 5000
|
|
sipjsHackViaWs: true
|
|
#Websocket keepAlive interval (seconds). You may set this to prevent
|
|
#websocket disconnection in some environments. When set, BBB will send
|
|
#'\r\n\r\n' string through SIP.js's websocket. If not set, default value
|
|
#is 0.
|
|
websocketKeepAliveInterval: 30
|
|
#Debounce time (seconds) for sending SIP.js's websocket keep alive message.
|
|
#If not set, default value is 10.
|
|
websocketKeepAliveDebounce: 10
|
|
#Trace sip/audio messages in browser. If not set, default value is false.
|
|
traceSip: false
|
|
stats:
|
|
enabled: true
|
|
interval: 2000
|
|
length: 5
|
|
log: false
|
|
jitter:
|
|
- 10
|
|
- 20
|
|
- 30
|
|
loss:
|
|
- 0.05
|
|
- 0.1
|
|
- 0.2
|
|
level:
|
|
- warning
|
|
- danger
|
|
- critical
|
|
help: STATS_HELP_URL
|
|
presentation:
|
|
allowDownloadable: true
|
|
defaultPresentationFile: default.pdf
|
|
panZoomThrottle: 32
|
|
restoreOnUpdate: false
|
|
uploadEndpoint: "/bigbluebutton/presentation/upload"
|
|
uploadSizeMin: 0
|
|
uploadSizeMax: 50000000
|
|
uploadValidMimeTypes:
|
|
- extension: .pdf
|
|
mime: application/pdf
|
|
- extension: .doc
|
|
mime: application/msword
|
|
- extension: .docx
|
|
mime: application/vnd.openxmlformats-officedocument.wordprocessingml.document
|
|
- extension: .xls
|
|
mime: application/vnd.ms-excel
|
|
- extension: .xlsx
|
|
mime: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
|
|
- extension: .ppt
|
|
mime: application/vnd.ms-powerpoint
|
|
- extension: .pptx
|
|
mime: application/vnd.openxmlformats-officedocument.presentationml.presentation
|
|
- extension: .txt
|
|
mime: text/plain
|
|
- extension: .rtf
|
|
mime: application/rtf
|
|
- extension: .odt
|
|
mime: application/vnd.oasis.opendocument.text
|
|
- extension: .ods
|
|
mime: application/vnd.oasis.opendocument.spreadsheet
|
|
- extension: .odp
|
|
mime: application/vnd.oasis.opendocument.presentation
|
|
- extension: .odg
|
|
mime: application/vnd.oasis.opendocument.graphics
|
|
- extension: .odc
|
|
mime: application/vnd.oasis.opendocument.chart
|
|
- extension: .odi
|
|
mime: application/vnd.oasis.opendocument.image
|
|
- extension: .jpg
|
|
mime: image/jpeg
|
|
- extension: .jpeg
|
|
mime: image/jpeg
|
|
- extension: .png
|
|
mime: image/png
|
|
user:
|
|
role_moderator: MODERATOR
|
|
role_viewer: VIEWER
|
|
whiteboard:
|
|
annotations:
|
|
status:
|
|
start: DRAW_START
|
|
update: DRAW_UPDATE
|
|
end: DRAW_END
|
|
toolbar:
|
|
multiUserPenOnly: false
|
|
colors:
|
|
- label: black
|
|
value: "#000000"
|
|
- label: white
|
|
value: "#ffffff"
|
|
- label: red
|
|
value: "#ff0000"
|
|
- label: orange
|
|
value: "#ff8800"
|
|
- label: eletricLime
|
|
value: "#ccff00"
|
|
- label: Lime
|
|
value: "#00ff00"
|
|
- label: Cyan
|
|
value: "#00ffff"
|
|
- label: dodgerBlue
|
|
value: "#0088ff"
|
|
- label: blue
|
|
value: "#0000ff"
|
|
- label: violet
|
|
value: "#8800ff"
|
|
- label: magenta
|
|
value: "#ff00ff"
|
|
- label: silver
|
|
value: "#c0c0c0"
|
|
thickness:
|
|
- value: 14
|
|
- value: 12
|
|
- value: 10
|
|
- value: 8
|
|
- value: 6
|
|
- value: 4
|
|
- value: 2
|
|
- value: 1
|
|
font_sizes:
|
|
- value: 36
|
|
- value: 32
|
|
- value: 28
|
|
- value: 24
|
|
- value: 20
|
|
- value: 16
|
|
tools:
|
|
- icon: text_tool
|
|
value: text
|
|
- icon: line_tool
|
|
value: line
|
|
- icon: circle_tool
|
|
value: ellipse
|
|
- icon: triangle_tool
|
|
value: triangle
|
|
- icon: rectangle_tool
|
|
value: rectangle
|
|
- icon: pen_tool
|
|
value: pencil
|
|
- icon: hand
|
|
value: hand
|
|
presenterTools:
|
|
- text
|
|
- line
|
|
- ellipse
|
|
- triangle
|
|
- rectangle
|
|
- pencil
|
|
- hand
|
|
multiUserTools:
|
|
- text
|
|
- line
|
|
- ellipse
|
|
- triangle
|
|
- rectangle
|
|
- pencil
|
|
- hand
|
|
clientLog:
|
|
server: { enabled: false, level: info }
|
|
console: { enabled: true, level: debug }
|
|
external: { enabled: false, level: info, url: https://LOG_HOST/html5Log, method: POST, throttleInterval: 400, flushOnClose: true, logTag: "" }
|
|
private:
|
|
app:
|
|
host: 0.0.0.0
|
|
port: 3000
|
|
localesUrl: /locales
|
|
pencilChunkLength: 100
|
|
loadSlidesFromHttpAlways: false
|
|
etherpad:
|
|
apikey: {{ .Env.ETHERPAD_API_KEY }}
|
|
version: 1.2.13
|
|
host: etherpad
|
|
port: 9001
|
|
redis:
|
|
host: redis
|
|
port: '6379'
|
|
timeout: 5000
|
|
password: null
|
|
debug: false
|
|
metrics:
|
|
queueMetrics: false
|
|
metricsDumpIntervalMs: 60000
|
|
metricsFolderPath: METRICS_FOLDER
|
|
removeMeetingOnEnd: true
|
|
channels:
|
|
toAkkaApps: to-akka-apps-redis-channel
|
|
toThirdParty: to-third-party-redis-channel
|
|
subscribeTo:
|
|
- to-html5-redis-channel
|
|
- from-akka-apps-*
|
|
- from-third-party-redis-channel
|
|
- from-etherpad-redis-channel
|
|
async:
|
|
- from-akka-apps-wb-redis-channel
|
|
ignored:
|
|
- CheckAlivePongSysMsg
|
|
- DoLatencyTracerMsg
|
|
serverLog:
|
|
level: info
|
|
streamerLog: false
|
|
memoryMonitoring:
|
|
stat:
|
|
enabled: false
|
|
leak:
|
|
enabled: false
|
|
heapdump:
|
|
enabled: false
|
|
heapdumpFolderPath: HEAPDUMP_FOLDER
|
|
heapdumpIntervalMs: 3600000
|
|
minBrowserVersions:
|
|
- browser: chrome
|
|
version: 72
|
|
- browser: chromeMobileIOS
|
|
version: Infinity
|
|
- browser: firefox
|
|
version: 63
|
|
- browser: firefoxMobile
|
|
version: 68
|
|
- browser: edge
|
|
version: 79
|
|
- browser: ie
|
|
version: Infinity
|
|
- browser: safari
|
|
version: [12, 1]
|
|
- browser: mobileSafari
|
|
version: [12, 1]
|
|
- browser: opera
|
|
version: 50
|
|
- browser: electron
|
|
version: [0, 36]
|
|
- browser: SamsungInternet
|
|
version: 10
|
|
- browser: YandexBrowser
|
|
version: 19
|