Open Source VoIP: Asterisk or FreeSwitch?

Open Source VoIP: Asterisk or FreeSwitch?

Summary: When the time came for a new PBX, Brian Snipes chose to do something a bit unconventional. The IT manager at law firm Hare, Wynn, Newell, and Newton LLP didn’t purchase a commercial PBX, nor did he settle on the open source market leader, Asterisk.

SHARE:

When the time came for a new PBX, Brian Snipes chose to do something a bit unconventional. The IT manager at law firm Hare, Wynn, Newell, and Newton LLP didn’t purchase a commercial PBX, nor did he settle on the open source market leader, Asterisk.

No, Snipes chose to become the first enterprise to deploy the new open source IP PBX, FreeSwitch.  Three months into his deployment and Snipes remains ecstatic about his decision. “It was a grand slam,” he says

Open source VoIP represents a small part of the overall enterprise market with its strongest play in small organizations looking for an inexpensive, customizable solution. A Cisco integrator quoted Snipes $111,000 for a redundant implementation complete with switching infrastructure and voice capabilities. Asterisk (or FreeSwitch) would have run him just $60,000.

Yet Asterisk’s critics have long complained about the code’s scalability and quirks.

“Asterisk scales to a reasonable number of connections per box,” says David Cantera, an Asterisk integrator, “but in very large installations maintenance with the dial plan, is a configuration nightmare.”

The same could be said about some of Asterisk’s features. After deploying Asterisk, Snipes was hit with requests for features available on his legacy system.  “Some of these I thought I could (and had) worked around with Asterisk, but some I couldn't or didn't even know was used,” he says.

Complaints like those led Anthony Minessale II, an entrepreneur and Asterisk developer, to spearhead the FreeSwitch project, an open source switching engine aimed at serving as a class 5 switching replacement.  The FreeSwitch group is getting ready to release version 1.0.1 today or tomorrow that will improve the code’s stability and add Automatic Speech Recognition (ASR) and Text To Speech (TTS) to the code.

But if Snipes’ experience is any indication, business may be apt to use FreeSwitch as sort of Asterisk-on-steroids, providing advanced telephony services for the enterprise. For example, SipFoundry, an open source SIP server project, announced FreeSwitch would be the basis for a new open source conferencing server.

Snipes found that certain features while possible in Asterisk were cleaner in FreeSwitch. One such example is call monitoring. With his PBX, Snipes had two lights on an assistant’s phone, one Busy Lamp Field (BLF) for each of the attorney's two lines.  If one line was busy, the calls would roll over to the attorney’s second line.  If the attorney was on the phone then both the first line was lit and a new incoming call would roll over to the second line.  The secretary could then see when attorneys were on their first line and pickup an incoming call.  The problem, according to Snipes, was with Asterisk there was only a single light and all calls come into the same extension or line so the assistant couldn’t tell if the attorney was already using the phone line when there was a new incoming call.

“With FreeSwitch I was able to accomplish exactly what I needed,” he says. “By contrast, BLF (Busy Lamp Field) support in Asterisk is horrible.  It was wrong more often than right.  You could pickup a handset on an attorney phone, hang-up, and the light on the secretary phone would indicate that phone was engaged.”

A second key feature was call parking. Snipes needed a light on assistant’s and attorney’s phones to blink when the assistant would park a call. This would allow the attorney to pick up the call by pressing the button beside the light.  “FreeSwitch offered the feature out of the box when used with SNOM phones, but the feature wasn’t available with Asterisk.

Voice mail was another problem. Both FreeSwitch and Asterisk deliver voicemails as email attachments, but only FreeSwitch supported wav and mp3 formats. That was important because some attorneys had iPhones while others had BlackBerrys and each required a different file format.

Ultimately, Snipes says what really got him was FreeSwitch’s customizability.  “I am not a good programmer like the developers, but even I can create small programs,” he says, “FreeSwitch supports writing IVRs in Lua, Javascript, Python, Perl and a built-in XML language.” He says, for example, he wrote a directory application in Lua for FreeSwitch.

