Welcome To FreeSWITCH

The World's First Cross-Platform Scalable FREE Multi-Protocol Soft Switch

FreeSWITCH is a scalable open source cross-platform telephony platform designed to route and interconnect popular communication protocols using audio, video, text or any other form of media.  It was created in 2006 to fill the void left by proprietary commercial solutions. FreeSWITCH also provides a stable telephony platform on which many telephony applications can be developed using a wide range of free tools. More

Freeswitch Week in Review(Master Branch) April 13th-19th

Submitted by kathleen on Tue, 04/22/2014 - 19:49

Hello, again. This week in the FreeSWITCH master branch we had 25 commits. It was a relatively quiet week with various bugs and tweaks to various things.
REMINDER: If you register for ClueCon before May 1st you can save $100 dollars by locking in last year's price using the code CLUECON2013! And speaker proposals are still being accepted! If you have a topic you would like to tell us about email a proposal to marketing@cluecon.com.
The following bugs were squashed:
b0c2c6d FS-6447 --resolve return subscriber-absent platform-code 20 if <dial> is attempted to user that is not registered
Jira: http://jira.freeswitch.org/browse/FS-6447
8ce6198 fixed a bug in ESL dispatch
6e8729a OPENZAP-222 fixed caller_ton in libpri
190c241 FS-6452 fixed no reaction on events without variable_domain_name in mod_spy
Jira: http://jira.freeswitch.org/browse/FS-6452
bf093e9 Dispatch will call you on register, and call you back if you hangup on next register
ae69c5a FS-6407 --resolve support SIP URI caller ID w/ display name in mod_rayo
Jira: http://jira.freeswitch.org/browse/FS-6407
New features that were added:
79ebcb1 add enable-chat sofia profile param which defaults to true when not present, set to false to turn off the chat interface in sofia
295964f FS-6457 --resolve Upgrade to OpenSSL 1.0.1g in Windows build (Visual Studio 2010 and 2012)
Jira: http://jira.freeswitch.org/browse/FS-6457
0526381 add parsing of user params on invite in mod_sofia
265de3d added the variable variable_sip_to_user as a username to allow eavesdropping on the local endpoint in mod_spy
Jira: http://jira.freeswitch.org/browse/FS-6082
b99ef3a add SWITCH_MESSAGE_HEARTBEAT_EVENT indication to execute on a session when session heartbeat fires
a4a7924 add generic keepalive system and implement it in sofia to send MESSAGE or INFO packets in-dialog at specified interval.
Improvements in cross platform build supports:
bb22179 FS-6459: --resolve fix srcdir build running modcheck
Jira: http://jira.freeswitch.org/browse/FS-6459
In terms of stability these were the use cases that were fixed:
93a84cf FS-6460 --resolve fix leaked RTP ports that cause mod_skinny to fail after N calls
Jira: http://jira.freeswitch.org/browse/FS-6460
748b7de Get rid of a small memory leak when the configs are reloaded in mod_enum
96523a9 FS-6460 --resolve fix leaked RTP ports that cause mod_skinny to fail after N calls

Freeswitch Week in Review(Master Branch) April 6th-12th

Submitted by kathleen on Tue, 04/15/2014 - 21:36

