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 applications can be developed using a wide range of free tools.

FreeSWITCH was originally designed and implemented by Anthony Minessale II with the help of Brian West and Michael Jerris.  All 3 are former developers of the popular Asterisk open source PBX.  The project was initiated to focus on several design goals including modularity, cross-platform support, scalability and stability.  Today, many more developers and users contribute to the project on a daily basis.

We support various communication technologies such as Skype, SIP, H.323 and WebRTC making it easy to interface with other open source PBX systems such as sipXecs, Call Weaver, Bayonne, YATE or Asterisk.

FreeSWITCH can perform full video transcoding and MCU functionality using its conferencing module.

FreeSWITCH supports many advanced SIP features such as presence/BLF/SLA as well as TCP TLS and sRTP.  It also can be used as a transparent proxy with and without media in the path to act as a SBC (session border controller) and proxy T.38 and other end to end protocols.

FreeSWITCH supports both wide and narrow band codecs making it an ideal solution to bridge legacy devices to the future.  The voice channels and the conference bridge module all can operate at 8, 12, 16, 24, 32 or 48 kilohertz in mono or stereo and can bridge channels of different rates.  The G.729 codec is also available under a commercial license.

FreeSWITCH builds natively and runs standalone on several operating systems including Windows, Max OS X, Linux, BSD and Solaris on both 32 and 64 bit platforms.

FreeSWITCH supports FAX, both over audio and T.38, and can gateway between the two.

Our developers are heavily involved in open source and have donated code and other resources to other telephony projects including openSER, sipXecs, The Asterisk Open Source PBX and Call Weaver.

a Spec Sheet is available on our Wiki.

Latest Posts

FreeSWITCH and the VUC

Go check out all the new, awesome features going into FreeSWITCH! The core developers made an appearance on the VUC call this past Friday to talk about and demonstrate some of the fantastic, new features in FreeSWITCH.


FreeSWITCH Launches New Platform on 10th Anniversary

The first line of code in FreeSWITCH was drafted Spring of 2005, nearly a decade ago. 2015 marks the 10-year anniversary of the core code and the 9-year anniversary of the FreeSWITCH Public Community. Over the years, the core developers of the project have worked hard to provide top notch community support. FreeSWITCH Solutions, the consulting firm owned and operated by the core FreeSWITCH team, have been offering commercial support for many years for companies who take things to the next level and use FreeSWITCH to power their products.

Today we are proud to announce the unveiling of FreeSWITCH.com and the FreeSWITCH Advantage™ platform and support. Built on top of Debian Linux, FreeSWITCH Advantage takes our proven support services and couples it with a reliable operating system distribution and the result is a uniform packaged system tuned specifically for running FreeSWITCH. New releases will be simple to apply and any changes to the other packages on the system that have an impact on FreeSWITCH will be applied and managed automatically. Customers will have the best environment possible in place to run their systems as well as the support they need to ensure they stay up and running. The FreeSWITCH Advantage provides critical early-access to releases to make sure any problems encountered are addressed ASAP. All of the code used with FreeSWITCH Advantage is taken straight from the project’s public git repository and packaged with testing and stability in mind so the community continues to benefit as a result.

FreeSWITCH Solutions also continues to offer the most comprehensive consulting services available with the experience and knowledge to create almost anything imaginable that pertains to interfacing with FreeSWITCH.


FreeSWITCH Week in Review (Master Branch) July 18th-July 24th

Hello, again. This passed week in the FreeSWITCH master branch we had 46 commits. The new features this week are: the addition of getcputime to retrieve FreeSWITCH process CPU usage, added support for 80 ms, 100 ms, 120 ms packetization to mod_opus,  and added H.263 codec support to mod_av.

Join us on Wednesdays at 12:00 CT for some more FreeSWITCH fun! And head over to freeswitch.com to learn more about FreeSWITCH support.

New features that were added:

Improvements in build system, cross platform support, and packaging:

  • FS-7860 Prevent a switch_rtp header conflict
  • FS-7130 Make /run/freeswitch persistent, so it will start under systemd

The following bugs were squashed:


Announcing the ClueCon Coder Games!

So You Think You Can Code?

You’ve seen the presentations, you’ve asked your questions, you have the resources, now it is your time to shine by using the sponsor APIs to create something exciting! We want to see what you can do! Bonus points for each API you can incorporate! Go check out the APIs now to get a head start on the competition and get those creative juices flowing! You have less than two weeks to prepare!

