Compare commits
	
		
			7 Commits
		
	
	
		
			a290c636ba
			...
			b8e1ee292f
		
	
	| Author | SHA1 | Date | 
|---|---|---|
|  | b8e1ee292f | |
|  | 8ff04e8850 | |
|  | 9753cf1bcb | |
|  | 647bce26e6 | |
|  | 1638096ba7 | |
|  | 998ca69ddf | |
|  | 9a5364b2c6 | 
|  | @ -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