Hello, again. This week in the FreeSWITCH master branch we had 51 commits. This week was mostly filled with miscellaneous work toward clean up and stability fixes. If you are interested in seeing more details about what was committed, please see the attached text document.
In other news, ClueCon is still looking for presentation proposals to be submitted to marketing@cluecon.com. If you have a topic that you think people would be interested in hearing about, please send in a proposal!
The following bugs were squashed:
f1d7721 FS-6448 --resolve revert string func patch because some things free it
Jira: http://jira.freeswitch.org/browse/FS-6448
72c5205 FS-6436 disable PLI and instead only use FIR in switch_core_media
Jira: http://jira.freeswitch.org/browse/FS-6436
7428746 fixed allowance of duplicate keys in switch_hashtable
Jira: http://jira.freeswitch.org/browse/FS-6453
de7d5a9 Resolve key length issue with AES GCM 128/256
a31491d pulling in a patch to fix a bug with AES_GCM and key size in libsrtp
80e2034 fixed read of memory out of 'seq' variable bounds and fixed AEAD IV calculation for big-endian machines
Improvements in cross platform build supports:
7bc92a1 ESL-89: fix install path and single_command require
23fe7f5 Add libyaml pkg-config LIBS to LIBADD not LDFLAGS
c915139 Make sure to copy pcre.h to library path, when building Win32/Debug in VS2012.
d6fa81b ESL-89: --resolve add rubymod-install and add ability to use a ruby not in your path by setting RUBY env var
4bdb712 FS-353 Ungetlib libmemcached
c86b939 FS-353 Show message in configure when YAML isn't there
In terms of stability these were the use cases that were fixed:
2ace7bc Fix memory leak in phrase macro playback in switch_ivr_play_say
264a12a fix memory corruption in dial, input, output in mod_rayo
3f8cf4a Fix memory leak in subscription handling in mod_sofia
886a730 Avoid leaking memory on mod_hash unload
a866239 fixed input crash introduced in 2014-04-07 commit in mod_rayo
711e49c fixed leaking hash tables when reloading mod_fifo
65fd534 fixed a segfault in console autocomplete when calling delete with no argument
2dba7dd Avoid leaking memory on mod_cdr_sqlite unload
aae1954 FS-6442 fixed a mem leak on abandoned pickup calls in mod_dptools
Jira: http://jira.freeswitch.org/browse/FS-6442
237da22 Avoid leaking memory on unload of mod_dptools
f754057 ESL-90 fixed crash caused by receiving an event without a content-type header in esl
39f960a Avoid leaking memory on mod_voicemail unload
1a71cf8 Fix memory leak on memory error in switch_ivr_play_say
4178688 add switch_hashtable_insert_destructor so you can insert a pointer into a hash with a custom destructor and use it in spandsp to fix a leak on reloadxml with the tone_descriptor tables and fix a bunch of random tiny leaks etc

FreeSWITCH Announcements

Submitted by kathleen on Tue, 04/08/2014 - 18:31

ClueCon is looking for presentation proposals! Being an open source IP communications conference created by developers, for developers, means we are interested in hearing from a wide variety of tech community members. Do you have a topic that you think the community might be interested in hearing about? Then we want you! ClueCon is the place to be to learn about all the latest VoIP and telephony news and meet up with other developers and tech enthusiasts. Would you like to talk about security or open source software? Do you know someone that does? Spread the word! There is a special interest in voice, open source, and security topics for this year's conference, and highly technical talks with live demonstrations are always appreciated. A typical ClueCon talk is 30 minutes long including some Q&A time with the audience. We'll publish the schedule after reviewing all of the submissions.
Please send your proposals to marketing@cluecon.com and make sure you include your working title, a brief description of the talk (abstract), and the name of the presenter. Don't delay, there are a limited number of openings!
And if you register for ClueCon before May 1st you can lock in last year's price saving you $100 using the code CLUECON2013. So act fast!
Can't get enough of open source telephony? There is a wonderful opportunity to attend official FreeSWITCH training in Milwaukee, Wisconsin. Training will be held July 23rd - 25th, so sign up using the following link to reserve your seat! http://www.eventbrite.com/e/official-freeswitch-training-milwaukee-ticke...

FreeSWITCH development Week in Review March 30th-April 5th

Submitted by kathleen on Tue, 04/08/2014 - 16:02

