Overall, the two systems are roughly equal, both are well supported, and both are well documented for the needs of anyone with basic PBX needs. For most purposes, either way you go, you’re going to be fine. However, most likely, if you’re asking “Asterisk or FreeSWITCH” you have little experience with either, and therefore little experience with ip telephony — which turns out to be far more complex under the hood than you might think by using a smartphone. In this common case, you should probably go with Asterisk because: it’s easier to start with, your project is and will remain in-house managing a handful, dozens, or even hundreds of simultaneous calls but not thousands, and you won’t be concerned with advanced features like multi-tenancy, licensing implications, and whether certain call features have more extensively configurable properties. On the other hand, if you’re already a software developer or network engineer with previous exposure to ip telephony concepts or already know you want to integrate intimately with call features, and/or you have big plans and need to look as far into the future as you can, you’ll want to go with FreeSWITCH. We are in the latter category, but we understand the practical value that sometimes it is better to give a person a fish instead of teaching them how to fish, since in this case, the caught fish can teach you how to fish if it’s really needed.
So Asterisk or FreeSWITCH?
It’s a summary of such articles, and writing is how I organize my thoughts. I’ve worked lightly with Asterisk over the years, but I have a lot of exposure to telephony as a developer working with larger proprietary systems and am currently deciding between these two “smaller” open source systems. I’m doing a ground-up evaluation of our own proprietary IVR system built around Asterisk. We’re either going to continue working with Asterisk at the core or migrate the project to FreeSWITCH, so I’m researching both, and to be frank, on almost all counts, I like what FreeSWITCH has to offer. I still like Asterisk — in fact, as a developer, I keep imagining a system that has a single interface managing both to make it even easier for people to decide, but that may be going too far.
I’ve just read through all the following articles, which are listed in rough order of importance from my perspective, although anyone else might sort them differently. For example, the first article is old and kind of geeky, but it puts you right into the heart of the difference between the two systems, since it was written by the lead developer of FreeSWITCH who had been working deeply with Asterisk for years before deciding to rebuild from the ground up. One of the things I like most about it is that he remained respectful of Asterisk and speaks well of its merits even while diving into some of its weaknesses. This kind of generosity, in a world of humans who tend to compete fiercely, is attractive to me, and speaks well of FreeSWITCH’s thoughtful origins.
David Cohen, Sip Systems Senior Network Engineer