Sponsor APIs: FreeSWITCH, Tropo, Kandy, Twilio, Plivo, and more…

IPv6 Round Table

IPv6 and why you should deploy it ASAP: John Brzozowski, Fellow and Chief Architect, IPv6 at Comcast, Bill Sandiford President of CNOC, Member of the board at ARIN.

Flowroute – Jeopardy

Think you know about SIP? Do you know enough to beat the competition? Flowroute is hosting a SIP themed game of Jeopardy! Put your brain to the test and come see how much you really know!

DTMF-u

Do you like all things games? Well, then this is the game for you! But there is a twist! Before you can win the game you must build it! Using your choice of language or API you must build a game! There will be three categories of DTMF-u; Tic-tac-toe, DTMF pattern recognition, or Freestyle. You could build something that plays a random DTMF sequence, receives player input, and then either continues or fails the player. Or maybe a WebRTC based game of tic-tac-toe? Or surprise us! Have fun with it! Creative ways to fail a player may give you bonus points. The top three games will be played by everyone and the winner of each will take home a prize! All gaming bots will be screened via a Turing test to ensure no unintended apocalyptic consequences.

Show and Tell

Alright, now is your chance! You have been playing with the code all day and this is your chance to show off! We want to know what you’ve done and how you did it. Use your creativity and skills as a programmer to impress the judges and win a prize! This is a no holds barred all out free for all! Any language doing anything! Knock our socks off and take home a fabulous prize and a year’s supply of bragging rights!

Raffle Grand Prize!

The grand prize is a laser engraved commemorative FreeSWITCH 1.6 Edition dual-core 13″ Retina MacBook Pro!

 


FreeSWITCH Week in Review (Master Branch) July 11th-July 17th

Hello, again. This passed week in the FreeSWITCH master branch we had 43 commits. We had a number of cool new features this week including: added functionality for capturing screenshots from both legs to uuid_write_png, the addition of new multi-canvas and telepresence features in mod_conference, the addition of vmute member flag to mod_conference, and an API for removing an active ladspa effect on a channel.

Join us on Wednesdays at 12:00 CT for some more FreeSWITCH fun! And head over to freeswitch.com to learn more about FreeSWITCH support.

New features that were added:

  • FS-7769 [mod_conference] Add new multi-canvas and telepresence features
  • FS-7847 [mod_conference] Add layers that do not match the aspect ration of conference by using the new hscale layer param for horizontal scale, and add zoom=true param to crop layer instead of letterbox, add grid-zoom layout group that demonstrates these layouts, and fix logo ratios and add borders too.
  • FS-7813 [mod_conference] Add vmute member flag.
  • FS-7846 [mod_dptools] Add eavesdrop_whisper_aleg=true and eavesdrop_whisper_bleg=true channel variables to allow you to start eavesdrop in whisper mode of specific call leg
  • FS-7760 [mod_sofia] Revise channel fetch on nightmare transfer and add dial-prefix and absolute-dial-string to the nightmare xml
  • FS-7829 [mod_opus] Add sprop-stereo fmtp param to specify if a sender is likely to send stereo or not so the receiver can safely downmix to mono to avoid wasting receiver resources
  • FS-7830 [mod_opus] Added use-dtx param in config file (enables DTX on the encoder, announces in fmtp)
  • FS-7824 [mod_png] Add functionality for capturing screenshots from both legs to uuid_write_png
  • FS-7549 [mod_ladspa] Added an API for removing an active ladspa effect on a channel. For conformance reasons, the uuid_ladspa command now accepts ‘stop’ and ‘start’, while the previous functionality (without any verb) which will simply add ladspa remains intact.

Improvements in build system, cross platform support, and packaging:

  • FS-7845 [mod_conference] Break up mod_conference into multiple source files to improve build performance
  • FS-7769 [mod_conference] Fixed a build issue
  • FS-7820 Fix build system typo. Don’t assign the same variable twice.
  • FS-7043 Fixed apr1 unresolved symbols in libfreeswitch.so.1.0.0
  • FS-7130 Make /run/freeswitch persistent in the Debian packages, so it will start under systemd

