v7.4 #110
|
@ -30,7 +30,7 @@ echo '
|
||||||
########################################################################
|
########################################################################
|
||||||
by Software, IT & Networks Ltd
|
by Software, IT & Networks Ltd
|
||||||
'
|
'
|
||||||
|
FORGE_REPO="https://forge.switnet.net/switnet/quick-jibri-installer"
|
||||||
check_apt_policy() {
|
check_apt_policy() {
|
||||||
apt-cache policy 2>/dev/null| awk "/$1/{print \$3}" | awk -F '/' 'NR==1{print$2}'
|
apt-cache policy 2>/dev/null| awk "/$1/{print \$3}" | awk -F '/' 'NR==1{print$2}'
|
||||||
}
|
}
|
||||||
|
@ -42,6 +42,16 @@ if [ "$(dpkg-query -W -f='${Status}' "$1" 2>/dev/null | grep -c "ok installed")"
|
||||||
apt-get -yq2 install "$1"
|
apt-get -yq2 install "$1"
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
# Test for matches
|
||||||
|
test_match() {
|
||||||
|
if grep -q "$1" "$2" ; then
|
||||||
|
echo "$(basename "$2") - OK..."
|
||||||
|
else
|
||||||
|
echo "$(basename "$2"), FAIL..."
|
||||||
|
echo "Please report this to $FORGE_REPO"
|
||||||
|
exit
|
||||||
|
fi
|
||||||
|
}
|
||||||
DOMAIN="$(find /etc/prosody/conf.d/ -name \*.lua|awk -F'.cfg' '!/localhost/{print $1}'|xargs basename)"
|
DOMAIN="$(find /etc/prosody/conf.d/ -name \*.lua|awk -F'.cfg' '!/localhost/{print $1}'|xargs basename)"
|
||||||
MEET_CONF="/etc/jitsi/meet/$DOMAIN-config.js"
|
MEET_CONF="/etc/jitsi/meet/$DOMAIN-config.js"
|
||||||
WS_CONF="/etc/nginx/sites-available/$DOMAIN.conf"
|
WS_CONF="/etc/nginx/sites-available/$DOMAIN.conf"
|
||||||
|
@ -50,6 +60,7 @@ ETHERPAD_DB_USER="dockerpad"
|
||||||
ETHERPAD_DB_NAME="etherpad"
|
ETHERPAD_DB_NAME="etherpad"
|
||||||
ETHERPAD_DB_PASS="$(tr -dc "a-zA-Z0-9#*=" < /dev/urandom | fold -w 10 | head -n1)"
|
ETHERPAD_DB_PASS="$(tr -dc "a-zA-Z0-9#*=" < /dev/urandom | fold -w 10 | head -n1)"
|
||||||
DOCKER_CE_REPO="$(check_apt_policy docker)"
|
DOCKER_CE_REPO="$(check_apt_policy docker)"
|
||||||
|
WS_CONF_MATCH1="# ensure all static content can always be found first"
|
||||||
|
|
||||||
echo "Add Docker repo"
|
echo "Add Docker repo"
|
||||||
if [ "$DOCKER_CE_REPO" = "stable" ]; then
|
if [ "$DOCKER_CE_REPO" = "stable" ]; then
|
||||||
|
@ -105,14 +116,14 @@ if [ "$(grep -c etherpad "$WS_CONF")" != 0 ]; then
|
||||||
echo "> Webserver seems configured, skipping..."
|
echo "> Webserver seems configured, skipping..."
|
||||||
elif [ -f "$WS_CONF" ]; then
|
elif [ -f "$WS_CONF" ]; then
|
||||||
echo "> Setting up webserver configuration file..."
|
echo "> Setting up webserver configuration file..."
|
||||||
sed -i "/# ensure all static content can always be found first/i \ \ \ \ #Etherpad block" "$WS_CONF"
|
sed -i "/$WS_CONF_MATCH1/i \ \ \ \ #Etherpad block" "$WS_CONF"
|
||||||
sed -i "/# ensure all static content can always be found first/i \ \ \ \ location \^\~\ \/etherpad\/ {" "$WS_CONF"
|
sed -i "/$WS_CONF_MATCH1/i \ \ \ \ location \^\~\ \/etherpad\/ {" "$WS_CONF"
|
||||||
sed -i "/# ensure all static content can always be found first/i \ \ \ \ \ \ \ \ proxy_pass http:\/\/localhost:9001\/;" "$WS_CONF"
|
sed -i "/$WS_CONF_MATCH1/i \ \ \ \ \ \ \ \ proxy_pass http:\/\/localhost:9001\/;" "$WS_CONF"
|
||||||
sed -i "/# ensure all static content can always be found first/i \ \ \ \ \ \ \ \ proxy_set_header X-Forwarded-For \$remote_addr;" "$WS_CONF"
|
sed -i "/$WS_CONF_MATCH1/i \ \ \ \ \ \ \ \ proxy_set_header X-Forwarded-For \$remote_addr;" "$WS_CONF"
|
||||||
sed -i "/# ensure all static content can always be found first/i \ \ \ \ \ \ \ \ proxy_buffering off;" "$WS_CONF"
|
sed -i "/$WS_CONF_MATCH1/i \ \ \ \ \ \ \ \ proxy_buffering off;" "$WS_CONF"
|
||||||
sed -i "/# ensure all static content can always be found first/i \ \ \ \ \ \ \ \ proxy_set_header Host \$host;" "$WS_CONF"
|
sed -i "/$WS_CONF_MATCH1/i \ \ \ \ \ \ \ \ proxy_set_header Host \$host;" "$WS_CONF"
|
||||||
sed -i "/# ensure all static content can always be found first/i \ \ \ \ }" "$WS_CONF"
|
sed -i "/$WS_CONF_MATCH1/i \ \ \ \ }" "$WS_CONF"
|
||||||
sed -i "/# ensure all static content can always be found first/i \\\n" "$WS_CONF"
|
sed -i "/$WS_CONF_MATCH1/i \\\n" "$WS_CONF"
|
||||||
else
|
else
|
||||||
echo "> No etherpad config done to server file, please report to:
|
echo "> No etherpad config done to server file, please report to:
|
||||||
-> https://forge.switnet.net/switnet/quick-jibri-installer/issues"
|
-> https://forge.switnet.net/switnet/quick-jibri-installer/issues"
|
||||||
|
|
64
grafana.sh
64
grafana.sh
|
@ -43,11 +43,22 @@ systemctl enable "$1"
|
||||||
systemctl restart "$1"
|
systemctl restart "$1"
|
||||||
systemctl status "$1"
|
systemctl status "$1"
|
||||||
}
|
}
|
||||||
|
test_match() {
|
||||||
|
if grep -q "$1" "$2" ; then
|
||||||
|
echo "$(basename "$2") - OK..."
|
||||||
|
else
|
||||||
|
echo "$(basename "$2"), FAIL..."
|
||||||
|
echo "Please report this to https://forge.switnet.net/switnet/quick-jibri-installer"
|
||||||
|
exit
|
||||||
|
fi
|
||||||
|
}
|
||||||
MAIN_TEL="/etc/telegraf/telegraf.conf"
|
MAIN_TEL="/etc/telegraf/telegraf.conf"
|
||||||
TEL_JIT="/etc/telegraf/telegraf.d/jitsi.conf"
|
TEL_JIT="/etc/telegraf/telegraf.d/jitsi.conf"
|
||||||
GRAFANA_INI="/etc/grafana/grafana.ini"
|
GRAFANA_INI="/etc/grafana/grafana.ini"
|
||||||
DOMAIN="$(find /etc/prosody/conf.d/ -name \*.lua|awk -F'.cfg' '!/localhost/{print $1}'|xargs basename)"
|
DOMAIN="$(find /etc/prosody/conf.d/ -name \*.lua|awk -F'.cfg' '!/localhost/{print $1}'|xargs basename)"
|
||||||
WS_CONF="/etc/nginx/sites-available/$DOMAIN.conf"
|
WS_CONF="/etc/nginx/sites-available/$DOMAIN.conf"
|
||||||
|
WS_MATCH1="# ensure all static content can always be found first"
|
||||||
|
WS_MATCH2="upstream prosody {"
|
||||||
GRAFANA_PASS="$(tr -dc "a-zA-Z0-9#_*=" < /dev/urandom | fold -w 14 | head -n1)"
|
GRAFANA_PASS="$(tr -dc "a-zA-Z0-9#_*=" < /dev/urandom | fold -w 14 | head -n1)"
|
||||||
|
|
||||||
# Min requirements
|
# Min requirements
|
||||||
|
@ -57,11 +68,17 @@ apt-get install -y gnupg2 \
|
||||||
wget \
|
wget \
|
||||||
jq
|
jq
|
||||||
|
|
||||||
|
# Make sure we can rely on the match strings.
|
||||||
|
printf "> Testing match strings on config files.\n"
|
||||||
|
test_match "$WS_MATCH1" "$WS_CONF"
|
||||||
|
|
||||||
echo "
|
echo "
|
||||||
# Setup InfluxDB Packages
|
# Setup InfluxDB Packages
|
||||||
"
|
"
|
||||||
curl -s https://repos.influxdata.com/influxdata-archive.key > /etc/apt/trusted.gpg.d/influxdata-archive.key
|
curl -s https://repos.influxdata.com/influxdata-archive.key > \
|
||||||
echo "deb [signed-by=/etc/apt/trusted.gpg.d/influxdata-archive.key] https://repos.influxdata.com/debian buster stable" | sudo tee /etc/apt/sources.list.d/influxdb.list
|
/etc/apt/trusted.gpg.d/influxdata-archive.key
|
||||||
|
echo "deb [signed-by=/etc/apt/trusted.gpg.d/influxdata-archive.key] https://repos.influxdata.com/debian buster stable" | \
|
||||||
|
sudo tee /etc/apt/sources.list.d/influxdb.list
|
||||||
apt-get update && apt-get install influxdb -y
|
apt-get update && apt-get install influxdb -y
|
||||||
run_service influxdb
|
run_service influxdb
|
||||||
|
|
||||||
|
@ -70,7 +87,8 @@ echo "
|
||||||
"
|
"
|
||||||
curl -s https://apt.grafana.com/gpg-full.key | \
|
curl -s https://apt.grafana.com/gpg-full.key | \
|
||||||
gpg --dearmor | tee /etc/apt/trusted.gpg.d/grafana-full-key.gpg >/dev/null
|
gpg --dearmor | tee /etc/apt/trusted.gpg.d/grafana-full-key.gpg >/dev/null
|
||||||
add-apt-repository "deb https://packages.grafana.com/oss/deb stable main"
|
echo "deb https://packages.grafana.com/oss/deb stable main" | \
|
||||||
|
sudo tee /etc/apt/sources.list.d/grafana_com_oss_deb.list
|
||||||
apt-get update && apt-get install grafana -y
|
apt-get update && apt-get install grafana -y
|
||||||
run_service grafana-server
|
run_service grafana-server
|
||||||
|
|
||||||
|
@ -138,11 +156,13 @@ echo '
|
||||||
# extra options to pass to the JVB daemon
|
# extra options to pass to the JVB daemon
|
||||||
JVB_OPTS="--apis=rest,xmpp"' >> /etc/jitsi/videobridge/config
|
JVB_OPTS="--apis=rest,xmpp"' >> /etc/jitsi/videobridge/config
|
||||||
sed -i "s|TRANSPORT=muc|TRANSPORT=muc,colibri|" /etc/jitsi/videobridge/sip-communicator.properties
|
sed -i "s|TRANSPORT=muc|TRANSPORT=muc,colibri|" /etc/jitsi/videobridge/sip-communicator.properties
|
||||||
|
# Enable videobridge REST API
|
||||||
|
hocon -f /etc/jitsi/videobridge/jvb.conf set videobridge.apis.rest.enabled true
|
||||||
systemctl restart jitsi-videobridge2
|
systemctl restart jitsi-videobridge2
|
||||||
|
|
||||||
echo -e "\n# Setup Grafana nginx domain\n"
|
echo -e "\n# Setup Grafana nginx domain\n"
|
||||||
sed -i "s|;protocol =.*|protocol = http|" $GRAFANA_INI
|
sed -i "s|;protocol =.*|protocol = http|" $GRAFANA_INI
|
||||||
sed -i "s|;http_addr =.*|http_addr = localhost|" $GRAFANA_INI
|
sed -i "s|;http_addr =.*|http_addr = 127.0.0.1|" $GRAFANA_INI
|
||||||
sed -i "s|;http_port =.*|http_port = 3000|" $GRAFANA_INI
|
sed -i "s|;http_port =.*|http_port = 3000|" $GRAFANA_INI
|
||||||
sed -i "s|;domain =.*|domain = $DOMAIN|" $GRAFANA_INI
|
sed -i "s|;domain =.*|domain = $DOMAIN|" $GRAFANA_INI
|
||||||
sed -i "s|;enforce_domain =.*|enforce_domain = false|" $GRAFANA_INI
|
sed -i "s|;enforce_domain =.*|enforce_domain = false|" $GRAFANA_INI
|
||||||
|
@ -160,10 +180,30 @@ while [ $secs -gt 0 ]; do
|
||||||
done
|
done
|
||||||
|
|
||||||
if [ -f "$WS_CONF" ]; then
|
if [ -f "$WS_CONF" ]; then
|
||||||
sed -i "/# ensure all static content can always be found first/i \ \ \ \ location \~ \^\/(grafana\/|grafana\/login) {" "$WS_CONF"
|
sed -i "/$WS_MATCH1/i \ \ \ \ # Proxy Grafana." "$WS_CONF"
|
||||||
sed -i "/# ensure all static content can always be found first/i \ \ \ \ \ \ \ \ proxy_pass http:\/\/localhost:3000;" "$WS_CONF"
|
sed -i "/$WS_MATCH1/i \ \ \ \ location ~ ^/(grafana/|grafana/login) {" "$WS_CONF"
|
||||||
sed -i "/# ensure all static content can always be found first/i \ \ \ \ }" "$WS_CONF"
|
sed -i "/$WS_MATCH1/i \ \ \ \ \ \ proxy_set_header Host \$host;" "$WS_CONF"
|
||||||
sed -i "/# ensure all static content can always be found first/i \\\n" "$WS_CONF"
|
sed -i "/$WS_MATCH1/i \ \ \ \ \ \ proxy_pass http://grafana;" "$WS_CONF"
|
||||||
|
sed -i "/$WS_MATCH1/i \ \ \ \ }" "$WS_CONF"
|
||||||
|
sed -i "/$WS_MATCH1/i \\\n" "$WS_CONF"
|
||||||
|
sed -i "/$WS_MATCH1/i \ \ \ \ # Proxy Grafana Live WebSocket connections." "$WS_CONF"
|
||||||
|
sed -i "/$WS_MATCH1/i \ \ \ \ location /grafana/api/live/ {" "$WS_CONF"
|
||||||
|
sed -i "/$WS_MATCH1/i \ \ \ \ \ \ proxy_http_version 1.1;" "$WS_CONF"
|
||||||
|
sed -i "/$WS_MATCH1/i \ \ \ \ \ \ proxy_set_header Upgrade \$http_upgrade;" "$WS_CONF"
|
||||||
|
sed -i "/$WS_MATCH1/i \ \ \ \ \ \ proxy_set_header Connection \$connection_upgrade;" "$WS_CONF"
|
||||||
|
sed -i "/$WS_MATCH1/i \ \ \ \ \ \ proxy_set_header Host \$host;" "$WS_CONF"
|
||||||
|
sed -i "/$WS_MATCH1/i \ \ \ \ \ \ proxy_pass http://grafana;" "$WS_CONF"
|
||||||
|
sed -i "/$WS_MATCH1/i \ \ \ \ }" "$WS_CONF"
|
||||||
|
|
||||||
|
sed -i "/$WS_MATCH2/i # This is required to proxy Grafana Live WebSocket connections." "$WS_CONF"
|
||||||
|
sed -i "/$WS_MATCH2/i map \$http_upgrade \$connection_upgrade {" "$WS_CONF"
|
||||||
|
sed -i "/$WS_MATCH2/i \ \ default upgrade;" "$WS_CONF"
|
||||||
|
sed -i "/$WS_MATCH2/i \ \ '' close;" "$WS_CONF"
|
||||||
|
sed -i "/$WS_MATCH2/i }" "$WS_CONF"
|
||||||
|
sed -i "/$WS_MATCH1/i \\\n" "$WS_CONF"
|
||||||
|
sed -i "/$WS_MATCH2/i upstream grafana {" "$WS_CONF"
|
||||||
|
sed -i "/$WS_MATCH2/i \ \ server localhost:3000;" "$WS_CONF"
|
||||||
|
sed -i "/$WS_MATCH2/i }" "$WS_CONF"
|
||||||
systemctl restart nginx
|
systemctl restart nginx
|
||||||
else
|
else
|
||||||
echo "No app configuration done to server file, please report to:
|
echo "No app configuration done to server file, please report to:
|
||||||
|
@ -179,7 +219,7 @@ PUT -H "Content-Type: application/json;charset=UTF-8" -d \
|
||||||
\"oldPassword\": \"admin\",
|
\"oldPassword\": \"admin\",
|
||||||
\"newPassword\": \"$GRAFANA_PASS\",
|
\"newPassword\": \"$GRAFANA_PASS\",
|
||||||
\"confirmNew\": \"$GRAFANA_PASS\"
|
\"confirmNew\": \"$GRAFANA_PASS\"
|
||||||
}" http://localhost:3000/api/user/password; echo ""
|
}" http://127.0.0.1:3000/api/user/password; echo ""
|
||||||
|
|
||||||
echo "
|
echo "
|
||||||
# Create InfluxDB datasource
|
# Create InfluxDB datasource
|
||||||
|
@ -189,16 +229,16 @@ POST -H 'Content-Type: application/json;charset=UTF-8' -d \
|
||||||
'{
|
'{
|
||||||
"name": "InfluxDB",
|
"name": "InfluxDB",
|
||||||
"type": "influxdb",
|
"type": "influxdb",
|
||||||
"url": "http://localhost:8086",
|
"url": "http://127.0.0.1:8086",
|
||||||
"access": "proxy",
|
"access": "proxy",
|
||||||
"isDefault": true,
|
"isDefault": true,
|
||||||
"database": "jitsi"
|
"database": "jitsi"
|
||||||
}' http://localhost:3000/api/datasources; echo ""
|
}' http://127.0.0.1:3000/api/datasources; echo ""
|
||||||
|
|
||||||
echo "
|
echo "
|
||||||
# Add Grafana Dashboard
|
# Add Grafana Dashboard
|
||||||
"
|
"
|
||||||
grafana_host="http://localhost:3000"
|
grafana_host="http://127.0.0.1:3000"
|
||||||
grafana_cred="admin:$GRAFANA_PASS"
|
grafana_cred="admin:$GRAFANA_PASS"
|
||||||
grafana_datasource="InfluxDB"
|
grafana_datasource="InfluxDB"
|
||||||
ds=(11969);
|
ds=(11969);
|
||||||
|
|
|
@ -0,0 +1 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?><svg xmlns="http://www.w3.org/2000/svg" width="1" height="1"/>
|
After Width: | Height: | Size: 100 B |
36
jm-bm.sh
36
jm-bm.sh
|
@ -27,6 +27,7 @@ BUNDLE_JS="/usr/share/jitsi-meet/libs/app.bundle.min.js"
|
||||||
#
|
#
|
||||||
JM_IMG_PATH="/usr/share/jitsi-meet/images"
|
JM_IMG_PATH="/usr/share/jitsi-meet/images"
|
||||||
WTM2_PATH="$JM_IMG_PATH/watermark2.png"
|
WTM2_PATH="$JM_IMG_PATH/watermark2.png"
|
||||||
|
WTM2_SVG_PATH="$JM_IMG_PATH/watermark2.svg"
|
||||||
FICON_PATH="$JM_IMG_PATH/favicon2.ico"
|
FICON_PATH="$JM_IMG_PATH/favicon2.ico"
|
||||||
REC_ICON_PATH="$JM_IMG_PATH/gnome_record.png"
|
REC_ICON_PATH="$JM_IMG_PATH/gnome_record.png"
|
||||||
#
|
#
|
||||||
|
@ -36,29 +37,30 @@ PART_USER="Participant"
|
||||||
LOCAL_USER="me"
|
LOCAL_USER="me"
|
||||||
#
|
#
|
||||||
#SEC_ROOM="TBD"
|
#SEC_ROOM="TBD"
|
||||||
|
copy_if_not_there() {
|
||||||
|
if [ ! -f "$1" ]; then
|
||||||
|
cp images/"$(echo $1|xargs basename)" "$1"
|
||||||
|
else
|
||||||
|
echo "$(echo $1|xargs basename) file exists, skipping copying..."
|
||||||
|
fi
|
||||||
|
}
|
||||||
echo '
|
echo '
|
||||||
#--------------------------------------------------
|
#--------------------------------------------------
|
||||||
# Applying Brandless mode
|
# Applying Brandless mode
|
||||||
#--------------------------------------------------
|
#--------------------------------------------------
|
||||||
'
|
'
|
||||||
|
|
||||||
#Watermark
|
#Watermark
|
||||||
if [ ! -f "$WTM2_PATH" ]; then
|
copy_if_not_there "$WTM2_PATH"
|
||||||
cp images/watermark2.png "$WTM2_PATH"
|
|
||||||
else
|
#Watermark svg
|
||||||
echo "watermark2 file exists, skipping copying..."
|
copy_if_not_there "$WTM2_SVG_PATH"
|
||||||
fi
|
|
||||||
#Favicon
|
#Favicon
|
||||||
if [ ! -f "$FICON_PATH" ]; then
|
copy_if_not_there "$FICON_PATH"
|
||||||
cp images/favicon2.ico "$FICON_PATH"
|
|
||||||
else
|
|
||||||
echo "favicon2 file exists, skipping copying..."
|
|
||||||
fi
|
|
||||||
#Local recording icon
|
#Local recording icon
|
||||||
if [ ! -f "$REC_ICON_PATH" ];then
|
copy_if_not_there "$REC_ICON_PATH"
|
||||||
cp images/gnome_record.png "$REC_ICON_PATH"
|
|
||||||
else
|
|
||||||
echo "recording icon exists, skipping copying..."
|
|
||||||
fi
|
|
||||||
|
|
||||||
#Custom / Remove icons
|
#Custom / Remove icons
|
||||||
sed -i "s|watermark.png|watermark2.png|g" "$CSS_FILE"
|
sed -i "s|watermark.png|watermark2.png|g" "$CSS_FILE"
|
||||||
|
@ -70,6 +72,10 @@ sed -i "s|icon-cloud.png|gnome_record.png|g" "$BUNDLE_JS"
|
||||||
if ! grep -q ".leftwatermark{display:none" "$CSS_FILE" ; then
|
if ! grep -q ".leftwatermark{display:none" "$CSS_FILE" ; then
|
||||||
sed -i "s|.leftwatermark{|.leftwatermark{display:none;|" "$CSS_FILE"
|
sed -i "s|.leftwatermark{|.leftwatermark{display:none;|" "$CSS_FILE"
|
||||||
fi
|
fi
|
||||||
|
#Replace App logo
|
||||||
|
sed -i "s|// defaultLogoUrl: .*| defaultLogoUrl: 'images/watermark2.svg',|" "$MEET_CONF"
|
||||||
|
#Overwrite favicon svg
|
||||||
|
cp images/watermark2.svg $JM_IMG_PATH/favicon.svg
|
||||||
|
|
||||||
#Customize room title
|
#Customize room title
|
||||||
sed -i "s|Jitsi Meet|$APP_NAME|g" "$TITLE_FILE"
|
sed -i "s|Jitsi Meet|$APP_NAME|g" "$TITLE_FILE"
|
||||||
|
|
|
@ -59,7 +59,7 @@ DIR_RECORD="$(awk -F '"' '/RECORDING/{print$2}' /home/jibri/finalize_recording
|
||||||
REDIS_CONF="/etc/redis/redis.conf"
|
REDIS_CONF="/etc/redis/redis.conf"
|
||||||
JITSI_MEET_PROXY="/etc/nginx/modules-enabled/60-jitsi-meet.conf"
|
JITSI_MEET_PROXY="/etc/nginx/modules-enabled/60-jitsi-meet.conf"
|
||||||
[ -f "$JITSI_MEET_PROXY" ] && PREAD_PROXY=$(grep -nr "preread_server_name" "$JITSI_MEET_PROXY" | cut -d ":" -f1)
|
[ -f "$JITSI_MEET_PROXY" ] && PREAD_PROXY=$(grep -nr "preread_server_name" "$JITSI_MEET_PROXY" | cut -d ":" -f1)
|
||||||
PUBLIC_IP="$(dig +short myip.opendns.com @resolver1.opendns.com)"
|
PUBLIC_IP="$(dig -4 +short myip.opendns.com @resolver1.opendns.com)"
|
||||||
ISO3166_CODE=TBD
|
ISO3166_CODE=TBD
|
||||||
NL="$(printf '\n ')"
|
NL="$(printf '\n ')"
|
||||||
|
|
||||||
|
|
|
@ -567,18 +567,6 @@ do
|
||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
sleep .1
|
sleep .1
|
||||||
#Language
|
|
||||||
echo "## Setting up Jitsi Meet language ##
|
|
||||||
You can define the language, for a complete list of the supported languages
|
|
||||||
|
|
||||||
See here:
|
|
||||||
https://github.com/jitsi/jitsi-meet/blob/master/lang/languages.json"
|
|
||||||
printf "Jitsi Meet web interface will be set to use such language.\n\n"
|
|
||||||
sleep .1
|
|
||||||
read -p "Please set your language (Press enter to default to 'en'):$NL" -r JB_LANG
|
|
||||||
sleep .1
|
|
||||||
printf "\nWe'll take a minute to localize some UI excerpts if you need.\n\n"
|
|
||||||
sleep .1
|
|
||||||
#Participant
|
#Participant
|
||||||
printf "> Do you want to translate 'Participant' to your own language?\n"
|
printf "> Do you want to translate 'Participant' to your own language?\n"
|
||||||
sleep .1
|
sleep .1
|
||||||
|
@ -876,18 +864,17 @@ sed -i "s|conference.$DOMAIN|internal.auth.$DOMAIN|" "$MEET_CONF"
|
||||||
sed -i "s|// recordingService:|recordingService:|" "$MEET_CONF"
|
sed -i "s|// recordingService:|recordingService:|" "$MEET_CONF"
|
||||||
sed -i "/recordingService/,/hideStorageWarning/s|// enabled: false,| enabled: true,|" "$MEET_CONF"
|
sed -i "/recordingService/,/hideStorageWarning/s|// enabled: false,| enabled: true,|" "$MEET_CONF"
|
||||||
sed -i "/hideStorageWarning: false/,/Local recording configuration/s|// },|},|" "$MEET_CONF"
|
sed -i "/hideStorageWarning: false/,/Local recording configuration/s|// },|},|" "$MEET_CONF"
|
||||||
sed -i "s|// liveStreamingEnabled: false,|liveStreamingEnabled: true,\\
|
sed -i "/fileRecordingsServiceEnabled: false,/a \\
|
||||||
\\
|
hiddenDomain: \'recorder.$DOMAIN\'," "$MEET_CONF"
|
||||||
hiddenDomain: \'recorder.$DOMAIN\',|" "$MEET_CONF"
|
|
||||||
|
|
||||||
#Setup main language
|
##Setup main language
|
||||||
if [ -z "$JB_LANG" ] || [ "$JB_LANG" = "en" ]; then
|
#if [ -z "$JB_LANG" ] || [ "$JB_LANG" = "en" ]; then
|
||||||
echo "Leaving English (en) as default language..."
|
#echo "Leaving English (en) as default language..."
|
||||||
sed -i "s|// defaultLanguage: 'en',|defaultLanguage: 'en',|" "$MEET_CONF"
|
#sed -i "s|// defaultLanguage: 'en',|defaultLanguage: 'en',|" "$MEET_CONF"
|
||||||
else
|
#else
|
||||||
echo "Changing default language to: $JB_LANG"
|
#echo "Changing default language to: $JB_LANG"
|
||||||
sed -i "s|// defaultLanguage: 'en',|defaultLanguage: \'$JB_LANG\',|" "$MEET_CONF"
|
#sed -i "s|// defaultLanguage: 'en',|defaultLanguage: \'$JB_LANG\',|" "$MEET_CONF"
|
||||||
fi
|
#fi
|
||||||
|
|
||||||
# Recording directory
|
# Recording directory
|
||||||
if [ ! -d "$DIR_RECORD" ]; then
|
if [ ! -d "$DIR_RECORD" ]; then
|
||||||
|
@ -1197,9 +1184,11 @@ sed -i "s|// startAudioMuted: 10,|startAudioMuted: 1,|" "$MEET_CONF"
|
||||||
|
|
||||||
#Disable/enable welcome page
|
#Disable/enable welcome page
|
||||||
if [ "$ENABLE_WELCP" = "yes" ]; then
|
if [ "$ENABLE_WELCP" = "yes" ]; then
|
||||||
sed -i "s|.*enableWelcomePage:.*| enableWelcomePage: false,|" "$MEET_CONF"
|
sed -i "/ welcomePage: {/,/},/s|// ||" "$MEET_CONF"
|
||||||
|
sed -i "/ welcomePage: {/,/},/s|disabled: .*,|disabled: true,|" "$MEET_CONF"
|
||||||
elif [ "$ENABLE_WELCP" = "no" ]; then
|
elif [ "$ENABLE_WELCP" = "no" ]; then
|
||||||
sed -i "s|.*enableWelcomePage:.*| enableWelcomePage: true,|" "$MEET_CONF"
|
sed -i "/ welcomePage: {/,/},/s|// ||" "$MEET_CONF"
|
||||||
|
sed -i "/ welcomePage: {/,/},/s|disabled: .*,|disabled: false,|" "$MEET_CONF"
|
||||||
fi
|
fi
|
||||||
#Enable close page
|
#Enable close page
|
||||||
if [ "$ENABLE_CLOCP" = "yes" ]; then
|
if [ "$ENABLE_CLOCP" = "yes" ]; then
|
||||||
|
|
Loading…
Reference in New Issue