The Upsides and Downsides of Open Source VoIP Systems
Open Source solutions are very prevalent in the VoIP industry, particularly surrounding the open-source telephony engine Asterisk.
Open source telephony applications have opened many opportunities in the VoIP industry and many companies such as trixbox, elastix, freepbx, pbxinaflash, and rhino, which are just a few, have taken the asterisk source code (licensed under the GNU GPL) and rounded it to their own business applications. Since the topic is “open-source”, the source code of Asterisk is distributed freely among companies, users, administrators, developers, and integrators alike and together have produced the world’s most powerful telephony engine and what that means to you, the VoIP customer is, a freely distributed source code or compiled ISO of a feature rich IP Phone system better termed as the IP PBX.
In the sections below, I will highlight some benefits and pros to using an open-sourced based phone system, also note some of the downsides or struggles you may have if you are not completely familiar with open-sourced telephony solutions.
Open Source Phone System Benefits and Upsides
Here are a few of the benefits/up-sides of open sourced telephony applications.
- The solutions are free – Well not completely free…You still need a server or hardware to run your software on and may require the use of telephony PSTN or Digital T1 cards to connect to the outside world. The software ISO or asterisk source code however, is completely free. You can obtain a downloadable version of asterisk/Linux or any other open source ISO from the leading players in the market such as trixbox CE, elastix, FreePBX, PBXinaflash, etc. Now you may be asking, what is the difference between Asterisk as just source code, and a software ISO? A Software ISO has been developed by a company such as the ones listed below, which have already compiled a version of Linux on top of a version of source code Asterisk, and also added a nice and easy to manage web GUI interface so administrators don’t need to rely on asterisk command line to administer their phone system. If you are novice to PBX software and asterisk, I would suggest downloading one of these ISO’s that can be found on each manufacturer’s website respectively and also mentioned in my previous post. Free also goes beyond the costs of the software. Most commercialized VoIP solutions require a per user license fee, concurrent call license fee, phone license fee, etc, and on top that may require the purchase of maintenance contracts and support contracts. With open-sourced applications, none of these fees apply and you are free to do as you please with your system, but also keep in mind, if you do need assistance, support is right around the corner, both free and paid options.
- Customizations – Customizability is a big deal breaker when it comes to phone systems. Since our phone systems are IP based, we can now integrate other applications such as databases, CRM tools, email, click to dial, presence applications such as HUD-Lite, and really any application or program you wish to integrate with Asterisk. In a typical open source distribution, administrators have access to the asterisk command line interface where most of this customizability is configured. In relation to this, most proprietary solutions don’t provide you with this access and rely solely on administering the PBX through a web GUI. Now don’t be mistaken here, commercialized VoIP applications still have most of these third party applications built in such as CRM integration, Google maps integration, database query retrievals, and everyone has outlook integration in the form of VM to email etc… but most of these applications are developed by the manufacturer of that system and developers within their particular dev groups. With open source, if you are a company that needs full customization and integration with very unique tools, that maybe even you, yourself have developed, open-source is the route to take.
- Resources available to you…and once again are free – Open-source lives through it users, administrators, and developers. Information is shared everyday with the public in the form of online WIKI’s, forums, documentation, chat, and the Asterisk IRQ. That just names a few. WiKI’s and Forums pack a huge punch when it comes to information that is user related. Information on fixes, how to’s, issues that arise, and feature requests are all shared, and I always like to think, “If you have a problem or a request, 98 percent of the time, the answer is out there”, you just need to know where to look so below is a few links to a wealth of information on open-sourced VoIP applications.
- Open source + open standards = interoperability – Interoperability with almost every VoIP endpoint in the market, including IP Phones, ATA’s, Gateways, PCI cards, WiFI Phones, SIP DECT solutions, etc… All interoperability is based upon SIP protocol and SIP standards. What this means to you is that, when using your open-sourced solution, you are not tied down to a specific phone model or manufacturer, you can use anything that is SIP standards based, and can easily mix and match phone models and manufacturers to meet end users needs and preferences. For instance, a company may be using Aastra phones for their desktop clients, but need a fully robust conference phone for their training room, no problem; Manufacturers such as Polycom, Snom, and Konftel can easily satisfy their conferencing needs with their conference phone offerings, as Aastra currently does not make a conferencing unit. In another situation, the same company may need a few mobile SIP DECT solutions for their warehouse employees, no problem, any of the Snom M3, Aastra MBU-400, or Siemens Gigaset DECT solutions will also work on their open-sourced based PBX. So as you can see, not only do you have a wide variety of endpoints to choose from, you also have the flexibility to mix and match SIP endpoints to meet every one of your users needs.
- Longevity – Asterisk was created in 1999 by Mark Spencer who later founded Digium. Since 1999, Asterisk has never looked back. It is constantly being updated with the latest feature sets, refined for better performance, and fixed for issues that may be found in earlier releases. Major releases are constantly being updated and delivered to end users and administrators worldwide. Since the source code of asterisk is always under heavy development, and does rely a lot on field developers and system administrators, it is constantly being updated with the latest and greatest features and bug fixes from sources that have fully tested the solution and are committed 100 percent to its future. At this time, Asterisk has plenty of gas left in the tank to continuously bring us the best to offer if the IP telephony world. Since asterisk as a source code is always being updated, companies like the ones mentioned above are also releasing bigger and better solutions and if you are customer already running an asterisk based open-sourced solution, obtaining these updates on your current system is very easy and you guessed it, free of charge. This simply negates your required update and maintenance packages often times required on commercial and proprietary VoIP solutions.
- Professional Support services are available – So if you are not one of those people that likes to spend a lot of time researching an issue you may be having, or need a fix ASAP to guard against system downtime, professional Asterisk services are available from Digium and respective open-source manufacturers to help get the problem solved quickly, so you are 100 percent covered.
Potential downsides to Open Source Phone System Solutions
While there are plenty of upsides to using an open-source based phone system compared to a commercial or proprietary VoIP solution, there are some downsides to using these types of solutions. Below, we will detail out a few:
- Personal Knowledge – If you are person that is new to the whole asterisk, open source thing, I strongly suggest doing your research and be prepared to research information on your own. If you are not that kind of person, you may want to look at a commercial VoIP solution such as 3CX or Switchvox. If you are not familiar with the asterisk source code, and command line interface better known as the CLI, get used to it. If you need professional assistance in learning this information, Digium offers great hands on training classes all over the world that will help you succeed at this. Once you are satisfied with your knowledge, you can take the Digium DCAP exam and become a Digium Certified Asterisk Professional. More details on these trainings can be found here. This will help you immensely in your personal knowledge as well as assist you in administering your asterisk or open-source IP PBX.
- Testing (in general) – Test the solution, before you implement the new phone system in a production environment. It is often suggested to setup a small lab and use this as a test “sandbox” per say. Test the features of asterisk, its functionality, get used to administering it both from the CLI and Web GUI if applicable. This way if you run into requests down the road, you know exactly where to look. Even after fully testing a system, bugs can arise… hey not everybody is perfect. The problem with this is you may have to wait till a new distribution and patch is released for a fix, whereas on a commercial VoIP solution, you usually don’t run into issues like these.
- Testing your hardware – See my previous post for recommended hardware to run your asterisk or open source deployment. With commercial VoIP applications, in most cases, you purchase a known tested server already preloaded with software, and is a known given that everything is going to run smoothly. If you are building your own server and plan on installing asterisk or an open-source ISO, you need to ensure that the server is meeting your needs. Once again, see my previous post that explains most of these needs as it relates to hardware requirements as well as compatible motherboards and chipsets for your software to function correctly. Once again, if you are not comfortable with doing this, give VoIP Supply a call and we can suggest a known compatible server for your open sourced asterisk software and we can even pre-install that load or ISO for you. No need to compile, burn to CD, then install.
- Getting your hands dirty…per say – Open source solutions do require a good amount of know-how as you can see from above, time which is spent on learning the code and how to administer the system, and also time spent on the hardware build, software download and compilation if you wish to choose the asterisk command line distribution. There may be some bumps in the road during all this and you will need to keep an open-mind towards it. Yes, even I get frustrated with solutions, but you need to know where to look to solve your problems, and learn from any mistakes or mishaps along the way. This inadvertently makes you a better Asterisk administrator, so leave your egos at the door and plan to dig in and expect issues. If you simply just want a phone system, and don’t really care to know all of the ins and outs of asterisk, then open source is not for you, and you should go with a commercial VoIP solution which will offer you the same feature sets as Asterisk as in an open source world, without some of the hassle.
Stay tuned for my next installment where I will explain some of the pros and cons to a commercial VoIP solution, as well as speak about Proprietary solutions and how these compare to open-sourced solutions.