Call Us Today! 877.742.2583




Page tree

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

THIS PAGE IS BEING RETIRED, USE Debian 8 Jessie INSTEADUSE Debian 10 Buster (Obsolete) INSTEAD. MOST OF THESE STEPS HAVE ALREADY BEEN INTEGRATED INTO THE PACKAGES.

 

 

 

 

 

 

 

 

...

 

 

 

 

 

 

 

 

 



















About

Detailed information on how to properly build and test the new

Fs
 1.6 with awesome video conferencing support.

...

For more info, check out mod_conference page. Let's get all these new features configured!

 


Installation

Setting up the repos

...

Code Block
languagebash
titleEnabling optional modules
perl -i -pe 's/#applications\/mod_av/applications\/mod_av/g' modules.conf

 


Let's make and install the project:

...

Code Block
ln -s /usr/src/freeswitch.git/html5/verto/video_demo /var/www/html/verto
mkdir -p /var/www/html/sounds/

...


Dialplan:

Code Block
cp -f /usr/src/freeswitch.git/html5/verto/video_demo/dp/dp.xml /usr/local/freeswitch/conf/dialplan/default/0000_dp.xml
fs_cli -x 'reloadxml'

...

Warning

The proper way to fix this is by changing your default password to something more secure. Change it ASAP.

 


Bridging from WebRTC (mod_verto) to PSTN/ITSPs

...

Code Block
<extension name="itsp_send_call">
<condition field="destination_number" expression="^(\d+)$">
<action application="answer"/>
<action application="playback" data="silence_stream://2000"/>
<action application="set" data="effective_caller_id_number=333444555"/>
<action application="set" data="effective_caller_id_name=ciaociaociao"/>
<action application="bridge" data="{absolute_codec_string=pcmu}sofia/gateway/itsp/$1"/>
</condition>
</extension>

 


Starting FreeSWITCH

The default and preferred init system on Debian 8 (and CentOS 7) is Systemd. If you didn't revert to system V and you're compiling Freeswitch like you are, the building mechanism now recognises that you're using a Systemd based distribution and it will offer you a script that will create the required user and group and install the Systemd files, so you can just start Freeswitch. You can install it using:

...

Because you most likely built

Fs
as root you must now create the user 'freeswitch' in group 'freeswitch' and change the FS files to owner = freeswitch and group = freeswitch and set the file mode appropriately. Execute the following commands as user root:

 


Code Block
languagebash
titleSet owner and permissions
# create user 'freeswitch'
# add it to group 'freeswitch'
# change owner and group of the freeswitch installation
cd /usr/local
groupadd freeswitch
adduser --disabled-password  --quiet --system --home /usr/local/freeswitch --gecos "FreeSWITCH open source softswitch" --ingroup freeswitch freeswitch
chown -R freeswitch:freeswitch /usr/local/freeswitch/ 
chmod -R ug=rwX,o= /usr/local/freeswitch/
chmod -R u=rwx,g=rx /usr/local/freeswitch/bin/*

 


systemd

systemd is the replacement service management system that replaces System V init. It is quite thorough and requires much simpler configuration scripts called Unit Files. systemd can start

Fs
at boot time, monitor the application, restart it if it fails, and take other useful actions.

...

Code Block
languagebash
titlesystemd unit file FreeSWITCH built from MASTER
; This file in installations built from Master can be found in 
; /usr/src/freeswitch.git/debian
; or
; /usr/src/freeswitch/debian
[Unit]
Description=freeswitch
After=syslog.target network.target local-fs.target

[Service]
; service
Type=forking
PIDFile=/usr/local/freeswitch/run/freeswitch.pid
PermissionsStartOnly=true
ExecStart=/usr/local/freeswitch/bin/freeswitch -u freeswitch -g freeswitch -ncwait -nonat -rp
TimeoutSec=45s
Restart=on-failure
; exec
WorkingDirectory=/usr/local/freeswitch/bin
User=root
Group=daemon
LimitCORE=infinity
LimitNOFILE=100000
LimitNPROC=60000
;LimitSTACK=240
LimitRTPRIO=infinity
LimitRTTIME=7000000
IOSchedulingClass=realtime
IOSchedulingPriority=2
CPUSchedulingPolicy=rr
CPUSchedulingPriority=89
UMask=0007

[Install]
WantedBy=multi-user.target

...


Now that the systemd unit file has been set up, you can copy it to the /etc/systemd/system directory where systemd looks for local customized files that won't be overwritten by systemd updates. Linking is possible to, but will give you issues when enabling (https://bugzilla.redhat.com/show_bug.cgi?id=955379)

...

Code Block
themeEmacs
titleVideo Layouts
freeswitch@internal> conference 3200-my.domain vid-layout
[      1up_top_left+5]	[      1up_top_left+7]	[      1up_top_left+9]	[                 1x1]
[                 1x2]	[        2up_bottom+8]	[        2up_middle+8]	[           2up_top+8]
[                 2x1]	[                 2x2]	[               3up+4]	[               3up+9]
[                 3x3]	[                 4x4]	[                 5x5]	[                 6x6]
[                 8x8]	[            overlaps]	[presenter-dual-horizontal]	[presenter-dual-vertical]
[presenter-overlap-large-bot-right]	[presenter-overlap-large-top-right]	[presenter-overlap-small-bot-right]	[presenter-overlap-small-top-right]


freeswitch@internal> conference 3200-video.evolux.net.br vid-layout 3up+4
Change to layout [3up+4]
freeswitch@internal>

 


Conference

All the new APIs and variables of 

Fs
 1.6 are already documented on mod_conference page. 

...

presenter-overlap-small-top-right

 

 

...