OPENSER XLOG INSTALL
configure -prefix=/opt/freeswitch-git -enable-core-odbc-support make make install make sounds-install make moh-install bootstrap.sh Edit nf depending on your needs. Install dependencies apt-get install subversion subversion-tools automake1.9 gcc-4.1 autoconf make wget libtool g++ libncurses5 libncurses5-dev apt-get install debhelper automake1.9 autoconf libtool unixodbc-dev libasound2-dev libcurl4-openssl-dev libssl-dev libogg-dev libvorbis-dev libperl-dev libgdbm-dev libdb-dev libgnutls-dev libspandsp-dev libtiff4-devĭownload FreeSWITCH latest Git and put them in /opt/sources/freewitch cd /opt/sources/ git clone git:///freeswitch.git freeswitch-git cd freeswitch-git. Install utils for compilation apt-get install build-essential Installation of FreeSWITCH Install text editor apt-get install emacs22-noxĭisable useless services /etc/init.d/exim4 stop update-rc.d -f exim4 remove /etc/init.d/portmap stop update-rc.d -f portmap remove /etc/init.d/nfs-common stop update-rc.d -f nfs-common removeĬheck TCP or UDP services running netstat -tnlp only SSH (port 22) should be listening netstat -unlp only dhclient3 (port 68) should be listening (I need dhcp for my tests and to get an IP for administration of the test server) Install Packet Capture packages apt-get install ngrep apt-get install tshark apt-get install tcpdump Install Bridge packages apt-get install bridge-utils Install Vlan packages apt-get install vlan Install SSH Server for remote administration apt-get install openssh-server
OPENSER XLOG UPDATE
Upgrade debian distribution apt-get update apt-get dist-upgrade Install Debian stable netinstall (64 bits version, take care you need a 64bit processor) Use the XML CURL module to process the call routing using your preferred script language running on yout HTTP server. Other ways to go to achieve the same (not tested) Try mod_lcr that has been introduced in FS 1.0.3 and report on the list and Wiki.
OPENSER XLOG FREE
(For everybody that has a better internal knowledge of FS than me, feel free to correct this assumption). I'm feeling that if you want to process more call per seconds (more than 100 CPS), the fact that the Sofia library is monothreaded and that it has to deal with one more session (FS to Kamailio) before processing the call to the Peer could prevent FS to reach a higher CPS rate. Correct call per second rate: up to 100cps.ĭrawbacks Each INVITE you send to FS will first send an INVITE to Kamailio, and once FS receives the Kamailio answer, FS will bridge the call to the Peer that will process the call. Scalable: some people are using carrierroute module with LCR table up to 1 million entries. FS version was 1.2 at this time.Īdvantages Stable with quite huge routing table: Kamailio was using less than 3% CPU when doing the SIPP tests with 160 000 entries in LCR table. I ran some tests using SIPP with 750 simultaneous calls and between 50 to 100 calls per second (CPS) for more than 10 days with 25%-30% CPU ressource free. I extensively tested this setup on an Intel Quad Core server (Q9550 running at 2.83Ghz with 8GB RAM. This design has been choosen cause I needed a way to store big LCR table (it's now more than 450 000 routes on the production server) and LCR module was not available when I began playing with FS (version 1.0.1). So Kamailio is used only for route lookup by FS, and FS is the only equipment that is seen in the SIP transaction. If Kamailio has no route for the dialed number, it replies with a "604 unable to route the call" that FS will relay.
The call is then transfered in the context ROUTING where FS will match the associated Gateway (in this setup it is an associated code) that will route the call. In this extension, FS sends the INVITE to Kamailio, that will replies with a 302 Redirect SIP message that contains the route FS has to use to reach the number dialed.
When FS receives an INVITE, FS fires this event in the default context, where it always matches the extension named LOOKUP_ROUTE.