The following bugs were squashed:

  • FS-7849 [verto] Remove extra div breaking full screen in html
  • FS-7832 [mod_opus] Fixes when comparing local and remote fmtp params
  • FS-7731 [mod_xml_cdr] Fixed a curl default connection timeout
  • FS-7844 Fix packet loss fraction when calculating loss average

FreeSWITCH Week in Review (Master Branch) July 4th-July 11th

Hello, again. This passed week in the FreeSWITCH master branch we had 54 commits. We had a bunch of new commits for features this week! Those pull requests are really helping to get things reviewed and accepted. Keep it up community!

Join us on Wednesdays at 12:00 CT for some more FreeSWITCH fun! And head over to freeswitch.com to learn more about FreeSWITCH support.

New features that were added:

  • FS-7780 Add new channel variable max_session_transfers. If set, this variable is used to count the number of session transfers allowed instead of the max_forwards variable. If not set, the existing behavior is preserved.
  • FS-7783 Add channel variable for capturing DTMF input when using play_and_get_digits when the response does not match
  • FS-7772 [mod_opus] Add functionality to keep FEC enabled on the encoder by modifying the bitrate if packet loss changes (Opus codec specific behaviour).
  • FS-7799 [mod_png] Add API command uuid_write_png
  • FS-7801 [mod_opus] Added support to set CBR mode
  • FS-7685 [mod_say_nl] Fix Dutch numbers pronunciation
  • FS-7198 Add coma separated values and reverse ranges for time-of-day and day-of-week matches
  • FS-7809 [mod_opus] Added 60 ms ptime for Opus at 8 khz ( opus@8000h@60i )
  • FS-7405 [mod_dialplan_xml] Fix condition regex=”all” to work with time conditions
  • FS-7819 [mod_opus] Restore bitrate (if there’s no more packet loss) and added step for 60 ms
  • FS-7773 [mod_sofia] Adding additional transfer events when the fire-transfer-events=true profile parameter is set
  • FS-7820 FreeSWITCH automated unit test and micro benchmark framework

Improvements in build system, cross platform support, and packaging:

  • FS-7628 [mod_erlang_event] Removed unused variables causing a compilation error
  • FS-7776 Add mod_kazoo to packaging

The following bugs were squashed:

  • FS-7778 [mod_sofia] Fixed a bug causing a SQL statement to fail because of a double quote instead of a single quote
  • FS-7754 [freetdm] Fixed a bug relating to single digit dial-regex with analog devices
  • FS-7785 [mod_opus] Fix for invalid ptime 30 ms for opus@8000h . Replaced 30 ms with 40 ms.
  • FS-7762 [mod_av] Handle buffer allocation failures of large buffers

And, this passed week in the FreeSWITCH 1.4 branch we had no new commits merged in from master.


FreeSWITCH Week in Review (Master Branch) June 27th-July 3rd

Hello, again. This passed week in the FreeSWITCH master branch we had 49 commits. This week we had a bunch of new features with most of them being helpful little improvements, but we also had two new modules merged in! The 2600hz guys added mod_kazoo and William King merged in mod_smpp. You can find out more about mod_smpp by going here. And, the 2600hz patches are all slated to be merged in by the 1.6 release.

Join us on Wednesdays at 12:00 CT for some more FreeSWITCH fun! And head over to freeswitch.com to learn more about FreeSWITCH support.

New features that were added:

  • FS-7732 Continue recording with uuid_transfer
  • FS-7752 [mod_rayo] Increase maximum number of elements from 30 to 1024 to allow adhearsion to create large grammars to navigate IVR menus.
  • FS-7750 [mod_commands] Allow for uuid_setvar to handle arrays
  • FS-7758 [mod_loopback] Emit an event if a loopback bowout occurs
  • FS-7759 [mod_sofia] Added the channel variable ignore_completed_elsewhere to suppress setting the completed elsewhere cause
  • FS-7771 Set a channel variable if the recording is terminated due to silence hits
  • FS-7760 Added xml fetch for channels to externally support nightmare transfer depends on channel-xml-fetch-on-nightmare-transfer profile param (default is disabled)
  • FS-7730 [mod_smpp] Added mod_smpp as an event handler module
    and fixed the default configs to provided sample load option for mod_sms and mod_smpp
  • FS-7774 Add mod_kazoo

