bigbluebutton-Github/build/packages-template/bbb-webrtc-sfu/after-install.sh

111 lines
3.6 KiB
Bash
Raw Normal View History

#!/bin/bash -ex
2021-08-13 18:53:18 +08:00
source /etc/lsb-release
case "$1" in
configure|upgrade|1|2)
TARGET=/usr/local/bigbluebutton/bbb-webrtc-sfu/config/default.yml
cp /usr/local/bigbluebutton/bbb-webrtc-sfu/config/default.example.yml $TARGET
chown bigbluebutton:bigbluebutton $TARGET
# yq e -i ".kurento[0].ip = \"$IP\"" $TARGET
2021-08-13 18:53:18 +08:00
# https://github.com/bigbluebutton/bbb-webrtc-sfu/pull/37
# yq w -i $TARGET kurento[0].url "ws://$SERVER_URL:8888/kurento"
# Set mediasoup IPs
2023-07-19 22:24:52 +08:00
yq e -i ".mediasoup.webrtc.listenIps[0].announcedIp = \"$IP\"" $TARGET
yq e -i ".mediasoup.plainRtp.listenIp.announcedIp = \"$IP\"" $TARGET
2021-08-13 18:53:18 +08:00
FREESWITCH_IP=$(xmlstarlet sel -t -v '//X-PRE-PROCESS[@cmd="set" and starts-with(@data, "local_ip_v4=")]/@data' /opt/freeswitch/conf/vars.xml | sed 's/local_ip_v4=//g')
if [ "$FREESWITCH_IP" != "" ]; then
2023-07-19 22:24:52 +08:00
yq e -i ".freeswitch.ip = \"$FREESWITCH_IP\"" $TARGET
yq e -i ".freeswitch.sip_ip = \"$IP\"" $TARGET
2021-08-13 18:53:18 +08:00
else
# Looks like the FreeSWITCH package is being installed, let's fall back to the default value
2023-07-19 22:24:52 +08:00
yq e -i ".freeswitch.ip = \"$IP\"" $TARGET
if [ "$DISTRIB_CODENAME" == "focal" ]; then
yq e -i ".freeswitch.sip_ip = \"$IP\"" $TARGET
fi
2021-08-13 18:53:18 +08:00
fi
cd /usr/local/bigbluebutton/bbb-webrtc-sfu
mkdir -p node_modules
# there's a problem rebuilding bufferutil
# do not abort in case npm rebuild return something different than 0
#npm config set unsafe-perm true
#npm rebuild || true
2021-08-13 18:53:18 +08:00
mkdir -p /var/log/bbb-webrtc-sfu/
touch /var/log/bbb-webrtc-sfu/bbb-webrtc-sfu.log
2023-07-19 22:24:52 +08:00
yq e -i '.recordWebcams = true' $TARGET
# Set bbb-webrtc-recorder as the default recordingAdapter
yq e -i '.recordingAdapter = "bbb-webrtc-recorder"' $TARGET
# Do not configure any Kurento instances - BBB >= 2.8 doesn't provide Kurento by default
yq e -i '.kurento = []' $TARGET
2023-06-21 21:14:32 +08:00
echo "Resetting mcs-address from localhost to 127.0.0.1"
yq e -i '.mcs-address = "127.0.0.1"' $TARGET
2021-08-13 18:53:18 +08:00
if id bigbluebutton > /dev/null 2>&1 ; then
chown -R bigbluebutton:bigbluebutton /usr/local/bigbluebutton/bbb-webrtc-sfu /var/log/bbb-webrtc-sfu/
else
echo "#"
echo "# Warning: Unable to assign ownership of bigbluebutton to sfu files"
2021-08-13 18:53:18 +08:00
echo "#"
fi
# Creates the mediasoup raw media file dir if needed
if [ ! -d /var/mediasoup ]; then
mkdir -p /var/mediasoup
fi
2021-08-13 18:53:18 +08:00
# Create a symbolic link from /var/kurento -> /var/lib/kurento if needed
# if [ ! -d /var/kurento ]; then
# if [ -d /var/lib/kurento ]; then
# ln -s /var/lib/kurento /var/kurento
# fi
# fi
2021-08-13 18:53:18 +08:00
chmod 644 $TARGET
chown bigbluebutton:bigbluebutton $TARGET
# if [ ! -d /var/log/kurento-media-server ]; then
# mkdir -p /var/log/kurento-media-server
# fi
2021-08-13 18:53:18 +08:00
# chown kurento:root /var/log/kurento-media-server
2021-08-13 18:53:18 +08:00
# Ensure a default port range is setup
# if ! grep -v '^;' /etc/kurento/modules/kurento/BaseRtpEndpoint.conf.ini | grep -q minPort; then
# cat >> /etc/kurento/modules/kurento/BaseRtpEndpoint.conf.ini << HERE
2021-08-13 18:53:18 +08:00
# # Added by bbb-webrtc-sfu.postinst $(date)
# minPort=24577
# maxPort=32768
# HERE
# fi
2021-08-13 18:53:18 +08:00
2022-03-15 03:04:23 +08:00
# Check if using Kurento packages with focal
2021-08-13 18:53:18 +08:00
reloadService nginx
startService bbb-webrtc-sfu || echo "bbb-webrtc-sfu could not be registered or started"
# startService kurento-media-server || echo "kurento-media-serve could not be registered or started"
2021-08-13 18:53:18 +08:00
;;
abort-upgrade|abort-remove|abort-deconfigure)
;;
*)
echo "postinst called with unknown argument \`$1'" >&2
exit 1
;;
esac