Version bump
This commit is contained in:
parent
210fada08c
commit
acf7859648
|
@ -1,7 +1,13 @@
|
|||
AUX config-1.0.692.example 998 BLAKE2B e239aeba7c1cee97a529a8a09a6abaa59db8dcae99e5b9c0f0c217d5dcfe42f8b7f00fb3ea9c05db109e5ef0a646f0de15f385d394117f014cac6783faa66603 SHA512 3861da6f912d47eefd64800175b0e63a67d196d0b6bfc18e5a68958c53d55f8eee8dc5f8cd70a660f0feade241487c5d2e9dc8644647a2699932741b31a35d5e
|
||||
AUX config.example 1155 BLAKE2B cd6df035d4794dafad63695b6b6e8359646c06dbac7ca1c2919e2bebfeeb61b7d74b120bacccf5346c39ceca995e2350926d4770515b38b364a63d2a607d10d1 SHA512 16db498c90bd4375ad7630f1f5d07bacc42cb3b3c7b0b0ed01e3b89c1111e5cd9afcd8f6a39b8b1745ae46ab588051c055316e1151acb3e1210826720896c30d
|
||||
AUX jicofo-1.0.692.service 628 BLAKE2B a683019d819fd63f911ed576a93d8bdb4ea92bd525125e59d5f1b11473992ece348e9f080614dbf256991ecebd016e43e76809df06426c782f7c611b32895b85 SHA512 1a38aa3506666139c00fda5d9d3549fb436e1d2747551feb2f544b35f321457a2658a5490c6026f1ef4a114a64a59ec34246d37e5f6b9b7625df8d7ec458d3a5
|
||||
AUX jicofo-i-1.0.692.service 640 BLAKE2B ee97539a8975fa5000a03c4258d3c235c5b66ba46725e49ca52b991f209771b5f32258edebd5df37b2a3ab2650f8da3cb43fcf15ed67c216085728f7c81e98f3 SHA512 39b783acf55cdc99ae682151b6db149015fdb5ee6ab4cc5c09e6ae8f89104ff06ff29ae4cc7108329c8386a7aacd316373f42c4c0cb8abd2d9210f2a84a39c5c
|
||||
AUX jicofo-i.service 688 BLAKE2B 20fcf15d7db8a42783f9800ba480babc73521daf14d314c69047155d00ea7f463287a6c2d0a8373ad0ffca006d80f89922a3167acdab5b6a38e8ec068b4b96ce SHA512 44710ac556ea1d203824e72964fb6bcbaf3959d6145491772e93d14ff13a784dfbc83fdf225a6a5363e88bbff939c1511b7b267c57159b168332fc1242688633
|
||||
AUX jicofo-init-1.0.692.d 1014 BLAKE2B 1a949db8c638795960e066412e01bc33d09427c374b6c15d2ce0ab9c198b7e6a94711ce77bb1edc2672beadb4a225b9d4695538e690cf910223b33a5782e2f73 SHA512 4766a39452bb1f62d8f86e90f2c3cc14aae4540445111a7276a7f563ff603e3fe60b453b7b77159a526c4f5a05cb20a9bd3ed1ad7fbca511b0c8b7efa421da18
|
||||
AUX jicofo-init.d 1058 BLAKE2B 32467d7085786efb52eedc16c59b7ab560d3bbbb122bc9fd7306368432f901e5da18f07df7c4f91157231e3c07fa9479065ea87a005e629d5aeeb80cc3f95441 SHA512 90bf80dd87eed14d2421ee5ce886768103ee09ae8940ff0f1e10d4020cda54d0080d6527fd5988014c8a1a4f869439c5d8e2305389a84f97bff43b810205cca8
|
||||
AUX jicofo.conf.example 142 BLAKE2B 40578c19110b466df3b97dcfab05e77836e708d35ac009ff1a48c493ac7e9b49b22105e4b2da5f8db61e56ff2bd93bbaead23e68f413b88393a80adeed00a2cf SHA512 d984c78e9ea7b9bf0b6531db3b24dca1d9dcf0693732b9807e6921084a763ab4c9d98c5b40eb058e588b2ca9b5600fcb534f53e4102731a7adc243cdaf60e39f
|
||||
AUX jicofo.service 676 BLAKE2B e92278434e80f0c9bbce47ed1df8609b2eb6a591f649be0af94a45dae308cbe0a62361466fe7422a7a6daa9c9be708767d92605dcd02f82f30fc63b1e47d990f SHA512 ba2b78105c318755960ec53c89780b6accdbd9e934308a9fe0e93128b55ccc77edd2e157ad1d90cc1a38cb6cc09c89f1fe8a0b929af09c340e18920faa6e98c6
|
||||
DIST jicofo_1.0-644-1_all.deb 38471940 BLAKE2B cf93692b888022546871ac55cc4c782d40c743c2dd062724d30d2f4134e7a01ed76bc62f189a252450609d4a9569c574e6f52cd3474af3e8365e25932574187d SHA512 f476e60f948acb4f7e34d6529e989a4d8acd3552107f9fa11d18847505c0257d4a38cd5c8d0b33eff50c8cd7af9fc42a6aca105a9bd712b666066cf8ade97940
|
||||
DIST jicofo_1.0-692-hf-1_all.deb 38709980 BLAKE2B 19ef9ee59a12e2816ffcf9e34bad59cda73cff9f726a5da1babd33aa0ff4e6238a043b7dda4763e3f85b50febc16973b06c023ad4720bc760a97d9bb9aead0ca SHA512 3b53e5e535c0a07ab7614127dfd074602fffbc633f079d5db06c4e33c93f48ea6113f3c8e9f43b771fb56aded80d57acb9b7b56348688f4afe53c7dd77e40ddf
|
||||
EBUILD jicofo-bin-1.0.644.ebuild 1544 BLAKE2B 7db7ddc02334689b5ebfe131316e352af7d9b349058014058b5d45d8e5c607d42a363b7d36da2e5a7ae878152db5a6338e0dc443bdbd8c360fa272ce02720535 SHA512 b2e6c618e5f8945bcf2b7a5cdff7ca5fc075ae2c666bf2f72e20fd73df658f41799316b2ecf42f0d20c52afaca1ef3aae9645c050d018a0f747c5266395a3cca
|
||||
EBUILD jicofo-bin-1.0.692.ebuild 1604 BLAKE2B 6367991ed0073c3ac422d17403502b019452575d7daddb5b4edf5e1a41c61702ee94bcd37f4b283acaeba728ab3dea01ca6b0b765b1ad27063dc02f70c8ccb1f SHA512 4e1eff9d93bc304ba4fc6170dccb48187c6f4d6b501819417d4b58244202fff694606ac9aafb9a19cb585e6af8c4af42b7382021460460a5ba4f85fecd54a8eb
|
||||
|
|
|
@ -0,0 +1,21 @@
|
|||
# Jitsi Conference Focus settings
|
||||
# sets the host name of the XMPP server
|
||||
JICOFO_HOST=localhost
|
||||
|
||||
# sets the XMPP domain (default: none)
|
||||
JICOFO_HOSTNAME=meet.example.com
|
||||
|
||||
# sets the XMPP domain name to use for XMPP user logins
|
||||
JICOFO_AUTH_DOMAIN=auth.meet.example.com
|
||||
|
||||
# sets the username to use for XMPP user logins
|
||||
JICOFO_AUTH_USER=focus
|
||||
|
||||
# sets the password to use for XMPP user logins
|
||||
JICOFO_AUTH_PASSWORD=secretfocus
|
||||
|
||||
# extra options to pass to the jicofo daemon
|
||||
JICOFO_OPTS=""
|
||||
|
||||
# adds java system props that are passed to jicofo (default are for home and logging config file)
|
||||
JAVA_SYS_PROPS="-Dconfig.file=/etc/jitsi/jicofo/jicofo.conf -Dnet.java.sip.communicator.SC_HOME_DIR_LOCATION=/etc/jitsi -Dnet.java.sip.communicator.SC_HOME_DIR_NAME=jicofo -Dnet.java.sip.communicator.SC_LOG_DIR_LOCATION=/var/log/jitsi -Djava.util.logging.config.file=/etc/jitsi/jicofo/logging.properties -Djavax.net.ssl.trustStore=/etc/ssl/certs/java/cacerts -Djavax.net.ssl.trustAnchors=/etc/ssl/certs/java/cacerts"
|
|
@ -0,0 +1,18 @@
|
|||
[Unit]
|
||||
Description=Jitsi conference Focus
|
||||
After=network.target
|
||||
|
||||
[Service]
|
||||
Restart=always
|
||||
EnvironmentFile=/etc/jitsi/jicofo/config
|
||||
Environment=LOGFILE=/var/log/jitsi/jicofo.log
|
||||
User=jicofo
|
||||
RuntimeDirectory=jicofo
|
||||
RuntimeDirectoryMode=0750
|
||||
PIDFile=/var/run/jicofo/jicofo.pid
|
||||
WorkingDirectory=/usr/share/jicofo
|
||||
ExecStart=/bin/bash -c "/usr/share/jicofo/jicofo.sh --host=${JICOFO_HOST} --domain=${JICOFO_HOSTNAME} --port=${JICOFO_PORT} --user_domain=${JICOFO_AUTH_DOMAIN} --user_password=${JICOFO_AUTH_PASSWORD} < /dev/null >> ${LOGFILE} 2>&1"
|
||||
ExecStartPost=/bin/bash -c "echo $MAINPID > /var/run/jicofo/jicofo.pid"
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
|
@ -0,0 +1,18 @@
|
|||
[Unit]
|
||||
Description=Jitsi conference Focus
|
||||
After=network.target
|
||||
|
||||
[Service]
|
||||
Restart=always
|
||||
EnvironmentFile=/etc/jitsi/jicofo.%i/config
|
||||
Environment=LOGFILE=/var/log/jitsi/jicofo-%i.log
|
||||
User=jicofo
|
||||
RuntimeDirectory=jicofo
|
||||
RuntimeDirectoryMode=0750
|
||||
PIDFile=/var/run/jicofo/jicofo-%i.pid
|
||||
WorkingDirectory=/usr/share/jicofo
|
||||
ExecStart=/bin/bash -c "/usr/share/jicofo/jicofo.sh --host=${JICOFO_HOST} --domain=${JICOFO_HOSTNAME} --port=${JICOFO_PORT} --user_domain=${JICOFO_AUTH_DOMAIN} --user_password=${JICOFO_AUTH_PASSWORD} < /dev/null >> ${LOGFILE} 2>&1"
|
||||
ExecStartPost=/bin/bash -c "echo $MAINPID > /var/run/jicofo/jicofo-%i.pid"
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
|
@ -0,0 +1,28 @@
|
|||
#!/sbin/openrc-run
|
||||
# Copyright 1999-2020 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License, v2 or later
|
||||
|
||||
# Include jicofo defaults if available
|
||||
if [ -f /etc/jitsi/jicofo/config ]; then
|
||||
. /etc/jitsi/jicofo/config
|
||||
fi
|
||||
# Assign default host if not configured
|
||||
if [ ! $JICOFO_HOST ]; then
|
||||
JICOFO_HOST=localhost
|
||||
fi
|
||||
|
||||
command="/usr/share/jicofo/jicofo.sh"
|
||||
command_args=" --host=$JICOFO_HOST --domain=$JICOFO_HOSTNAME --user_name=$JICOFO_AUTH_USER --user_domain=$JICOFO_AUTH_DOMAIN --user_password=$JICOFO_AUTH_PASSWORD $JICOFO_OPTS"
|
||||
|
||||
start_stop_daemon_args="--chdir /usr/share/jicofo --user jicofo:jitsi"
|
||||
start_stop_daemon_args="${start_stop_daemon_args} --stdout /var/log/jitsi/jicofo.log"
|
||||
start_stop_daemon_args="${start_stop_daemon_args} --stderr /var/log/jitsi/jicofo.log"
|
||||
start_stop_daemon_args="${start_stop_daemon_args} --env JAVA_SYS_PROPS=\"$JAVA_SYS_PROPS\""
|
||||
|
||||
required_dirs="/var/log/jitsi"
|
||||
pidfile="/run/jicofo.pid"
|
||||
command_background="true"
|
||||
|
||||
depend() {
|
||||
use net logger
|
||||
}
|
|
@ -0,0 +1,65 @@
|
|||
# Copyright 1999-2020 Unitas Network GmbH
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI="7"
|
||||
|
||||
inherit eutils systemd unpacker user
|
||||
|
||||
MY_PN=${PN/-bin/}
|
||||
MY_PV=$(ver_rs 2 '-')
|
||||
MY_EV="-hf-1"
|
||||
|
||||
DESCRIPTION="JItsi Meet COnference FOcus: a conference focus for Jitsi Meet application"
|
||||
HOMEPAGE="https://jitsi.org/"
|
||||
|
||||
SRC_URI_BASE="https://download.jitsi.org/stable"
|
||||
SRC_URI=${SRC_URI_BASE}/${MY_PN}_${MY_PV}${MY_EV}_all.deb
|
||||
|
||||
RESTRICT="mirror strip"
|
||||
|
||||
LICENSE="Apache-2.0"
|
||||
SLOT="0"
|
||||
KEYWORDS="amd64 x86"
|
||||
IUSE=""
|
||||
|
||||
DEPEND=""
|
||||
RDEPEND="virtual/jre"
|
||||
|
||||
S=${WORKDIR}
|
||||
|
||||
##QA_PREBUILT="*"
|
||||
|
||||
pkg_setup() {
|
||||
enewgroup jitsi
|
||||
enewuser jicofo -1 /bin/bash /usr/share/jicofo jitsi
|
||||
}
|
||||
|
||||
src_install() {
|
||||
insinto /etc/jitsi/jicofo/
|
||||
newins ${FILESDIR}/config-${PV}.example config.example
|
||||
doins ${FILESDIR}/jicofo.conf.example
|
||||
echo "org.jitsi.jicofo.BRIDGE_MUC=JvbRoom@conference.example.com" > etc/jitsi/jicofo/sip-communicator.properties.example
|
||||
|
||||
dodoc usr/share/doc/jicofo/README.Debian
|
||||
rm -rf usr/share/doc
|
||||
rm -rf etc/init.d
|
||||
|
||||
insinto /
|
||||
doins -r etc usr
|
||||
|
||||
keepdir /var/log/jitsi
|
||||
fowners root:jitsi /var/log/jitsi
|
||||
fperms 775 /var/log/jitsi
|
||||
|
||||
fowners -R jicofo:jitsi /usr/share/jicofo
|
||||
fperms 755 /usr/share/jicofo/collect-dump-logs.sh
|
||||
fperms 755 /usr/share/jicofo/jicofo.sh
|
||||
fowners -R jicofo:jitsi /etc/jitsi/jicofo
|
||||
fperms 750 /etc/jitsi/jicofo
|
||||
fperms 600 /etc/jitsi/jicofo/sip-communicator.properties.example
|
||||
|
||||
newinitd "${FILESDIR}/${MY_PN}-init-${PV}.d" "${MY_PN}"
|
||||
|
||||
systemd_newunit "${FILESDIR}"/${MY_PN}-${PV}.service ${MY_PN}.service
|
||||
systemd_newunit "${FILESDIR}"/${MY_PN}-i-${PV}.service ${MY_PN}@.service
|
||||
}
|
|
@ -1,4 +1,8 @@
|
|||
AUX meet.example.com-config-1.0.4628.js 32385 BLAKE2B 8ecc1cfbf8788ab54c852e0154d068e049413754ef8ac8f17bcab57174992b94e19301c88819970ea6c7ba9ff1a2f4b3b686b2bcc9147c5303d196f40c98deb6 SHA512 409530290f4c663355c791f4260953c8c1af3ae0890f93941bcbf75449fbea850051a255f26f004f8d3eaa0c8d4b98f38930e780b1fec70e767e7d1224ddcf40
|
||||
AUX meet.example.com-config.js 27299 BLAKE2B 2f66750b918497960b415236e5a6e1f45c07725a7b2c0512e5ee0dfc672b610b8892eb4c2f124f51bd074d3a05d89e8e16f31fbb0c4558fbcb6c5db55efe4014 SHA512 c32776448cddfb3dccbbfaa61b6789cbed5f0a081d2df65197163b1c600907526b87536ec8486d9d06c2bc74f91806e0000fd524ff63984cf9e447d775c3db1f
|
||||
AUX nginx-jitsi-meet-1.0.4628.example 4101 BLAKE2B c887a3c09ad603bbe283c89f9f57125830c7a3b10612d2291864642c7994fea2aced90fd1c542d5bde5b9b7e39b8d24c76f955e30a17320a497e0e6b508f0871 SHA512 2e988dc3134087a18091bba9a6fdbd61fb11f46e3d23c8631118bd867cf53a0af86231d27153371f6a79070b288fc9b3c17942f704e014cc2728a6c6da2cbcd7
|
||||
AUX nginx-jitsi-meet.example 4080 BLAKE2B 07bd9f0bb00bfadfd0672fe0daa4b22f3bcaf0c0d81344a921963231e2de542c0d6afd1d7294badfa5f704eecd885df86a724b6e2127a1e36646bb1d9cc48983 SHA512 5f71c6bda56779ceb6848ba22a95949ef3e941fdd6ea66f6f25e0a016c5c7f21ce0fcad96a31931751a893c260b6335ceab77a5cbb5c3c46d7c0e21db310271e
|
||||
DIST jitsi-meet-web_1.0.4466-1_all.deb 7166032 BLAKE2B beb10469bfa3156227e3306b8c8a29a07f3ac0acd4e317430b3b831b6a1da47a263bdaa4c6f9ae577e65a3df5aa9ced23e1effefc4c633ae0028e7fec2268dea SHA512 b7101095b7fabfb9c6feb3eccd293930872382357fe81b1aa8c98752ae44318fa69aed364735e1c5be12b52debddc1762e7cf0db307a650b6fd031b9561cc80d
|
||||
DIST jitsi-meet-web_1.0.4628-1_all.deb 7682636 BLAKE2B af69b94a23163ef144c5baa916630855142eafd1728d901662e797b633d16e7267525fa7ba606e5361445879d1dcae7858cd19a770fca48440bfe493af3f9acd SHA512 878ece98e51d4f2614912b1c38c3ca405ddcb4afca3710d744437433f4d0bb442068a4d2d071568d7d472a1e6d721fa238a6331fe911a7cf983152f9ac1fb8fa
|
||||
EBUILD jitsi-meet-web-bin-1.0.4466.ebuild 881 BLAKE2B a6b44c581229df30c450abe377a5274cb860e5237781d9b7a0780cd813e27bf8a579bb40228728f3f16b95ff7d96f80a43de43a242d32fdb421757bbdc0a62c7 SHA512 08ea5cc3bcd4d33c4d220c87be37b8f236ace5c4ae2bd964804069c8ed99ea0cd2ba3de0b37d5c7d1e507ac283134cba4d69455420b74fce07a8051515dffe0f
|
||||
EBUILD jitsi-meet-web-bin-1.0.4628.ebuild 947 BLAKE2B 8c32fd51636319fac07c786eb6e3ef259b01e51984ebb8ac1caced2476f9d6745d0d7965c34526e13b4c6b105139bbc0202870ac36c028d44d3d6fd9f83d4004 SHA512 c61298839899fa1c8f298373408c2b9db07ceef44d89f9893847a8fb68af867ad05550854732afc73779b250856fcc87dcc3dca6ddf638f1b3ec8dab0cc0ff07
|
||||
|
|
|
@ -0,0 +1,773 @@
|
|||
/* eslint-disable no-unused-vars, no-var */
|
||||
|
||||
var config = {
|
||||
// Connection
|
||||
//
|
||||
|
||||
hosts: {
|
||||
// XMPP domain.
|
||||
domain: 'jitsi-meet.example.com',
|
||||
|
||||
// When using authentication, domain for guest users.
|
||||
// anonymousdomain: 'guest.example.com',
|
||||
|
||||
// Domain for authenticated users. Defaults to <domain>.
|
||||
// authdomain: 'jitsi-meet.example.com',
|
||||
|
||||
// Focus component domain. Defaults to focus.<domain>.
|
||||
// focus: 'focus.jitsi-meet.example.com',
|
||||
|
||||
// XMPP MUC domain. FIXME: use XEP-0030 to discover it.
|
||||
muc: 'conference.jitsi-meet.example.com'
|
||||
},
|
||||
|
||||
// BOSH URL. FIXME: use XEP-0156 to discover it.
|
||||
bosh: '//jitsi-meet.example.com/http-bind',
|
||||
|
||||
// Websocket URL
|
||||
// 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
|
||||
// Do not change username - FIXME: Make focus username configurable
|
||||
// https://github.com/jitsi/jitsi-meet/issues/7376
|
||||
// focusUserJid: 'focus@auth.jitsi-meet.example.com',
|
||||
|
||||
|
||||
// Testing / experimental features.
|
||||
//
|
||||
|
||||
testing: {
|
||||
// Disables the End to End Encryption feature. Useful for debugging
|
||||
// issues related to insertable streams.
|
||||
// disableE2EE: false,
|
||||
|
||||
// P2P test mode disables automatic switching to P2P when there are 2
|
||||
// participants in the conference.
|
||||
p2pTestMode: false
|
||||
|
||||
// Enables the test specific features consumed by jitsi-meet-torture
|
||||
// testMode: false
|
||||
|
||||
// Disables the auto-play behavior of *all* newly created video element.
|
||||
// This is useful when the client runs on a host with limited resources.
|
||||
// noAutoPlayVideo: false
|
||||
|
||||
// Enable / disable 500 Kbps bitrate cap on desktop tracks. When enabled,
|
||||
// simulcast is turned off for the desktop share. If presenter is turned
|
||||
// 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
|
||||
// the probability for this to be enabled.
|
||||
// capScreenshareBitrate: 1 // 0 to disable
|
||||
|
||||
// Enable callstats only for a percentage of users.
|
||||
// This takes a value between 0 and 100 which determines the probability for
|
||||
// the callstats to be enabled.
|
||||
// callStatsThreshold: 5 // enable callstats for 5% of the users.
|
||||
},
|
||||
|
||||
// Disables ICE/UDP by filtering out local and remote UDP candidates in
|
||||
// signalling.
|
||||
// webrtcIceUdpDisable: false,
|
||||
|
||||
// Disables ICE/TCP by filtering out local and remote TCP candidates in
|
||||
// signalling.
|
||||
// webrtcIceTcpDisable: false,
|
||||
|
||||
|
||||
// Media
|
||||
//
|
||||
|
||||
// Audio
|
||||
|
||||
// Disable measuring of audio levels.
|
||||
// disableAudioLevels: false,
|
||||
// audioLevelsInterval: 200,
|
||||
|
||||
// Enabling this will run the lib-jitsi-meet no audio detection module which
|
||||
// will notify the user if the current selected microphone has no audio
|
||||
// input and will suggest another valid device if one is present.
|
||||
enableNoAudioDetection: true,
|
||||
|
||||
// Enabling this will show a "Save Logs" link in the GSM popover that can be
|
||||
// used to collect debug information (XMPP IQs, SDP offer/answer cycles)
|
||||
// about the call.
|
||||
// enableSaveLogs: false,
|
||||
|
||||
// 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
|
||||
// selected microphone. The purpose it to let the user know that the input could
|
||||
// be potentially unpleasant for other meeting participants.
|
||||
enableNoisyMicDetection: true,
|
||||
|
||||
// Start the conference in audio only mode (no video is being received nor
|
||||
// sent).
|
||||
// startAudioOnly: false,
|
||||
|
||||
// Every participant after the Nth will start audio muted.
|
||||
// startAudioMuted: 10,
|
||||
|
||||
// Start calls with audio muted. Unlike the option above, this one is only
|
||||
// applied locally. FIXME: having these 2 options is confusing.
|
||||
// startWithAudioMuted: false,
|
||||
|
||||
// Enabling it (with #params) will disable local audio output of remote
|
||||
// participants and to enable it back a reload is needed.
|
||||
// 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).
|
||||
// enableOpusRed: false
|
||||
|
||||
// Video
|
||||
|
||||
// Sets the preferred resolution (height) for local video. Defaults to 720.
|
||||
// resolution: 720,
|
||||
|
||||
// How many participants while in the tile view mode, before the receiving video quality is reduced from HD to SD.
|
||||
// Use -1 to disable.
|
||||
// maxFullResolutionParticipants: 2,
|
||||
|
||||
// w3c spec-compliant video constraints to use for video capture. Currently
|
||||
// used by browsers that return true from lib-jitsi-meet's
|
||||
// util#browser#usesNewGumFlow. The constraints are independent from
|
||||
// this config's resolution value. Defaults to requesting an ideal
|
||||
// resolution of 720p.
|
||||
// constraints: {
|
||||
// video: {
|
||||
// height: {
|
||||
// ideal: 720,
|
||||
// max: 720,
|
||||
// min: 240
|
||||
// }
|
||||
// }
|
||||
// },
|
||||
|
||||
// Enable / disable simulcast support.
|
||||
// disableSimulcast: false,
|
||||
|
||||
// Enable / disable layer suspension. If enabled, endpoints whose HD
|
||||
// layers are not in use will be suspended (no longer sent) until they
|
||||
// are requested again.
|
||||
// enableLayerSuspension: false,
|
||||
|
||||
// Every participant after the Nth will start video muted.
|
||||
// startVideoMuted: 10,
|
||||
|
||||
// Start calls with video muted. Unlike the option above, this one is only
|
||||
// applied locally. FIXME: having these 2 options is confusing.
|
||||
// startWithVideoMuted: false,
|
||||
|
||||
// If set to true, prefer to use the H.264 video codec (if supported).
|
||||
// Note that it's not recommended to do this because simulcast is not
|
||||
// supported when using H.264. For 1-to-1 calls this setting is enabled by
|
||||
// default and can be toggled in the p2p section.
|
||||
// This option has been deprecated, use preferredCodec under videoQuality section instead.
|
||||
// preferH264: true,
|
||||
|
||||
// If set to true, disable H.264 video codec by stripping it out of the
|
||||
// SDP.
|
||||
// disableH264: false,
|
||||
|
||||
// Desktop sharing
|
||||
|
||||
// Optional desktop sharing frame rate options. Default value: min:5, max:5.
|
||||
// desktopSharingFrameRate: {
|
||||
// min: 5,
|
||||
// max: 5
|
||||
// },
|
||||
|
||||
// Try to start calls with screen-sharing instead of camera video.
|
||||
// startScreenSharing: false,
|
||||
|
||||
// Recording
|
||||
|
||||
// Whether to enable file recording or not.
|
||||
// fileRecordingsEnabled: false,
|
||||
// Enable the dropbox integration.
|
||||
// dropbox: {
|
||||
// appKey: '<APP_KEY>' // Specify your app key here.
|
||||
// // A URL to redirect the user to, after authenticating
|
||||
// // by default uses:
|
||||
// // 'https://jitsi-meet.example.com/static/oauth.html'
|
||||
// redirectURI:
|
||||
// 'https://jitsi-meet.example.com/subfolder/static/oauth.html'
|
||||
// },
|
||||
// When integrations like dropbox are enabled only that will be shown,
|
||||
// by enabling fileRecordingsServiceEnabled, we show both the integrations
|
||||
// and the generic recording service (its configuration and storage type
|
||||
// depends on jibri configuration)
|
||||
// fileRecordingsServiceEnabled: false,
|
||||
// Whether to show the possibility to share file recording with other people
|
||||
// (e.g. meeting participants), based on the actual implementation
|
||||
// on the backend.
|
||||
// fileRecordingsServiceSharingEnabled: false,
|
||||
|
||||
// Whether to enable live streaming or not.
|
||||
// liveStreamingEnabled: false,
|
||||
|
||||
// Transcription (in interface_config,
|
||||
// subtitles and buttons can be configured)
|
||||
// transcribingEnabled: false,
|
||||
|
||||
// Enables automatic turning on captions when recording is started
|
||||
// autoCaptionOnRecord: false,
|
||||
|
||||
// Misc
|
||||
|
||||
// Default value for the channel "last N" attribute. -1 for unlimited.
|
||||
channelLastN: -1,
|
||||
|
||||
// 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
|
||||
// participants gets to or above the number.
|
||||
//
|
||||
// For the given example mapping, "last N" will be set to 20 as long as there are at least 5, but less than
|
||||
// 29 participants in the call and it will be lowered to 15 when the 30th participant joins. The 'channelLastN'
|
||||
// will be used as default until the first threshold is reached.
|
||||
//
|
||||
// lastNLimits: {
|
||||
// 5: 20,
|
||||
// 30: 15,
|
||||
// 50: 10,
|
||||
// 70: 5,
|
||||
// 90: 2
|
||||
// },
|
||||
|
||||
// Specify the settings for video quality optimizations on the client.
|
||||
// videoQuality: {
|
||||
// // Provides a way to prevent a video codec from being negotiated on the JVB connection. The codec specified
|
||||
// // here will be removed from the list of codecs present in the SDP answer generated by the client. If the
|
||||
// // same codec is specified for both the disabled and preferred option, the disable settings will prevail.
|
||||
// // Note that 'VP8' cannot be disabled since it's a mandatory codec, the setting will be ignored in this case.
|
||||
// disabledCodec: 'H264',
|
||||
//
|
||||
// // Provides a way to set a preferred video codec for the JVB connection. If 'H264' is specified here,
|
||||
// // simulcast will be automatically disabled since JVB doesn't support H264 simulcast yet. This will only
|
||||
// // rearrange the the preference order of the codecs in the SDP answer generated by the browser only if the
|
||||
// // preferred codec specified here is present. Please ensure that the JVB offers the specified codec for this
|
||||
// // to take effect.
|
||||
// preferredCodec: 'VP8',
|
||||
//
|
||||
// // 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
|
||||
// // 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.
|
||||
// // This is currently not implemented on app based clients on mobile.
|
||||
// maxBitratesVideo: {
|
||||
// low: 200000,
|
||||
// standard: 500000,
|
||||
// high: 1500000
|
||||
// },
|
||||
//
|
||||
// // The options can be used to override default thresholds of video thumbnail heights corresponding to
|
||||
// // the video quality levels used in the application. At the time of this writing the allowed levels are:
|
||||
// // 'low' - for the low quality level (180p at the time of this writing)
|
||||
// // 'standard' - for the medium quality level (360p)
|
||||
// // 'high' - for the high quality level (720p)
|
||||
// // The keys should be positive numbers which represent the minimal thumbnail height for the quality level.
|
||||
// //
|
||||
// // With the default config value below the application will use 'low' quality until the thumbnails are
|
||||
// // at least 360 pixels tall. If the thumbnail height reaches 720 pixels then the application will switch to
|
||||
// // the high quality.
|
||||
// minHeightForQualityLvl: {
|
||||
// 360: 'standard',
|
||||
// 720: 'high'
|
||||
// },
|
||||
//
|
||||
// // Provides a way to resize the desktop track to 720p (if it is greater than 720p) before creating a canvas
|
||||
// // for the presenter mode (camera picture-in-picture mode with screenshare).
|
||||
// resizeDesktopForPresenter: false
|
||||
// },
|
||||
|
||||
// // Options for the recording limit notification.
|
||||
// recordingLimit: {
|
||||
//
|
||||
// // The recording limit in minutes. Note: This number appears in the notification text
|
||||
// // but doesn't enforce the actual recording time limit. This should be configured in
|
||||
// // jibri!
|
||||
// limit: 60,
|
||||
//
|
||||
// // The name of the app with unlimited recordings.
|
||||
// appName: 'Unlimited recordings APP',
|
||||
//
|
||||
// // The URL of the app with unlimited recordings.
|
||||
// appURL: 'https://unlimited.recordings.app.com/'
|
||||
// },
|
||||
|
||||
// Disables or enables RTX (RFC 4588) (defaults to false).
|
||||
// disableRtx: false,
|
||||
|
||||
// Disables or enables TCC support in this client (default: enabled).
|
||||
// enableTcc: true,
|
||||
|
||||
// Disables or enables REMB support in this client (default: enabled).
|
||||
// enableRemb: true,
|
||||
|
||||
// Enables ICE restart logic in LJM and displays the page reload overlay on
|
||||
// ICE failure. Current disabled by default because it's causing issues with
|
||||
// signaling when Octo is enabled. Also when we do an "ICE restart"(which is
|
||||
// not a real ICE restart), the client maintains the TCC sequence number
|
||||
// counter, but the bridge resets it. The bridge sends media packets with
|
||||
// TCC sequence numbers starting from 0.
|
||||
// enableIceRestart: false,
|
||||
|
||||
// Use TURN/UDP servers for the jitsi-videobridge connection (by default
|
||||
// we filter out TURN/UDP because it is usually not needed since the
|
||||
// bridge itself is reachable via UDP)
|
||||
// useTurnUdp: false
|
||||
|
||||
// UI
|
||||
//
|
||||
|
||||
// Disables responsive tiles.
|
||||
// disableResponsiveTiles: false,
|
||||
|
||||
// Hides lobby button
|
||||
// hideLobbyButton: false,
|
||||
|
||||
// Require users to always specify a display name.
|
||||
// requireDisplayName: true,
|
||||
|
||||
// Whether to use a welcome page or not. In case it's false a random room
|
||||
// will be joined when no room is specified.
|
||||
enableWelcomePage: true,
|
||||
|
||||
// Disable app shortcuts that are registered upon joining a conference
|
||||
// disableShortcuts: false,
|
||||
|
||||
// Disable initial browser getUserMedia requests.
|
||||
// This is useful for scenarios where users might want to start a conference for screensharing only
|
||||
// disableInitialGUM: false,
|
||||
|
||||
// Enabling the close page will ignore the welcome page redirection when
|
||||
// a call is hangup.
|
||||
// enableClosePage: false,
|
||||
|
||||
// Disable hiding of remote thumbnails when in a 1-on-1 conference call.
|
||||
// disable1On1Mode: false,
|
||||
|
||||
// Default language for the user interface.
|
||||
// defaultLanguage: 'en',
|
||||
|
||||
// Disables profile and the edit of all fields from the profile settings (display name and email)
|
||||
// disableProfile: false,
|
||||
|
||||
// Whether or not some features are checked based on token.
|
||||
// enableFeaturesBasedOnToken: false,
|
||||
|
||||
// When enabled the password used for locking a room is restricted to up to the number of digits specified
|
||||
// roomPasswordNumberOfDigits: 10,
|
||||
// default: roomPasswordNumberOfDigits: false,
|
||||
|
||||
// Message to show the users. Example: 'The service will be down for
|
||||
// maintenance at 01:00 AM GMT,
|
||||
// noticeMessage: '',
|
||||
|
||||
// Enables calendar integration, depends on googleApiApplicationClientID
|
||||
// and microsoftApiApplicationClientID
|
||||
// enableCalendarIntegration: false,
|
||||
|
||||
// When 'true', it shows an intermediate page before joining, where the user can configure their devices.
|
||||
// prejoinPageEnabled: false,
|
||||
|
||||
// If etherpad integration is enabled, setting this to true will
|
||||
// automatically open the etherpad when a participant joins. This
|
||||
// does not affect the mobile app since opening an etherpad
|
||||
// obscures the conference controls -- it's better to let users
|
||||
// choose to open the pad on their own in that case.
|
||||
// openSharedDocumentOnJoin: false,
|
||||
|
||||
// If true, shows the unsafe room name warning label when a room name is
|
||||
// deemed unsafe (due to the simplicity in the name) and a password is not
|
||||
// set or the lobby is not enabled.
|
||||
// enableInsecureRoomNameWarning: false,
|
||||
|
||||
// Whether to automatically copy invitation URL after creating a room.
|
||||
// Document should be focused for this option to work
|
||||
// enableAutomaticUrlCopy: false,
|
||||
|
||||
// Base URL for a Gravatar-compatible service. Defaults to libravatar.
|
||||
// gravatarBaseURL: 'https://seccdn.libravatar.org/avatar/';
|
||||
|
||||
// Stats
|
||||
//
|
||||
|
||||
// Whether to enable stats collection or not in the TraceablePeerConnection.
|
||||
// This can be useful for debugging purposes (post-processing/analysis of
|
||||
// the webrtc stats) as it is done in the jitsi-meet-torture bandwidth
|
||||
// estimation tests.
|
||||
// gatherStats: false,
|
||||
|
||||
// The interval at which PeerConnection.getStats() is called. Defaults to 10000
|
||||
// pcStatsInterval: 10000,
|
||||
|
||||
// To enable sending statistics to callstats.io you must provide the
|
||||
// Application ID and Secret.
|
||||
// callStatsID: '',
|
||||
// callStatsSecret: '',
|
||||
|
||||
// Enables sending participants' display names to callstats
|
||||
// enableDisplayNameInStats: false,
|
||||
|
||||
// Enables sending participants' emails (if available) to callstats and other analytics
|
||||
// enableEmailInStats: false,
|
||||
|
||||
// Privacy
|
||||
//
|
||||
|
||||
// If third party requests are disabled, no other server will be contacted.
|
||||
// This means avatars will be locally generated and callstats integration
|
||||
// will not function.
|
||||
// disableThirdPartyRequests: false,
|
||||
|
||||
|
||||
// Peer-To-Peer mode: used (if enabled) when there are just 2 participants.
|
||||
//
|
||||
|
||||
p2p: {
|
||||
// Enables peer to peer mode. When enabled the system will try to
|
||||
// establish a direct connection when there are exactly 2 participants
|
||||
// in the room. If that succeeds the conference will stop sending data
|
||||
// through the JVB and use the peer to peer connection instead. When a
|
||||
// 3rd participant joins the conference will be moved back to the JVB
|
||||
// connection.
|
||||
enabled: true,
|
||||
|
||||
// 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' }
|
||||
]
|
||||
|
||||
// Sets the ICE transport policy for the p2p connection. At the time
|
||||
// of this writing the list of possible values are 'all' and 'relay',
|
||||
// but that is subject to change in the future. The enum is defined in
|
||||
// the WebRTC standard:
|
||||
// https://www.w3.org/TR/webrtc/#rtcicetransportpolicy-enum.
|
||||
// If not set, the effective value is 'all'.
|
||||
// iceTransportPolicy: 'all',
|
||||
|
||||
// If set to true, it will prefer to use H.264 for P2P calls (if H.264
|
||||
// is supported). This setting is deprecated, use preferredCodec instead.
|
||||
// preferH264: true
|
||||
|
||||
// Provides a way to set the video codec preference on the p2p connection. Acceptable
|
||||
// codec values are 'VP8', 'VP9' and 'H264'.
|
||||
// preferredCodec: 'H264',
|
||||
|
||||
// If set to true, disable H.264 video codec by stripping it out of the
|
||||
// SDP. This setting is deprecated, use disabledCodec instead.
|
||||
// disableH264: false,
|
||||
|
||||
// Provides a way to prevent a video codec from being negotiated on the p2p connection.
|
||||
// disabledCodec: '',
|
||||
|
||||
// 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).
|
||||
// backToP2PDelay: 5
|
||||
},
|
||||
|
||||
analytics: {
|
||||
// The Google Analytics Tracking ID:
|
||||
// googleAnalyticsTrackingId: 'your-tracking-id-UA-123456-1'
|
||||
|
||||
// Matomo configuration:
|
||||
// matomoEndpoint: 'https://your-matomo-endpoint/',
|
||||
// matomoSiteID: '42',
|
||||
|
||||
// The Amplitude APP Key:
|
||||
// amplitudeAPPKey: '<APP_KEY>'
|
||||
|
||||
// Configuration for the rtcstats server:
|
||||
// By enabling rtcstats server every time a conference is joined the rtcstats
|
||||
// module connects to the provided rtcstatsEndpoint and sends statistics regarding
|
||||
// PeerConnection states along with getStats metrics polled at the specified
|
||||
// interval.
|
||||
// rtcstatsEnabled: true,
|
||||
|
||||
// In order to enable rtcstats one needs to provide a endpoint url.
|
||||
// rtcstatsEndpoint: wss://rtcstats-server-pilot.jitsi.net/,
|
||||
|
||||
// The interval at which rtcstats will poll getStats, defaults to 1000ms.
|
||||
// If the value is set to 0 getStats won't be polled and the rtcstats client
|
||||
// will only send data related to RTCPeerConnection events.
|
||||
// rtcstatsPolIInterval: 1000
|
||||
|
||||
// Array of script URLs to load as lib-jitsi-meet "analytics handlers".
|
||||
// scriptURLs: [
|
||||
// "libs/analytics-ga.min.js", // google-analytics
|
||||
// "https://example.com/my-custom-analytics.js"
|
||||
// ],
|
||||
},
|
||||
|
||||
// Logs that should go be passed through the 'log' event if a handler is defined for it
|
||||
// apiLogLevels: ['warn', 'log', 'error', 'info', 'debug'],
|
||||
|
||||
// Information about the jitsi-meet instance we are connecting to, including
|
||||
// the user region as seen by the server.
|
||||
deploymentInfo: {
|
||||
// shard: "shard1",
|
||||
// region: "europe",
|
||||
// userRegion: "asia"
|
||||
},
|
||||
|
||||
// Decides whether the start/stop recording audio notifications should play on record.
|
||||
// disableRecordAudioNotification: false,
|
||||
|
||||
// Information for the chrome extension banner
|
||||
// chromeExtensionBanner: {
|
||||
// // The chrome extension to be installed address
|
||||
// url: 'https://chrome.google.com/webstore/detail/jitsi-meetings/kglhbbefdnlheedjiejgomgmfplipfeb',
|
||||
|
||||
// // Extensions info which allows checking if they are installed or not
|
||||
// chromeExtensionsInfo: [
|
||||
// {
|
||||
// id: 'kglhbbefdnlheedjiejgomgmfplipfeb',
|
||||
// path: 'jitsi-logo-48x48.png'
|
||||
// }
|
||||
// ]
|
||||
// },
|
||||
|
||||
// Local Recording
|
||||
//
|
||||
|
||||
// localRecording: {
|
||||
// Enables local recording.
|
||||
// Additionally, 'localrecording' (all lowercase) needs to be added to
|
||||
// TOOLBAR_BUTTONS in interface_config.js for the Local Recording
|
||||
// button to show up on the toolbar.
|
||||
//
|
||||
// enabled: true,
|
||||
//
|
||||
|
||||
// The recording format, can be one of 'ogg', 'flac' or 'wav'.
|
||||
// format: 'flac'
|
||||
//
|
||||
|
||||
// },
|
||||
|
||||
// Options related to end-to-end (participant to participant) ping.
|
||||
// e2eping: {
|
||||
// // The interval in milliseconds at which pings will be sent.
|
||||
// // Defaults to 10000, set to <= 0 to disable.
|
||||
// pingInterval: 10000,
|
||||
//
|
||||
// // The interval in milliseconds at which analytics events
|
||||
// // with the measured RTT will be sent. Defaults to 60000, set
|
||||
// // to <= 0 to disable.
|
||||
// analyticsInterval: 60000,
|
||||
// },
|
||||
|
||||
// If set, will attempt to use the provided video input device label when
|
||||
// triggering a screenshare, instead of proceeding through the normal flow
|
||||
// for obtaining a desktop stream.
|
||||
// NOTE: This option is experimental and is currently intended for internal
|
||||
// use only.
|
||||
// _desktopSharingSourceDevice: 'sample-id-or-label',
|
||||
|
||||
// If true, any checks to handoff to another application will be prevented
|
||||
// and instead the app will continue to display in the current browser.
|
||||
// disableDeepLinking: false,
|
||||
|
||||
// A property to disable the right click context menu for localVideo
|
||||
// the menu has option to flip the locally seen video for local presentations
|
||||
// disableLocalVideoFlip: false,
|
||||
|
||||
// Mainly privacy related settings
|
||||
|
||||
// Disables all invite functions from the app (share, invite, dial out...etc)
|
||||
// disableInviteFunctions: true,
|
||||
|
||||
// Disables storing the room name to the recents list
|
||||
// doNotStoreRoom: true,
|
||||
|
||||
// Deployment specific URLs.
|
||||
// deploymentUrls: {
|
||||
// // If specified a 'Help' button will be displayed in the overflow menu with a link to the specified URL for
|
||||
// // user documentation.
|
||||
// userDocumentationURL: 'https://docs.example.com/video-meetings.html',
|
||||
// // If specified a 'Download our apps' button will be displayed in the overflow menu with a link
|
||||
// // to the specified URL for an app download page.
|
||||
// downloadAppsUrl: 'https://docs.example.com/our-apps.html'
|
||||
// },
|
||||
|
||||
// Options related to the remote participant menu.
|
||||
// remoteVideoMenu: {
|
||||
// // If set to true the 'Kick out' button will be disabled.
|
||||
// disableKick: true
|
||||
// },
|
||||
|
||||
// If set to true all muting operations of remote participants will be disabled.
|
||||
// disableRemoteMute: true,
|
||||
|
||||
// Enables support for lip-sync for this client (if the browser supports it).
|
||||
// enableLipSync: false
|
||||
|
||||
/**
|
||||
External API url used to receive branding specific information.
|
||||
If there is no url set or there are missing fields, the defaults are applied.
|
||||
None of the fields are mandatory and the response must have the shape:
|
||||
{
|
||||
// The hex value for the colour used as background
|
||||
backgroundColor: '#fff',
|
||||
// The url for the image used as background
|
||||
backgroundImageUrl: 'https://example.com/background-img.png',
|
||||
// The anchor url used when clicking the logo image
|
||||
logoClickUrl: 'https://example-company.org',
|
||||
// The url used for the image used as logo
|
||||
logoImageUrl: 'https://example.com/logo-img.png'
|
||||
}
|
||||
*/
|
||||
// dynamicBrandingUrl: '',
|
||||
|
||||
// The URL of the moderated rooms microservice, if available. If it
|
||||
// is present, a link to the service will be rendered on the welcome page,
|
||||
// otherwise the app doesn't render it.
|
||||
// moderatedRoomServiceUrl: 'https://moderated.jitsi-meet.example.com',
|
||||
|
||||
// If true, tile view will not be enabled automatically when the participants count threshold is reached.
|
||||
// disableTileView: true,
|
||||
|
||||
// Hides the conference subject
|
||||
// hideConferenceSubject: true
|
||||
|
||||
// Hides the conference timer.
|
||||
// hideConferenceTimer: true,
|
||||
|
||||
// Hides the participants stats
|
||||
// hideParticipantsStats: true
|
||||
|
||||
// Sets the conference subject
|
||||
// subject: 'Conference Subject',
|
||||
|
||||
// List of undocumented settings used in jitsi-meet
|
||||
/**
|
||||
_immediateReloadThreshold
|
||||
debug
|
||||
debugAudioLevels
|
||||
deploymentInfo
|
||||
dialInConfCodeUrl
|
||||
dialInNumbersUrl
|
||||
dialOutAuthUrl
|
||||
dialOutCodesUrl
|
||||
disableRemoteControl
|
||||
displayJids
|
||||
etherpad_base
|
||||
externalConnectUrl
|
||||
firefox_fake_device
|
||||
googleApiApplicationClientID
|
||||
iAmRecorder
|
||||
iAmSipGateway
|
||||
microsoftApiApplicationClientID
|
||||
peopleSearchQueryTypes
|
||||
peopleSearchUrl
|
||||
requireDisplayName
|
||||
tokenAuthUrl
|
||||
*/
|
||||
|
||||
/**
|
||||
* This property can be used to alter the generated meeting invite links (in combination with a branding domain
|
||||
* which is retrieved internally by jitsi meet) (e.g. https://meet.jit.si/someMeeting
|
||||
* can become https://brandedDomain/roomAlias)
|
||||
*/
|
||||
// brandingRoomAlias: null,
|
||||
|
||||
// List of undocumented settings used in lib-jitsi-meet
|
||||
/**
|
||||
_peerConnStatusOutOfLastNTimeout
|
||||
_peerConnStatusRtcMuteTimeout
|
||||
abTesting
|
||||
avgRtpStatsN
|
||||
callStatsConfIDNamespace
|
||||
callStatsCustomScriptUrl
|
||||
desktopSharingSources
|
||||
disableAEC
|
||||
disableAGC
|
||||
disableAP
|
||||
disableHPF
|
||||
disableNS
|
||||
enableTalkWhileMuted
|
||||
forceJVB121Ratio
|
||||
forceTurnRelay
|
||||
hiddenDomain
|
||||
ignoreStartMuted
|
||||
websocketKeepAlive
|
||||
websocketKeepAliveUrl
|
||||
*/
|
||||
|
||||
/**
|
||||
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
|
||||
Some of these notifications also depend on some other internal logic to be displayed or not,
|
||||
so adding them here will not ensure they will always be displayed
|
||||
|
||||
A falsy value for this prop will result in having all notifications enabled (e.g null, undefined, false)
|
||||
*/
|
||||
// notifications: [
|
||||
// 'connection.CONNFAIL', // shown when the connection fails,
|
||||
// 'dialog.cameraNotSendingData', // shown when there's no feed from user's camera
|
||||
// 'dialog.kickTitle', // shown when user has been kicked
|
||||
// 'dialog.liveStreaming', // livestreaming notifications (pending, on, off, limits)
|
||||
// 'dialog.lockTitle', // shown when setting conference password fails
|
||||
// 'dialog.maxUsersLimitReached', // shown when maximmum users limit has been reached
|
||||
// 'dialog.micNotSendingData', // shown when user's mic is not sending any audio
|
||||
// 'dialog.passwordNotSupportedTitle', // shown when setting conference password fails due to password format
|
||||
// 'dialog.recording', // recording notifications (pending, on, off, limits)
|
||||
// 'dialog.remoteControlTitle', // remote control notifications (allowed, denied, start, stop, error)
|
||||
// 'dialog.reservationError',
|
||||
// 'dialog.serviceUnavailable', // shown when server is not reachable
|
||||
// 'dialog.sessTerminated', // shown when there is a failed conference session
|
||||
// 'dialog.tokenAuthFailed', // show when an invalid jwt is used
|
||||
// 'dialog.transcribing', // transcribing notifications (pending, off)
|
||||
// 'dialOut.statusMessage', // shown when dial out status is updated.
|
||||
// 'liveStreaming.busy', // shown when livestreaming service is busy
|
||||
// 'liveStreaming.failedToStart', // shown when livestreaming fails to start
|
||||
// 'liveStreaming.unavailableTitle', // shown when livestreaming service is not reachable
|
||||
// 'lobby.joinRejectedMessage', // shown when while in a lobby, user's request to join is rejected
|
||||
// 'lobby.notificationTitle', // shown when lobby is toggled and when join requests are allowed / denied
|
||||
// 'localRecording.localRecording', // shown when a local recording is started
|
||||
// 'notify.disconnected', // shown when a participant has left
|
||||
// 'notify.grantedTo', // shown when moderator rights were granted to a participant
|
||||
// 'notify.invitedOneMember', // shown when 1 participant has been invited
|
||||
// 'notify.invitedThreePlusMembers', // shown when 3+ participants have been invited
|
||||
// 'notify.invitedTwoMembers', // shown when 2 participants have been invited
|
||||
// 'notify.kickParticipant', // shown when a participant is kicked
|
||||
// 'notify.mutedRemotelyTitle', // shown when user is muted by a remote party
|
||||
// 'notify.mutedTitle', // shown when user has been muted upon joining,
|
||||
// 'notify.newDeviceAudioTitle', // prompts the user to use a newly detected audio device
|
||||
// 'notify.newDeviceCameraTitle', // prompts the user to use a newly detected camera
|
||||
// 'notify.passwordRemovedRemotely', // shown when a password has been removed remotely
|
||||
// 'notify.passwordSetRemotely', // shown when a password has been set remotely
|
||||
// 'notify.raisedHand', // shown when a partcipant used raise hand,
|
||||
// 'notify.startSilentTitle', // shown when user joined with no audio
|
||||
// 'prejoin.errorDialOut',
|
||||
// 'prejoin.errorDialOutDisconnected',
|
||||
// 'prejoin.errorDialOutFailed',
|
||||
// 'prejoin.errorDialOutStatus',
|
||||
// 'prejoin.errorStatusCode',
|
||||
// 'prejoin.errorValidation',
|
||||
// 'recording.busy', // shown when recording service is busy
|
||||
// 'recording.failedToStart', // shown when recording fails to start
|
||||
// 'recording.unavailableTitle', // shown when recording service is not reachable
|
||||
// 'toolbar.noAudioSignalTitle', // shown when a broken mic is detected
|
||||
// 'toolbar.noisyAudioInputTitle', // shown when noise is detected for the current microphone
|
||||
// 'toolbar.talkWhileMutedPopup', // shown when user tries to speak while muted
|
||||
// 'transcribing.failedToStart' // shown when transcribing fails to start
|
||||
// ]
|
||||
|
||||
// Allow all above example options to include a trailing comma and
|
||||
// prevent fear when commenting out the last value.
|
||||
makeJsonParserHappy: 'even if last key had a trailing comma'
|
||||
|
||||
// no configuration value should follow this line.
|
||||
};
|
||||
|
||||
/* eslint-enable no-unused-vars, no-var */
|
|
@ -0,0 +1,139 @@
|
|||
server_names_hash_bucket_size 64;
|
||||
|
||||
server {
|
||||
listen 80;
|
||||
listen [::]:80;
|
||||
server_name jitsi-meet.example.com;
|
||||
|
||||
location ^~ /.well-known/acme-challenge/ {
|
||||
default_type "text/plain";
|
||||
root /usr/share/jitsi-meet;
|
||||
}
|
||||
location = /.well-known/acme-challenge/ {
|
||||
return 404;
|
||||
}
|
||||
location / {
|
||||
return 301 https://$host$request_uri;
|
||||
}
|
||||
}
|
||||
server {
|
||||
listen 443 ssl;
|
||||
listen [::]:443 ssl;
|
||||
server_name jitsi-meet.example.com;
|
||||
|
||||
# Mozilla Guideline v5.4, nginx 1.17.7, OpenSSL 1.1.1d, intermediate configuration
|
||||
ssl_protocols TLSv1.2 TLSv1.3;
|
||||
ssl_ciphers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384;
|
||||
ssl_prefer_server_ciphers off;
|
||||
|
||||
ssl_session_timeout 1d;
|
||||
ssl_session_cache shared:SSL:10m; # about 40000 sessions
|
||||
ssl_session_tickets off;
|
||||
|
||||
add_header Strict-Transport-Security "max-age=63072000" always;
|
||||
|
||||
ssl_certificate /etc/jitsi/meet/jitsi-meet.example.com.crt;
|
||||
ssl_certificate_key /etc/jitsi/meet/jitsi-meet.example.com.key;
|
||||
|
||||
root /usr/share/jitsi-meet;
|
||||
|
||||
# ssi on with javascript for multidomain variables in config.js
|
||||
ssi on;
|
||||
ssi_types application/x-javascript application/javascript;
|
||||
|
||||
index index.html index.htm;
|
||||
error_page 404 /static/404.html;
|
||||
|
||||
gzip on;
|
||||
gzip_types text/plain text/css application/javascript application/json image/x-icon application/octet-stream application/wasm;
|
||||
gzip_vary on;
|
||||
gzip_proxied no-cache no-store private expired auth;
|
||||
gzip_min_length 512;
|
||||
|
||||
location = /config.js {
|
||||
alias /etc/jitsi/meet/jitsi-meet.example.com-config.js;
|
||||
}
|
||||
|
||||
location = /external_api.js {
|
||||
alias /usr/share/jitsi-meet/libs/external_api.min.js;
|
||||
}
|
||||
|
||||
# ensure all static content can always be found first
|
||||
location ~ ^/(libs|css|static|images|fonts|lang|sounds|connection_optimization|.well-known)/(.*)$
|
||||
{
|
||||
add_header 'Access-Control-Allow-Origin' '*';
|
||||
alias /usr/share/jitsi-meet/$1/$2;
|
||||
|
||||
# cache all versioned files
|
||||
if ($arg_v) {
|
||||
expires 1y;
|
||||
}
|
||||
}
|
||||
|
||||
# BOSH
|
||||
location = /http-bind {
|
||||
proxy_pass http://localhost:5280/http-bind;
|
||||
proxy_set_header X-Forwarded-For $remote_addr;
|
||||
proxy_set_header Host $http_host;
|
||||
}
|
||||
|
||||
# xmpp websockets
|
||||
location = /xmpp-websocket {
|
||||
proxy_pass http://127.0.0.1:5280/xmpp-websocket?prefix=$prefix&$args;
|
||||
proxy_http_version 1.1;
|
||||
proxy_set_header Upgrade $http_upgrade;
|
||||
proxy_set_header Connection "upgrade";
|
||||
proxy_set_header Host $http_host;
|
||||
tcp_nodelay on;
|
||||
}
|
||||
|
||||
# colibri (JVB) websockets for jvb1
|
||||
location ~ ^/colibri-ws/default-id/(.*) {
|
||||
proxy_pass http://127.0.0.1:9090/colibri-ws/default-id/$1$is_args$args;
|
||||
proxy_http_version 1.1;
|
||||
proxy_set_header Upgrade $http_upgrade;
|
||||
proxy_set_header Connection "upgrade";
|
||||
tcp_nodelay on;
|
||||
}
|
||||
|
||||
location ~ ^/([^/?&:'"]+)$ {
|
||||
try_files $uri @root_path;
|
||||
}
|
||||
|
||||
location @root_path {
|
||||
rewrite ^/(.*)$ / break;
|
||||
}
|
||||
|
||||
location ~ ^/([^/?&:'"]+)/config.js$
|
||||
{
|
||||
set $subdomain "$1.";
|
||||
set $subdir "$1/";
|
||||
|
||||
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
|
||||
location ~ ^/([^/?&:'"]+)/http-bind {
|
||||
set $subdomain "$1.";
|
||||
set $subdir "$1/";
|
||||
set $prefix "$1";
|
||||
|
||||
rewrite ^/(.*)$ /http-bind;
|
||||
}
|
||||
|
||||
# websockets for subdomains
|
||||
location ~ ^/([^/?&:'"]+)/xmpp-websocket {
|
||||
set $subdomain "$1.";
|
||||
set $subdir "$1/";
|
||||
set $prefix "$1";
|
||||
|
||||
rewrite ^/(.*)$ /xmpp-websocket;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,40 @@
|
|||
# Copyright 1999-2020 Unitas Network GmbH
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI="7"
|
||||
|
||||
inherit eutils unpacker
|
||||
|
||||
MY_PN=${PN/-bin/}
|
||||
|
||||
DESCRIPTION="Jitsi Meet is a WebRTC JavaScript application that uses Jitsi Videobridge to provide high quality, scalable video conferences."
|
||||
HOMEPAGE="https://jitsi.org/"
|
||||
|
||||
SRC_URI_BASE="https://download.jitsi.org/stable"
|
||||
SRC_URI="${SRC_URI_BASE}/${MY_PN}_${PV}-1_all.deb"
|
||||
|
||||
RESTRICT="mirror"
|
||||
|
||||
LICENSE="Apache-2.0"
|
||||
SLOT="0"
|
||||
KEYWORDS="amd64 x86"
|
||||
IUSE=""
|
||||
|
||||
DEPEND=""
|
||||
RDEPEND=""
|
||||
|
||||
S=${WORKDIR}
|
||||
|
||||
src_install() {
|
||||
insinto /etc/jitsi/meet/
|
||||
newins ${FILESDIR}/meet.example.com-config-${PV}.js meet.example.com-config.js
|
||||
|
||||
gunzip usr/share/doc/jitsi-meet-web/README.md.gz
|
||||
dodoc usr/share/doc/jitsi-meet-web/README.md
|
||||
dodoc usr/share/doc/jitsi-meet-web/README.Debian
|
||||
newdoc ${FILESDIR}/nginx-jitsi-meet-${PV}.example nginx-jitsi-meet.example
|
||||
rm -rf usr/share/doc
|
||||
|
||||
insinto /
|
||||
doins -r usr
|
||||
}
|
|
@ -1,6 +1,8 @@
|
|||
AUX config.example 937 BLAKE2B 580435de59ba5f55307426e60b4ecc1efaca4b10dac39476c74f00daf986e1d2ac375824a9ed93eb8309bb6133d2a1728054ee14f5e36d1d5658913f4132e35c SHA512 b5f2b7f04179601656b2ea6fe602304c60812f469249830748abcbccfd28e19c7285e7446039587df8432c1322173a600e6702c2783321a9945759ee7f88aa50
|
||||
AUX jitsi-videobridge-init.d 1078 BLAKE2B 5f04bd6f54c3002ebb1ec8d4df9614942de2d6ee22ca531332ae83ed0a3558f33de3673a13e6c0528f6382c895f781300e7b39f32829645cfe48aea2536dbdaa SHA512 9300b363e578bd31967ef895fa33d919ad15ec9dd273367d342867999342e683d6e8f3694cf5d5b35bde6d36579f341bcab0e041b7117d6b425b8e8994596fdb
|
||||
AUX jvb.conf.example 195 BLAKE2B f10400f2d4cb5bb40eef213357d5d9fdbd829e25475757c617cc60a033ced6e7312603248c8223f9cec068e989fd29c69d97ddb33fce2c50bbb2781ba40c966e SHA512 90b4c7301b2bde83c7a823cb4934dc0268dfe13230591c535dee0d6c784bb4824d1fc775ba9b45bc8ef844abb00278761d316e1845d08f7e8a91fa5e6e7154ed
|
||||
AUX jvb.conf.example 196 BLAKE2B 63a895fb31f8788ab02ed8b45792e56f70ee6d3715d067b8a7ddf9c04ee2b2506ea8af1522d720fc3afad5052f162fb4ca9bed5acd94ec8c9908c46b56a281f6 SHA512 8c3abf0a628c0ec7e4033503b7b33ec973106d65ac5a739ab9c0967bab83e27da9924792efe484368d24192656315e8e0c617a56500a78ce670972d05bd365eb
|
||||
AUX sip-communicator.properties.example 2816 BLAKE2B 6ffa5c9e01f1a71c666470aa841e5ad406486ccabd94aa87f5e292330dc2cb532f1df6961f0b29e94129992196602c9e68cae89cb1b5af3836ba2121b00f6519 SHA512 288aa842ae03d96ae0a4b56c9099683da719fb168b12cc962415a0bdbedaafbda069ca0e10383b230e38214e1ec1ba5b3d12d7e6a474222b67362cf880292323
|
||||
DIST jitsi-videobridge2_2.1-376-g9f12bfe2-1_all.deb 33757760 BLAKE2B 9df4fa0e834e9a40d34cf048e7c50eaecef8ba853c3aba5378e6f2557baa02d62ea05db3fc355c75cd300cc9387dcbc81720c154bceb842da838c79e1ac9a855 SHA512 03e7fda31c4b5d699313a9c2d0d691a903d4e70939165532fb14e5f4bdd783626dc1da3f160046a348a7aca13001d9974587a465c8de64b1765a90fe07e87a8b
|
||||
DIST jitsi-videobridge2_2.1-416-g2f43d1b4-1_all.deb 34049320 BLAKE2B 95b814cf78ef02eceb4e4f091b530b19623b21dc8eb3361f6deedb9e0cc3ea995d8c26eb3d68cabbbc497dec83a9cc7994b8f266a546415ecd30125188bb0520 SHA512 0139ad81d1fdf28cfa5d5a37acad8adb73f456cf1e5c4bedffc231b474c6a846ed658c72b62a3c32d34f2fc03c0ab6c40e8eb04cc194bfbf9e7738f3fc2d80f6
|
||||
EBUILD jitsi-videobridge-bin-2.1.376.ebuild 1540 BLAKE2B ea2cc30ccc191cc77834c91424fe9728c167ecf3d0d219dd955401c9259be5cc6291a18a6f2b0501e6b50d58c39f6c62ab135a1074fc5886f3f1e818fc71450e SHA512 d0a6bbd05e11ac775ef97aceb8b2469a2718133e4d99fdda6f7fd913e2b7f9c708c3f228c5739b5c0feb5abfe4800ce0115a876c706ef8246aa2efce60ebd638
|
||||
EBUILD jitsi-videobridge-bin-2.1.416.ebuild 1557 BLAKE2B 0c329cc431158301ed4c84443a1252e254406e9533fd9a13af262df48d879174bd680e87fa432a9ccd6ea05777ec8833dc8b5deec1d0ede5a7f4954225541a37 SHA512 7d4374a5019c9d91dbf13ce38db48dfebd128ded56013b8ecf168051084d4ff871559deb094a2a6793c05d1b6412bcbf56d0cf88780ce33164fc0a84c60eb963
|
||||
|
|
|
@ -6,7 +6,7 @@ videobridge {
|
|||
}
|
||||
websockets {
|
||||
enabled = true
|
||||
domain = meet.example.com:443"
|
||||
domain = "meet.example.com:443"
|
||||
tls = true
|
||||
}
|
||||
}
|
|
@ -0,0 +1,63 @@
|
|||
# Copyright 1999-2020 Unitas Network GmbH
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI="7"
|
||||
|
||||
inherit eutils systemd unpacker user
|
||||
|
||||
MY_PN=${PN/-bin/}
|
||||
MY_PV=$(ver_rs 2 '-')
|
||||
MY_EV="-g2f43d1b4-1"
|
||||
|
||||
DESCRIPTION="Jitsi Videobridge is a WebRTC compatible Selective Forwarding Unit"
|
||||
HOMEPAGE="https://jitsi.org/"
|
||||
|
||||
SRC_URI_BASE="https://download.jitsi.org/stable"
|
||||
SRC_URI=${SRC_URI_BASE}/${MY_PN}2_${MY_PV}${MY_EV}_all.deb
|
||||
|
||||
RESTRICT="mirror strip"
|
||||
|
||||
LICENSE="Apache-2.0"
|
||||
SLOT="0"
|
||||
KEYWORDS="amd64 x86"
|
||||
IUSE=""
|
||||
|
||||
DEPEND=""
|
||||
RDEPEND="virtual/jre"
|
||||
|
||||
S=${WORKDIR}
|
||||
|
||||
pkg_setup() {
|
||||
enewgroup jitsi
|
||||
enewuser jvb -1 /bin/bash /usr/share/jitsi-videobridge jitsi
|
||||
}
|
||||
|
||||
src_install() {
|
||||
insinto /etc/jitsi/videobridge/
|
||||
doins ${FILESDIR}/config.example
|
||||
doins ${FILESDIR}/jvb.conf.example
|
||||
doins ${FILESDIR}/sip-communicator.properties.example
|
||||
|
||||
dodoc usr/share/doc/jitsi-videobridge2/README.Debian
|
||||
rm -rf usr/share/doc
|
||||
rm -rf etc/init.d
|
||||
|
||||
insinto /
|
||||
doins -r etc usr
|
||||
|
||||
keepdir /var/log/jitsi
|
||||
fowners root:jitsi /var/log/jitsi
|
||||
fperms 775 /var/log/jitsi
|
||||
|
||||
fowners -R jvb:jitsi /usr/share/jitsi-videobridge
|
||||
fperms 755 /usr/share/jitsi-videobridge/collect-dump-logs.sh
|
||||
fperms 755 /usr/share/jitsi-videobridge/jvb.sh
|
||||
fperms 755 /usr/share/jitsi-videobridge/graceful_shutdown.sh
|
||||
fowners -R jvb:jitsi /etc/jitsi/videobridge
|
||||
fperms 750 /etc/jitsi/videobridge
|
||||
fperms 600 /etc/jitsi/videobridge/sip-communicator.properties.example
|
||||
|
||||
newinitd "${FILESDIR}/${MY_PN}-init.d" "${MY_PN}"
|
||||
|
||||
systemd_newunit lib/systemd/system/${MY_PN}2.service ${MY_PN}.service
|
||||
}
|
Loading…
Reference in New Issue