Hello, again. This week in the FreeSWITCH master branch we had 52 commits. We saw the addition of mod_basic to the FS languages to celebrate April Fool's day here in the US. Although it was added in the spirit of practical jokes, the addition of mod_basic highlights the extensive versatility of FS.
There was a continued drive toward improving build support for platforms such as BSD and Mac and mixed into this build work are large changes in functionally, such as ticket FS-353 leading the push toward converting the build system to prefer system versions of libraries, when compatible, over their in tree counterparts.
The following bugs were squashed:
19e3175 FS-6422: --resolve fixed a copy and paste error breaking socket_tcp_keepalive in mod_sofia
Jira: http://jira.freeswitch.org/browse/FS-6422
7532a7e FS-6310 fixed bug with orphaned calls in the show calls command
Jira: http://jira.freeswitch.org/browse/FS-6310
c02a5e6 fix for CSeq not being shared between FS boxes with ODBC backend in mod_sofia
Jira: http://jira.freeswitch.org/browse/FS-6413
9b56dff Say zero in time measurement only if it is neccessary in mod_say_hu
Improvements in cross platform build supports:
ab5ebd3 FS-6430: try to fix print_git_revision when running from builddir not inside src root
Jira: http://jira.freeswitch.org/browse/FS-6430
fb7fa3d update gitignore
5e90a5a FS-6430: fix running of print_git_revision from builddir not in src tree
Jira: http://jira.freeswitch.org/browse/FS-6430
0cc3a17 FS-6408: fix passing of CPPFLAGS to spandsp build
Jira: http://jira.freeswitch.org/browse/FS-6408
4bdef6e Fix detection of libedit on BSD
In terms of stability these were the use cases that were fixed:
287fd66 FS-6403 reverts commits 62ce8538974f727778f1024d0ef9549e438704fe and 3a85348cdfd0fd7df63a2a150790722c2d294b36 and fixed a segfault caused by a race issue in switch_xml
Jira: http://jira.freeswitch.org/browse/FS-6403
7151d6a fixed a segfault in hashtable
Jira: http://jira.freeswitch.org/browse/FS-6402
6681176 prevent a segfault in mod_basic if someone calls basic from CLI w/ no args
77056e3 fix seg in alias del in switch_console

FreeSWITCH development Week in Review March 23rd-29th

Submitted by kathleen on Thu, 04/03/2014 - 00:34

Hello, again. This week in the FreeSWITCH master branch we had a total of 34 commits submitted. Three of the major changes that were introduced this week were the deprecation of mod_spidermonkey to allow for replacement by mod_v8, work done in fs_cli to support the newer versions of libedit, and the lowering of the required version of sqlite to better support building FreeSWITCH out of the box on different platforms such as Debian 7 (Wheezy) and CentOS 6. To my knowledge, only the sqlite version has been tested with any significance.
The following bugs were squashed:
f50f04b FS-6356: --resolve prevent libsofia from asserting(crash) when you change the time on the server forward by more than 15 days
Jira: http://jira.freeswitch.org/browse/FS-6356
Improvements in cross platform build supports:
bcfb72c lowered the version of sqlite to accommodate CentOS 6
5e3ba39 Use CPPFLAGS in mod_yaml
04de0f7 FS-6396 fix mod_silk build on FreeBSD
Jira: http://jira.freeswitch.org/browse/FS-6396
98bba8b mod_mongo: switched from C++ to latest C driver
3964aa1 lowered the required version of sqlite to 3.7.13 to allow for Freeswitch to be built on a clean install of Debian wheezy and CentOS 6. Note: only has been tested to any significance.
4f54f91 Add back terminal detection for old libedits in fs_cli
169a264 FS-353 adding support for the FS build to detect a system installed version of sqlite installed through homebrew on mac
Jira: http://jira.freeswitch.org/browse/FS-353
07438df FS-6293 updated Windows build for xmlrpc
Jira: http://jira.freeswitch.org/browse/FS-6293
7ed144d Windows build fix for deprecated mod_spidermonkey
In terms of stability these were the use cases that were fixed:
5cccc62 fixed segfault in mod_translate
fa17059 ESL-88 Fix memory leak when outbound socket is closed by server
0ddd151 FS-5845 more leaks found by mikej
Jira: http://jira.freeswitch.org/browse/FS-5845
5ac9748 FS-5845 fixed leak of database handles in three specific error conditions in mod_lcr
Jira: http://jira.freeswitch.org/browse/FS-5845
0b9e5c8 FS-6402 mod_rayo/mod_ssml: add mutex to hashes now that iteration is no longer thread-safe
Jira: http://jira.freeswitch.org/browse/FS-6402