At least on that score, Asterisk proponents think their code plays well. “Asterisk is a like a toolbox,” says Cantera, “You just have to know how to use it.”

Ultimately, the biggest challenge for the FreeSwitch group will not be fighting for part of the Asterisk pie, but encroaching on the capabilities of commercial implementation. Open source has come along way in supplying the voice capabilities needed to compete with commercial implementations.

But commercial software has largely moved on from delivering voice services to providing business solutions that involve the PBX. This requires integrating the PBX,  with business applications, often through the use of Web Services.

In theory, open source should compete well in this market. The ability to modify the code makes FreeSwitch or Asterisk eminently adaptable. “You can control FreeSwitch with XML-RPC, direct socket connection and any other way you can make a plugin,” writes Minessale in an IM. “There is a layer between the telephone API and the outside world where you can wedge a module to translate it into whatever you want and if you really want it, FreeSwitch can be its own Web server.”  In reality, architects will require higher level interfaces or a strong service and support framework to adapt those applications to their business requirements. Whether FreeSwitch and its supporters can deliver that level of hand-holding remains to be seen.

Topics: Networking, Mobility, Open Source, Telcos, Unified Comms

Kick off your day with ZDNet's daily email newsletter. It's the freshest tech news and opinion, served hot. Get it.

Talkback

4 comments
Log in or register to join the discussion
  • Nice

    I am still in the process of evaluating asterisk (trixbox/elastix/admins paradise) for use at our health centers.

    I will give freeswitch a shot too, they often ask for stuff related to free/busy lights.
    Been_Done_Before
  • FreeSWITCH is a great choice

    Brian's experience is not an isolated one. FS is starting to gain momentum as people realize just how much it can do and how well it can do it. Prior to the 1.0.0 release we saw a trickle of new users, many of whom were "Asterisk refugees" - people like Brian who need features and/or functions that Asterisk couldn't deliver (for whatever reason). Now that trickle has turned into a small but steady stream. We see new users every day.

    Another reason we see people coming to FS is because of this kind of viewpoint in the Asterisk community:
    [i]At least on that score, Asterisk proponents think their code plays well. ?Asterisk is a like a toolbox,? says Cantera, ?You just have to know how to use it.?[/i]

    There is a serious caveat emptor in the last part of that statement. "Just knowing how to use it" may suffice for many, but it does not suffice for all. If I need a basic PBX with VoIP functionality using commodity hardware then Asterisk will work in many cases. However, if I have specific needs, or I want an enterprise-class deployment and high-availability then FreeSWITCH is simply a better choice.

    Bottom line here is simple: FreeSWITCH was not designed to be a drop-in replacement for Asterisk, nor was it designed to be "just a PBX" or "dial tone in a box." It is a [b]switch[/b] first and foremost, and everything revolves around that fact. It scales wonderfully. It extends easily. It allows for a wide variety of customization. Most importantly, though, is that the FreeSWITCH community, led by the devs, is awesome. FreeSWITCH is a great choice in many situations and as it matures it will only get better.

    -MC
    Mercutio_Viz
  • RE: Open Source VoIP: Asterisk or FreeSwitch?

    FreeSWITCH is the BEST.

    It's a masterpiece of incredible work. I been using it for a while already and the audio quality and stability is a lot superior, the performance is also a lot better, it's the best telephony platform I ever used, highly recommended.
    diegoviola
  • RE: Open Source VoIP: Asterisk or FreeSwitch?

    VoIP is here to stay thats for sure, I think we all know that; with a vertical market only converted @ 10% its going nowhere but up.<br><br>I don't think who you utilize to get there matters; as long as it works (of course) and is not proprietary.<br><br>Open Source VoIP, in any capacity, is changing the face of VoIP as it spreads globally and takes foot hold.<br><br>-Jake<br>www.voipcitadel.com
    jake@...