|
@@ -316,6 +316,8 @@ GET_IP_ADDRESS_URL="checkip.two-dns.de"
|
316
|
316
|
VOIP_SERVER_PASSWORD=
|
317
|
317
|
# Port on which VoIP server listens
|
318
|
318
|
VOIP_PORT=64738
|
|
319
|
+SIP_SERVER_PASSWORD=
|
|
320
|
+SIP_PORT=5060
|
319
|
321
|
|
320
|
322
|
# Location of VoIP database and configuration
|
321
|
323
|
VOIP_DATABASE="mumble-server.sqlite"
|
|
@@ -10685,6 +10687,16 @@ function get_voip_server_password {
|
10685
|
10687
|
fi
|
10686
|
10688
|
}
|
10687
|
10689
|
|
|
10690
|
+function get_sip_server_password {
|
|
10691
|
+ if [ -f /home/$MY_USERNAME/README ]; then
|
|
10692
|
+ if grep -q "SIP server password" /home/$MY_USERNAME/README; then
|
|
10693
|
+ if [ ! $SIP_SERVER_PASSWORD ]; then
|
|
10694
|
+ SIP_SERVER_PASSWORD=$(cat /home/$MY_USERNAME/README | grep "SIP server password" | awk -F ':' '{print $2}' | sed 's/^ *//')
|
|
10695
|
+ fi
|
|
10696
|
+ fi
|
|
10697
|
+ fi
|
|
10698
|
+}
|
|
10699
|
+
|
10688
|
10700
|
function install_ipfs {
|
10689
|
10701
|
if [[ $SYSTEM_TYPE == "$VARIANT_CHAT" || $SYSTEM_TYPE == "$VARIANT_MAILBOX" ]]; then
|
10690
|
10702
|
return
|
|
@@ -10886,6 +10898,80 @@ function install_voip {
|
10886
|
10898
|
echo 'install_voip' >> $COMPLETION_FILE
|
10887
|
10899
|
}
|
10888
|
10900
|
|
|
10901
|
+function install_sip {
|
|
10902
|
+ if [[ $SYSTEM_TYPE == "$VARIANT_WRITER" || $SYSTEM_TYPE == "$VARIANT_MAILBOX" || $SYSTEM_TYPE == "$VARIANT_CLOUD" || $SYSTEM_TYPE == "$VARIANT_SOCIAL" || $SYSTEM_TYPE == "$VARIANT_MEDIA" || $SYSTEM_TYPE == "$VARIANT_DEVELOPER" ]]; then
|
|
10903
|
+ return
|
|
10904
|
+ fi
|
|
10905
|
+ if grep -Fxq "install_sip" $COMPLETION_FILE; then
|
|
10906
|
+ return
|
|
10907
|
+ fi
|
|
10908
|
+
|
|
10909
|
+ apt-get -y install sipwitch
|
|
10910
|
+
|
|
10911
|
+ get_sip_server_password
|
|
10912
|
+ if [ ! $SIP_SERVER_PASSWORD ]; then
|
|
10913
|
+ SIP_SERVER_PASSWORD="$(openssl rand -base64 10)"
|
|
10914
|
+ fi
|
|
10915
|
+
|
|
10916
|
+ echo '<?xml version="1.0"?>' > /etc/sipwitch.conf
|
|
10917
|
+ echo '<sipwitch>' >> /etc/sipwitch.conf
|
|
10918
|
+ echo '<provision>' >> /etc/sipwitch.conf
|
|
10919
|
+
|
|
10920
|
+ echo "<user id=\"$MY_USERNAME\">" >> /etc/sipwitch.conf
|
|
10921
|
+ echo '<extension>201</extension>' >> /etc/sipwitch.conf
|
|
10922
|
+ echo "<secret>$SIP_SERVER_PASSWORD</secret>" >> /etc/sipwitch.conf
|
|
10923
|
+ echo "<display>$MY_USERNAME 201</display>" >> /etc/sipwitch.conf
|
|
10924
|
+ echo '</user>' >> /etc/sipwitch.conf
|
|
10925
|
+
|
|
10926
|
+ echo '</provision>' >> /etc/sipwitch.conf
|
|
10927
|
+ echo '<access>' >> /etc/sipwitch.conf
|
|
10928
|
+ echo '</access>' >> /etc/sipwitch.conf
|
|
10929
|
+ echo '<stack>' >> /etc/sipwitch.conf
|
|
10930
|
+ echo " <localnames>$DEFAULT_DOMAIN_NAME</localnames>" >> /etc/sipwitch.conf
|
|
10931
|
+ echo ' <mapped>200</mapped>' >> /etc/sipwitch.conf
|
|
10932
|
+ echo ' <threading>2</threading>' >> /etc/sipwitch.conf
|
|
10933
|
+ echo ' <interface>*</interface>' >> /etc/sipwitch.conf
|
|
10934
|
+ echo ' <dumping>false</dumping>' >> /etc/sipwitch.conf
|
|
10935
|
+ echo ' <system>system</system>' >> /etc/sipwitch.conf
|
|
10936
|
+ echo ' <anon>anonymous</anon>' >> /etc/sipwitch.conf
|
|
10937
|
+ echo '</stack>' >> /etc/sipwitch.conf
|
|
10938
|
+ echo '<timers>' >> /etc/sipwitch.conf
|
|
10939
|
+ echo ' <!-- ring every 4 seconds -->' >> /etc/sipwitch.conf
|
|
10940
|
+ echo ' <ring>4</ring>' >> /etc/sipwitch.conf
|
|
10941
|
+ echo ' <!-- call forward no answer after x rings -->' >> /etc/sipwitch.conf
|
|
10942
|
+ echo ' <cfna>4</cfna>' >> /etc/sipwitch.conf
|
|
10943
|
+ echo ' <!-- call reset to clear cid in stack, 6 seconds -->' >> /etc/sipwitch.conf
|
|
10944
|
+ echo ' <reset>6</reset>' >> /etc/sipwitch.conf
|
|
10945
|
+ echo '</timers>' >> /etc/sipwitch.conf
|
|
10946
|
+ echo '<!-- we have 2xx numbers plus space for external users -->' >> /etc/sipwitch.conf
|
|
10947
|
+ echo '<registry>' >> /etc/sipwitch.conf
|
|
10948
|
+ echo ' <prefix>200</prefix>'
|
|
10949
|
+ echo ' <range>100</range>' >> /etc/sipwitch.conf
|
|
10950
|
+ echo ' <keysize>77</keysize>' >> /etc/sipwitch.conf
|
|
10951
|
+ echo ' <mapped>200</mapped>' >> /etc/sipwitch.conf
|
|
10952
|
+ echo ' <!-- <realm>GNU Telephony</realm> -->' >> /etc/sipwitch.conf
|
|
10953
|
+ echo '</registry>' >> /etc/sipwitch.conf
|
|
10954
|
+ echo '<routing>' >> /etc/sipwitch.conf
|
|
10955
|
+ echo '</routing>' >> /etc/sipwitch.conf
|
|
10956
|
+ echo '</sipwitch>' >> /etc/sipwitch.conf
|
|
10957
|
+
|
|
10958
|
+ service sipwitch start
|
|
10959
|
+
|
|
10960
|
+ if ! grep -q "SIP Server" /home/$MY_USERNAME/README; then
|
|
10961
|
+ echo '' >> /home/$MY_USERNAME/README
|
|
10962
|
+ echo '' >> /home/$MY_USERNAME/README
|
|
10963
|
+ echo 'SIP Server' >> /home/$MY_USERNAME/README
|
|
10964
|
+ echo '==========' >> /home/$MY_USERNAME/README
|
|
10965
|
+ echo "SIP server username: $MY_USERNAME" >> /home/$MY_USERNAME/README
|
|
10966
|
+ echo "SIP server extension: 201" >> /home/$MY_USERNAME/README
|
|
10967
|
+ echo "SIP server password: $SIP_SERVER_PASSWORD" >> /home/$MY_USERNAME/README
|
|
10968
|
+ chown $MY_USERNAME:$MY_USERNAME /home/$MY_USERNAME/README
|
|
10969
|
+ chmod 600 /home/$MY_USERNAME/README
|
|
10970
|
+ fi
|
|
10971
|
+
|
|
10972
|
+ echo 'install_sip' >> $COMPLETION_FILE
|
|
10973
|
+}
|
|
10974
|
+
|
10889
|
10975
|
function install_final {
|
10890
|
10976
|
if grep -Fxq "install_final" $COMPLETION_FILE; then
|
10891
|
10977
|
return
|
|
@@ -10993,6 +11079,7 @@ configure_firewall_for_xmpp
|
10993
|
11079
|
install_irc_server
|
10994
|
11080
|
configure_firewall_for_irc
|
10995
|
11081
|
install_voip
|
|
11082
|
+install_sip
|
10996
|
11083
|
install_wiki
|
10997
|
11084
|
install_blog
|
10998
|
11085
|
mark_blog_domain
|