Improvements in build system, cross platform support, and packaging:

  • OPENZAP-238 [freetdm] Fix some GSM compilation errors and do a bit of code cleanup
  • OPENZAP-237 [freetdm] Use __func__ instead of __FUNCTION__ to comply with c99 in gcc 5.1

The following bugs were squashed:

  • FS-7734 [mod_nibblebill] Fixed a deadlock
  • FS-7726 Fixed a bug with recording a video session on DTMF command
  • FS-7721 Fixed a segfault caused when using session:recordFile() and session:unsetInputCallback in a lua script
  • FS-7429 [mod_curl] Fixed to output valid json
  • FS-7746 [mod_verto] Fixed a device permission error in verto client
  • FS-7753 [mod_local_stream] Fixed some glitching and freezing video when using hold/unhold
  • FS-7761 [core] Fix shutdown races running api commands during shutdown
  • FS-7767 [mod_sofia] Fixed a segfault caused by invalid arguments to sip_dig
  • FS-7744 [mod_conference] Fixed a bug causing the first user’s video stream to stop when another verto user calls the conference
  • FS-7486 [mod_sofia] Fixed the handling of queued requests
  • FS-7775 [mod_conference] Fix threading issue causing stuck worker threads
  • FS-7777 [mod_imagick] Fixed a regression causing a segfault when playing png & pdf in conference

And, this passed week in the FreeSWITCH 1.4 branch we had 2 commits merged in from master.

  • FS-7486 [mod_sofia] Fixed the handling of queued requests
  • FS-7750 [mod_commands] Set uuid_setvar to handle arrays

The FreeSWITCH 1.4.20 release is here!

The FreeSWITCH 1.4.20 release is here! This is a routine maintenance release and the resources are located here:

Security issues:

  • FS-7708 Fixed docs on enabling cert CN/SAN validation

New features that were added:

  • FS-7561 [mod_sofia] Add Perfect Forward Secrecy (DHE PFS)
  • FS-7564 [mod_rayo] Added new algorithms for offering calls to clients
  • FS-7623 [mod_amqp] Allow for custom exchange name and type for producers and fixed param name ordering bug caused by exposing these params
  • FS-7720 Improve play_and_detect_speech to set current_application_response channel variable as follows: “USAGE ERROR”: bad application arguments’, “GRAMMAR ERROR”: speech recognizer failed to load grammar, “ASR INIT ERROR”: speech recognizer failed to allocate a session, and “ERROR”: any other errors
  • FS-7743 [mod_skinny] Updated SKINNY on-hook action to hang up all calls on a device, except those in a short list of call states (or perform a blind transfer) and added a hook after completing the hangup operation to start ringing if there is an inbound call active on the device.

Improvements in build system, cross platform support, and packaging:

  • FS-7610 Fixed a gcc5 compilation issue
  • FS-7426 Only disable mod_amqp on Debian Squeeze and Wheezy
  • FS-7297 g729 installer

The following bugs were squashed:

  • FS-7582 FS-7432 Fixed missing a=setup parameter from answering SDP
  • FS-7650 [mod_verto] Fixed crash when making a call from a verto user with profile-variables in their user profile
  • FS-7678 Fixed for fail_on_single_reject not working with | bridge
  • FS-7612 Fixed invalid json format for callflow key
  • FS-7621 [mod_shout] Fixed a slow interrupt
  • FS-7432 Fixed missing a=setup parameter from answering SDP
  • FS-7573 Fixed 80bit tag support for zrtp
  • FS-7636 Fixed an issue with transfer_after_bridge and park_after_bridge pre-empting transfers
  • FS-7654 Fixed an issue with eavesdrop audio not working correctly with a mixture of mono and stereo
  • FS-7579 [mod_conference] Fixed a bug not allowing suppression of play-file-done
  • FS-7593 [mod_skinny] Fixed a bug where skinny phones would stomp on each other in database when thundering herd occurs
  • FS-7597 [mod_codec2] Fixed encoded_data_len for MODE 2400, it should be 6 bytes. Also replaced 2550 bps bitrate (obsoleted operation mode) by 2400
  • FS-7604 [fs_cli] Fixed fs_cli tab completion concurrency issues on newer libedit
  • FS-7258 FS-7571 [mod_xml_cdr] Properly encode xml cdr for post to web server
  • FS-7607 Update URLs to reflect https protocol on freeswitch.org websites and update additional URLs to avoid 301 redirects.
  • FS-7479 Fixed a crash caused by large RTP/PCMA packets and resampling
  • FS-7524 [mod_callcenter] Fixing tiers, level and position should default to 1 instead of 0
  • FS-7622 [mod_amqp] Make sure to close the connections on destroy. Currently the connection is malloc’d from the module pool, so there is nothing to destroy.
  • FS-7689 [mod_lua] Fixed a bug with lua not loading directory configurations
  • FS-7489 [mod_unimrcp] Fixed a TTS Audio Queue Overflow
  • FS-7467 [mod_callcenter] Fixing stuck channels using uuid-standby agents
  • FS-7429 [mod_curl] Fixed a json formatting error