FreeSWITCH development Week in Review March 16th-22nd

Submitted by kathleen on Thu, 04/03/2014 - 00:17

Hello, again. This week in the FreeSWITCH master branch we had an amazing amount of work done with the majority of it going toward build support. The week ended with a total of 159 commits! Some big changes came with Freeswitch attempting to use the system versions of pcre, sqlite, speex, and curl rather than automatically using the in tree version. Also, there have been fixes to be able to run configure specifying the srcdir which allows you to build Freeswitch outside of the source directory.
The following bugs were squashed:
8d67246 FS-6374 --resolve mod_rayo sendfax was using uninitialized memory pool
Jira: http://jira.freeswitch.org/browse/FS-6374
bd1492e FS-6287 fixed regression from 6e818216e2e615f3241a34253cdea8ee316d9e88 which caused 'operation has no matching challenge' error on outbound invites that are challenged in mod_sofia
Jira: http://jira.freeswitch.org/browse/FS-6287
19fc943 FS-6360 Mitigate the CRIME TLS flaw
New features that were added:
6d0e684 Upgrade windows build to use pcre 8.34 via getlib and to use speex 1.2rc1 via getlib
Jira: http://jira.freeswitch.org/browse/FS-6348
dd242f3 Upgrade windows build to use curl 7.35.0 via getlib
Jira: http://jira.freeswitch.org/browse/FS-6346
741cb88 FS-6349 Upgrade windows build to use sqlite via getlib
Jira: http://jira.freeswitch.org/browse/FS-6349
714e313 FS-353: add testing hack to use system xmlrpc-c
Jira: http://jira.freeswitch.org/browse/FS-353
Improvements in cross platform build supports:
09811b5 FS-6369: fix uninstall on mod_managed
Jira: http://jira.freeswitch.org/browse/FS-6369
e85f06e Completely unbundle pcre
9df1727 fix uninitialized variables in mod_translate
cba9af4 Drop mod_perl from the debian build temporarily
aeebd71 FS-6375 exclude sun from modem support in spandsp
Jira: http://jira.freeswitch.org/browse/FS-6375
1470622 Require libcurl as a system dependency
9f7399c FS-6293: fix lua to build using automake, so it works right with srcdir, and avoids the linking to .a is not portable warning
Jira: http://jira.freeswitch.org/browse/FS-6293
9a94235 FS-6379: --resolve fix ldns bootstrap/build on solaris
Jira: http://jira.freeswitch.org/browse/FS-6379
f6d9027 FS-6375 adjust ifdef for sun to allow for different hep_ipheader struct in libsofia
Jira: http://jira.freeswitch.org/browse/FS-6375
3eb7862 FS-6293: fix mod_shout srcdir build
Jira: http://jira.freeswitch.org/browse/FS-6293
3b1278a FS-353 Add curl auto PKG_CONFIG_PATH handling for OS X
bf611fc Pull mod_v8 out of the default build
And many more!
In terms of stability these were the use cases that were fixed:
f3acb03 FS-6341 fixed deadlock in mod_sofia introduced in commit 340b697
Some packaging updates:
fb2c587 Add debian build-deps for mod_opal
6261e5a Drop mod_v8 from debian build for now
90404d5 Purge mod_voipcodecs from debian/control-modules
046df6b Export V=1 for debian builds
54cd0df Support change to system libspeex in debian
83125da update Debian packaging to use configure.ac files

Back to BASICs

Submitted by anthm on Mon, 03/31/2014 - 23:43

FreeSWITCH is proud to announce that on April 1st 2014, we now have a new language module 'mod_basic'  That allows you to write dialplan applications in the BASIC programming language!  Now users from the golden era of home computing can join the ranks of the FreeSWITCH users!
Here is a demo IVR:
s$ = "hello "
s$ = s$ + "world "
s$ = s$ + "Happy April Fool's Day!"
FS_LOG "WARNING" s$ + "!"
FS_EXECUTE "answer"
FS_EXECUTE "sleep" "1000"
FS_EXECUTE "playback" "misc/misc-cluecon_is_premier_conference.wav"