FreeSWITCH Week in Review (Master Branch) June 20th-26th

Hello, again. This passed week in the FreeSWITCH master branch we had 37 commits. There was one feature this week with improvements to play_and_detect_speech to set the current_application_response channel variable.

Join us on Wednesdays at 12:00 CT for some more FreeSWITCH fun! And head over to freeswitch.com to learn more about FreeSWITCH support.

New features that were added:

  • FS-7720 Improve play_and_detect_speech to set current_application_response channel variable as follows: “USAGE ERROR”: bad application arguments’, “GRAMMAR ERROR”: speech recognizer failed to load grammar, “ASR INIT ERROR”: speech recognizer failed to allocate a session, and “ERROR”: any other errors

Improvements in build system, cross platform support, and packaging:

  • FS-7707 Fix build error on CentOS7
  • FS-7655 Fixed a build error when we have PNG but not YUV
  • FS-7723 Change RPMs to use -ncwait instead of -nc. This will cause the initscript to pause and wait for FS to be ready before continuing.
  • FS-7648 Added a test cases for FS-7724 and FS-7687
  • FS-7726 Additional configurations for a QA test case
  • FS-7715 Updates to configure and spec files for next development branch and added images to spec file and fixed build/freeswitch.init.redhat since redhat likes to override settings in the script with TAGs in comments

The following bugs were squashed:

  • FS-7467 [mod_callcenter] Fixing stuck channels using uuid-standby agents
  • FS-7699 [mod_verto] Fixed for browser compatibility
  • FS-7722 Fixed an issue with record_session including params when creating path
  • FS-7489 [mod_unimrcp] Fixed a TTS Audio Queue Overflow
  • FS-7724 [mod_conference] Fixed a segfault when missing fonts when trying to render banner
  • FS-7519 [mod_av] Fixed a regression in the visual appearance of decode app output
  • FS-7703 Fixed a bug caused by answer_delay being set in the default configurations
  • FS-7679 [mod_verto] Fixed a bug causing one way audio on Chrome when video is enabled and when using a sip without video
  • FS-7729 [mod_verto] Fixed the formatting for IPv6 addresses

 

This passed week in the FreeSWITCH 1.4 branch we had 30 commits merged in from master.

Security issues:

  • FS-7708 Fixed docs on enabling cert CN/SAN validation

New features that were added:

  • FS-7561 [mod_sofia] Add Perfect Forward Secrecy (DHE PFS)
  • FS-7564 [mod_rayo] Added new algorithms for offering calls to clients
  • FS-7623 [mod_amqp] Allow for custom exchange name and type for producers and fixed param name ordering bug caused by exposing these params
  • FS-7720 Improve play_and_detect_speech to set current_application_response channel variable as follows: “USAGE ERROR”: bad application arguments’, “GRAMMAR ERROR”: speech recognizer failed to load grammar, “ASR INIT ERROR”: speech recognizer failed to allocate a session, and “ERROR”: any other errors
  • FS-7743 [mod_skinny] Updated SKINNY on-hook action to hang up all calls on a device, except those in a short list of call states (or perform a blind transfer) and added a hook after completing the hangup operation to start ringing if there is an inbound call active on the device.

Improvements in build system, cross platform support, and packaging:

  • FS-7610 Fixed a gcc5 compilation issue
  • FS-7426 Only disable mod_amqp on Debian Squeeze and Wheezy
  • FS-7297 g729 installer

The following bugs were squashed:

  • FS-7582 FS-7432 Fixed missing a=setup parameter from answering SDP
  • FS-7650 [mod_verto] Fixed crash when making a call from a verto user with profile-variables in their user profile
  • FS-7678 Fixed for fail_on_single_reject not working with | bridge
  • FS-7612 Fixed invalid json format for callflow key
  • FS-7621 [mod_shout] Fixed a slow interrupt
  • FS-7432 Fixed missing a=setup parameter from answering SDP
  • FS-7573 Fixed 80bit tag support for zrtp
  • FS-7636 Fixed an issue with transfer_after_bridge and park_after_bridge pre-empting transfers
  • FS-7654 Fixed an issue with eavesdrop audio not working correctly with a mixture of mono and stereo
  • FS-7579 [mod_conference] Fixed a bug not allowing suppression of play-file-done
  • FS-7593 [mod_skinny] Fixed a bug where skinny phones would stomp on each other in database when thundering herd occurs
  • FS-7597 [mod_codec2] Fixed encoded_data_len for MODE 2400, it should be 6 bytes. Also replaced 2550 bps bitrate (obsoleted operation mode) by 2400
  • FS-7604 [fs_cli] Fixed fs_cli tab completion concurrency issues on newer libedit
  • FS-7258 FS-7571 [mod_xml_cdr] Properly encode xml cdr for post to web server
  • FS-7607 Update URLs to reflect https protocol on freeswitch.org websites and update additional URLs to avoid 301 redirects.
  • FS-7479 Fixed a crash caused by large RTP/PCMA packets and resampling
  • FS-7524 [mod_callcenter] Fixing tiers, level and position should default to 1 instead of 0
  • FS-7622 [mod_amqp] Make sure to close the connections on destroy. Currently the connection is malloc’d from the module pool, so there is nothing to destroy.
  • FS-7689 [mod_lua] Fixed a bug with lua not loading directory configurations
  • FS-7489 [mod_unimrcp] Fixed a TTS Audio Queue Overflow
  • FS-7467 [mod_callcenter] Fixing stuck channels using uuid-standby agents

FreeSWITCH Week in Review (Master Branch) June 13th-19th

Hello, again. This passed week in the FreeSWITCH master branch we had 94 commits! We had a large amount of work done this week and a few of the highlights are: added mod_local_stream video support, added member status in json format to the conference live array, added function to enable debug information about Opus payload, and a security issue concerning enabling cert CN/SAN validation.

Join us on Wednesdays at 12:00 CT for some more FreeSWITCH fun! And head over to freeswitch.com to learn more about FreeSWITCH support.

Security issues:
FS-7708 Fixed docs on enabling cert CN/SAN validation

New features that were added:
FS-7656 [mod_localstream] Added mod_local_stream video support, and make mod_conference move the video in and out of a layer when the stream has video or not, scan for relative file in art/eg.wav.png and display it as video when playing audio files, put video banner up if artist or title is set, and fixed a/v sync on first connection
FS-7629 [mod_conference] Added member status in json format to the conference live array, add livearray-json-status to conference-flags to enable
FS-7517 FS-7519 [mod_av] [mod_openh264] Added H264 STAP-A packeting support so it would work with FireFox
FS-7664 [mod_verto] Set ICE candidate timeout to wait for only 1 second to fix media delays
FS-7660 [mod_opus] Enabled with new API command “opus_debug” to show information about Opus payload for debugging.
FS-7519 [mod_av] Fixed bitrate and added some presets
FS-7693 [mod_conference] Lower the default energy level in sample configs to improve voice quality

Improvements in build system, cross platform support, and packaging:
FS-7648 More work toward setting up a QA testing configuration, add condition testing for regex all and xor cases, adding profile-variable for testing cases , add lipsync tests for playback and local stream, add stereo, and configuration for mcu test
FS-7338 Fixed bug in Debian packaging when trying to build against custom repo
FS-7609 Enable building of mod_sangoma_codec for Debian Wheezy/Jessie
FS-7667 [mod_java] Fixed include directory detection when using Debian java packages and use detected directory
FS-7655 Make libvpx and libyuv optional (none of the video features will work without them) The following modules require these libraries to be installed still: mod_av mod_cv mod_fsv mod_mp4v2 mod_openh264 mod_vpx mod_imagick mod_vpx mod_yuv mod_png mod_vlc, fix build issue w/ strict prototypes, and fix a few functions that need to be disabled without YUV
FS-7605 Fixed default configuration directory in Debian packages and fixed Debian packaging dependencies on libyuv and libvpx
FS-7669 When installing from Debian packaging if you don’t have the /etc/freeswitch directory, we will install the default packages for you. If you already have this directory, we’ll let you deal with your own configs.
FS-7297 [mod_com_g729] Updated the make target installer
FS-7644 Added a working windows build without video support for msvc 2013
FS-7666 [mod_managed] Fixed error building mod_managed on non windows platforms