FreeSWITCH week in review March 9th-15th

Submitted by tc on Tue, 03/18/2014 - 16:57

Kathleen King kindly reports on the state of FreeSWITCH development:
Hello, again. This week in the FreeSWITCH master branch we had a total of 88 commits submitted. Most of the commits went toward miscellaneous features and bug fixes, such as the support improvements for Cisco 7925G in mod_skinny, a new web UI called Portal, and FS-353 using system libraries instead of bundled libraries.
The following bugs were squashed:
89f9490 add ability to parse named params out of P-Asserted-Identity header in mod_sofia
Jira: http://jira.freeswitch.org/browse/FS-6350
9fd30a2 work toward improvements in PRACK support
Jira: http://jira.freeswitch.org/browse/FS-6339
7a6e8f4 add realm to sofia::expires event
Jira: http://jira.freeswitch.org/browse/FS-6354
1727213 fixed support for 7925G with mod_skinny
9f804d2 mod_skinny: remove unknown field from access_status for Cisco 7925g
0f93cc2 FS-6281 mod_rayo: don't add timestamp to presence event that already has one.
Jira: http://jira.freeswitch.org/browse/FS-6281
New features that were added:
88fda8c upgrade Windows build to use curl 7.35.0
Jira: http://jira.freeswitch.org/browse/FS-6346
f80404c added experimental create user on portal
3055438 mod_skinny: wait up to 5 seconds for OpenRecvChannelAck for improved connection to WiFi phones such as the 7925G
69a65aa add create user and gateway lua scripts to Portal
40c56c6 adding ussd capabilities to mod_gsmopen, thanks Boris.
Jira: http://jira.freeswitch.org/browse/FS-5078
Improvements in cross platform build supports:
ce78c14 fix mod_dingaling build
87af4d3 fix mod_enum install
4ee5d1f don't automatically override CFLAGS when building spandsp
Jira: http://jira.freeswitch.org/browse/FS-6293
df9256d update windows build to use downloaded pcre
Jira: http://jira.freeswitch.org/browse/FS-6347
d755b34 added -fPIC flag to libapr when building with clang to fix the build of mod_lua
In terms of stability these were the use cases that were fixed:
db22d28 fixed deadlock in mod_rayo when creating input voice component
Jira: http://jira.freeswitch.org/browse/FS-6334

FreeSWITCH development week in review March 2nd-8th

Submitted by tc on Tue, 03/11/2014 - 21:34

Kathleen King kindly reports on our development activity over the past week:
Hello, again. This week in the FreeSWITCH master branch we had 90 commits this week. We also saw the addition of two cool new features: support for gzip encoding with mod_sofia and support for configuring crypto.
The following bugs were squashed:
46c5268 fixed a regression introduced by FS-5755
Jira: http://jira.freeswitch.org/browse/FS-6319
8d2c6b3 fixed misc bug with Chrome WebRTC
138224d fixed heap-buffer-overflow
Jira: http://jira.freeswitch.org/browse/FS-6303
286d2ae mod_rayo- fix race condition on outbound calls
Jira: http://jira.freeswitch.org/browse/FS-6304
New features that were added:
7cb9146 added support for gzip encoding with mod_sofia
Jira: http://jira.freeswitch.org/browse/FS-5814
4cf14bc more work toward supporting gzip encoding with mod_sofia
Jira: http://jira.freeswitch.org/browse/FS-5814
87e0dda setting the default to allow inbound secure crypto but not offer by default
ea31303 setting default configs to accept the strongest crypto suite offered
4d8866a gsmopen: added driver_usb_dongle directory, for building a working and stable \'option\' modem serial driver for 2.6.32 kernels
fe2a4bf more work toward support for gzip encoding for mod_sofia
Jira: http://jira.freeswitch.org/browse/FS-5814
Improvements in cross platform build supports:
49fe796 removed invalid configure options for apr-util
039f28d removed cpp lib from pcre because no longer in use
5de8d62 move configure.in to configure.ac
783a408 fixed NetBSD detection error of 64-bit integer types
bcd9f49 major improvements for building modules
e6ec9b3 Add automake subdir-options for modules
6ed4ad7 Pass down into esl the LDFLAGS, fixes finding libncurses on NetBSD too.
2fdaa1c Fix use of out of scope declaration
ab35096 Fix FHS default sysconfdir
In terms of stability these were the use cases that were fixed:
75a00bd Fix memory leak in mod_json_cdr
f9f3699 FS-6282 mod_rayo: fix memory leak in previous commit
Jira: http://jira.freeswitch.org/browse/FS-6282
e650939 fixed crash on <prompt> bad request in mod_rayo
Jira: http://jira.freeswitch.org/browse/FS-6296
a491df0 fixing a deadlock from jitterbuffer rework

FreeSWITCH week in review February 23rd - March 1st

Submitted by tc on Wed, 03/05/2014 - 06:08

Kathleen King reports on FreeSWITCH development over the past week:
Hello, again. This week in the FreeSWITCH master branch we had 137 commits! That is an average of ten commits per day and roughly an average of one commit every hour over the entire week! Awesome! We had a neat new feature added with TLS and SRTP support for AES-GCM. This feature allows for fully encrypting calls(both signaling, and media) in a higher density and with latest TLS 1.2 so it's secure against some of the recent TLS security issues. More about this new feature can be found here on the wiki: http://en.wikipedia.org/wiki/Galois/Counter_Mode
The following bugs were squashed:
1d36f5b fixed so that max_registrations_per_extension does no limit concurrent call counts
Jira: http://jira.freeswitch.org/browse/FS-5915
f862c34 fixed bug in Freeswitch core dealing with calls not hanging up after hold
Jira: http://jira.freeswitch.org/browse/FS-6272
f751455 fix race condition where a transferring leg could be hungup on by the bridge partner from the previous bridge
fa92f81 fixed bug in delay retry and clarified log line in mod_json_cdr
Jira: http://jira.freeswitch.org/browse/FS-5888
New features that were added:
8862fbc added 'join-only' conference flag
Jira: http://jira.freeswitch.org/browse/FS-5461
5b26558 add json support for mod_event_sockets event_sink
Jira: http://jira.freeswitch.org/browse/FS-5207
aa78006 Added Windows equivalent of Linux's fail2ban. Thanks, drk.
Jira: http://jira.freeswitch.org/browse/FS-3588
463f32c Support AES-GCM mode in SRTP
Jira: http://jira.freeswitch.org/browse/FS-5937
5646957 more work to support AES-GCM mode in SRTP
Jira: http://jira.freeswitch.org/browse/FS-5937
a900ead added Support AES-GCM mode in SRTP
Jira: http://jira.freeswitch.org/browse/FS-5937
Improvements in cross platform build supports:
ffa14f3 remove python requirement for libsndfile build
727ce93 more work getting FS-6271 to compile on Windows
Jira: http://jira.freeswitch.org/browse/FS-6271
0c7946b improve srtp build on Dragonfly and NetBSD
44410b7 work towards building on smartos
Jira: http://jira.freeswitch.org/browse/FS-6227
691c454 tagged Freeswitch 1.5.10
d86bb20 added support for DESTDIR to modcheck
62a2898 update the version string
378caeb fixed building without SRTP
d7794af improved build support for Dragonfly
645ab80 tagged Freeswitch version 1.5.8
d97b163 upgraded mod_ruby to SWIG 2.0
In terms of stability these were the use cases that were fixed:
68692d9 fixed segfault in mod_voicemail_ivr related to profile naming
Jira: http://jira.freeswitch.org/browse/FS-5154
e398ede fixed memory corruption and leak in mod_erlang
Jira: http://jira.freeswitch.org/browse/FS-5975
827c5ac fixed segfault on second call of gsm remove 1 in mod_gsmopen
Jira: http://jira.freeswitch.org/browse/FS-5908