The following bugs were squashed:
FS-7641 Fixed a segfault in eavesdrop video support
FS-7649 [mod_verto] Fixed issue with h264 codec not being configured in verto.conf.xml
FS-7657 [mod_verto] Fixed a bug with TURN not being used. Note, you can pass an array of stun servers, including TURN, to the verto when you start it up. (see verto.js where iceServers is passed)
FS-7665 [mod_conference] Fixed a bug with the video floor settings not giving the video floor to the speaker
FS-7650 [mod_verto] Fixed crash when making a call from a verto user with profile-variables in their user profile
FS-7710 [mod_conference] Added the ability to set bandwidth to “auto” for conference config
FS-7432 Fixed dtls/srtp, use correct a=setup parameter on recovering channels
FS-7678 Fixed for fail_on_single_reject not working with | bridge
FS-7709 [mod_verto] Verto compatibility fixes for Firefox
FS-7689 [mod_lua] Fixed a bug with lua not loading directory configurations
FS-7694 [mod_av] Fixed for leaking file handles when the file is closed.


FreeSWITCH Week in Review (Master Branch) June 6th-12th

Hello, again. This passed week in the FreeSWITCH master branch we had 51 commits! Some of the new commits this week include: the addition of a new reserve-agents param to mod_callcenter, allowing for custom exchange name and type for mod_amqp producers, a sample build system for a stand alone(out of tree) FreeSWITCH module, and added video support to eavesdrop.

Join us on Wednesdays at 12:00 CT for some more FreeSWITCH fun! And head over to freeswitch.com to learn more about FreeSWITCH support.

New features that were added:

  • FS-7620 [ftmod_libpri] Correctly set calling number presentation and screening fields
  • FS-7138 [mod_callcenter] Added a new reserve-agents param
  • FS-7436  FS-7601 [mod_opus] FEC support
  • FS-7623 [mod_amqp] Allow for custom exchange name and type for producers and fixed param name ordering bug caused by exposing these params
  • FS-7638 Allow ipv4 mapped ipv6 address to pass ipv4 ACLs properly
  • FS-7643 [mod_opus] Added interpretation of maxplaybackrate and sprop-maxcapturerate
  • FS-7641 Added video support to eavesdrop

Improvements in build system, cross platform support, and packaging:

  • FS-7635 Removed msvc 2005, 2008, and 2010 non working build systems
  • FS-7373 Expose the custom repo and key path to the build-all command too
  • FS-7648 Foundation for QA testing config , adding leave/check videomail test cases, adding videomail voicemail profile, adding video record/ playback test cases, adding set video on hold, force pre-answer prefix, and adding an eavesdrop test case.
  • FS-7338 Removed mod_shout dep libs to system libs to continue cleaning up the libs for the 1.6 build process and added Debian packaging for several new modules, as well as handle system lib change for a handful of modules
  • FS-7653 Sample build system for a stand alone(out of tree) FreeSWITCH module
  • FS-7601 [mod_opus] [mod_silk]  Removed a bounds check that can never be true in opus fec code and modify jitterbuffer usage to match the api change

The following bugs were squashed:

  • FS-7612 Fixed invalid json format for callflow key
  • FS-7609 [mod_sangoma_codec] Now that libsngtc-dev and libsngtc are in the FS debian repo, enable mod_sangoma_codec
  • FS-7621 [mod_shout] Fixed a slow interrupt
  • FS-7432 Fixed missing a=setup parameter from answering SDP
  • FS-7622 [mod_amqp] Make sure to close the connections on destroy. Currently the connection is malloc’d from the module pool, so there is nothing to destroy.
  • FS-7586 [mod_vlc] A fix for failing to encode audio during the recording of video calls
  • FS-7573 Fixed 80bit tag support for zrtp
  • FS-7636 Fixed an issue with transfer_after_bridge and park_after_bridge pre-empting transfers
  • FS-7654 Fixed an issue with eavesdrop audio not working correctly with a mixture of mono and stereo