Ask HN - What Virtual PBX Do I Use
I'm looking to ditch Vonage VOIP in our small office (less than 10 employees). I'd like to migrate to a VOIP/Virtual PBX system. Grasshopper looks nice but we need to be able to send/rcv faxes from a "real" fax machine as well as have "real" phones ring (as opposed to cell phones, etc). Any recommendations?
24 comments
[ 2.9 ms ] story [ 61.9 ms ] threadYou may also want to look into trixbox, which is an asterisk server with a bunch of addons, including full web based configuration already configured.
I do not have much experience with faxing but I'm pretty sure if you want to fax from a real machine over VOIP you may run into problems, but I believe there are options for email to fax.
As for real phones ringing you'll need ATAs, which can be picked up pretty cheap, or you can go with SIP phones (a bit more pricey but more functions) so the whole idea may be a bit more than you're looking to get into.
We have had persistent bugs and inconsistencies. By itself, this wouldn't be a huge issue, but their level one support is untrained, powerless, and seemingly reluctant to help. In all my support calls to them, they have yet to put me on the phone with someone who understands my problem and has the power to fix it.
I ended up rolling FreeSwitch on a dedicated server on-site. I found it to be very extensible and reliable and I would almost always recommend it over Asterisk. Also deployed a couple Linksys SPA-3102 analog-to-IP gateway devices for existing lines - this is your best bet with faxes which transmit poorly over the public internet (unless you deal with T.38 and all that). I also use Flowroute (http://www.flowroute.com/) for all outgoing calls and for an extra incoming phone line (what's known as a DID). Their rates are reasonable and support is good, no problems so far. All extensions are using Polycom Soundpoint phones which sound great, have the best speakerphones I've heard, and are extremely customizable to boot. Although their XML config format was created by a madman :) Email me if you want more info about our setup.
Alternatively, check out Phonebooth, which I believe just launched the other day. They allow you to use Polycom phones too: http://www.phonebooth.com/ and http://news.ycombinator.com/item?id=1194615
There's plenty of hosted PBX systems out there, but I've heard a lot of great things about RingCentral. (And no, I don't work for them. If anything, they're somewhat of a competitor.)
Anyone else hear anything about it?
Edit: Now looking at FreePBX.org / Asterisk as well - thanks for the suggestions
Anyway, I'm using Asterisk 1.6.2 with FreePBX 2.0 and Broadvox is my SIP provider. My system is set up to receive faxes on the Asterisk PBX and email them to a mailing list of employees (this is configured through FreePBX). I also have a Grandstream GXW-4004 to provide FXS ports for the fax machine and analog phones that aren't important enough to replace with expensive VOIP handsets.
Note: I never got the analog fax machine to send and receive. Depending on how I set the fax detect on the Grandstream, I could do either-or, but not both. So my PBX receives faxes and my machine sends them. This is likely a PEBKAC matter, but I can't really be bothered to put forth the time to work this final gremlin out of my system.
My advice to anyone doing faxing over VoIP is the following:
1) If possible, don't.
2) Make sure your SIP provider supports VOIP faxing. Some don't with good reason: it's a bitch to support.
3) Make sure your SIP provider support G.711 with T.38.
4) Make sure your ISP does not strip QoS headers (In this case DiffServ EF)from IP packets. Your ISP will ignore them, obvious, but you definitely don't want them stripped or overwritten.
5) Make sure your VOIP packets have a DiffServ EF value in their headers.
6) Make sure any router(s) and switch(es) are configured properly to give top priority to your VOIP traffic. Failure to do so will likely result in jitter on your calls and you'll be unable to successfully send/receive faxes.
7a) If possible, don't run your primary PBX in a virtualized enivornment. Competition for system resources may create unwanted latency on your Asterisk VM resulting in jitter and failed faxes.
7b)With that said, I would definitely keep a cold or hot "spare" PBX running in a VM to spin up in the event of an outage.
Good luck!
Again, this is largely curiosity. But when you start getting into maintenance and UI and latency and encoding support and QoS from your ISP and whatever else you have to care about to make simple dialtone work, I wonder if maybe the problem is getting nerded to death for no good reason?
For example, in the setup I described in my other comment, the business wanted to move away from a Lucent/Avaya Partner system they had been using for over a decade. They had 3 lines and about 15 extensions and were somewhat happy with it. The system for many years had, as you say, the "maintenance overhead of a desk lamp" but it was starting to drop voicemails randomly, the phones sucked, adding more lines meant buying one of those extension modules, etc. Plus the building was being renovated and running just CAT6 everywhere instead of separate ethernet and phone lines was very appealing.
Buying an inexpensive Dell rack server, Polycom phones, and a couple Linksys analog gateways was much cheaper than the initial investment they spent a decade ago. Since they kept the analog lines, which are useful for fax machines and security systems, there was no need to really worry about QoS initially since internal network bandwidth was plentiful. This alone fixed the problems of the aging system and they got voicemails and faxes delivered via email, shared directories browsable directly from phones, proper call parking, and a ton of other small features.
The cost benefit came when we added an external VOIP provider later. Now they could have unlimited simultaneous inbound and outbound calls for a single DID/caller ID and just pay a flat-rate per minute. At their usage, this came out much cheaper (4x) than the deals negotiated with Verizon locally. And the concept of individual lines that could be busy just melted away. The system is still configured to fallback on the couple analog lines if the internet goes out, but the rate plans have been reduced to the bare minimum so that incoming calls stay free.
EDIT: Almost forgot, another key benefit of a software switch is the easy integration it allows with your backend apps. For our internal rails-based order processing app, I implemented dial-on-click (ala Google Voice) and call history logs for all our vendors and customers (see librevox and mod_xml_cdr for FreeSwitch if you want to do something similar) in a day.
But viraptor is right, ensuring all the fallbacks work correctly and are tested takes time, and it might not be the wisest way to spend time if you don't understand what you're getting into.
- For hosting the PBX yourself without learning Asterisk or FreeSWITCH, I can recommend Askozia PBX, which is based on m0n0wall: http://www.askozia.com/
I've also used FreePBX-based systems like TrixBox CE, which are more full-featured and more customizable, but might take more effort to upgrade.
- For reliable faxing, make sure your VoIP provider supports the T.38 protocol and get an ATA (analogue adapter) that supports it. You can then set up T.38 passthrough in your PBX.
- For equipment, I'd recommend going with one of the "known" brands. I've used Linksys SPA9xx and Snom phones, but read forums to see what people recommend for the PBX you choose. Keep in mind that a lot of the buttons and features on the phone might not work "out of the box", depending on the PBX you choose. I'd stay away from no-name brands unless you have tried them yourself or have very good recommendations.
If you value your mental health and don't want to hire an onsite, on-call VoIP specialist do not try to setup your own PBX. Sure - sometimes it works and you can do a lot of crazy stuff with a software PBX; in reality you want it to be up 24/7 and ensuring the quality of pstn termination, local network and configuration of such setup is at least one additional full-time job for the first couple of months. In reality if you have a problem with some "prepared" solution like freepbx / trixbox / whatever and have no support contract, you're left on your own with a system you don't understand and with no telephony - not a good option. Unless you need some very special functionality, just pay for the service. Do not be fooled by "simplicity" of solutions like trixbox - if something doesn't work, you still have to learn the whole stack to know how to fix it.
Solutions like grasshopper are cool and that's the kind of service I'd recommend. What you should look for is: how do they handle faxes (only T.38 is reliable), can you setup a divert number (like a mobile) for situations when your network is down, how much will it cost to get additional internal and external numbers. Bonus point - do they support wideband codecs? It might seem stupid, but the quality difference is amazing (only for internal calls).
If you're an MS-based shop, you might want to look at hosted OCS offers. Phones supporting it are a bit more expensive, but the ability to integrate with your emails, calendar, voicemail, etc. over the phone is really cool if you travel a lot. If you have a high volume of calls, you might also look for solutions that provide reception with a virtual switchboard apps - they're a bit more comfortable for a lot of call transfers than looking up numbers.
They don't handle faxes, though.
Pretty good deal, though: $20/month/line, 5 line minimum. Cheaper than POTS, and much more flexible.
(I just dragged my Polycom IP phone out to our farm and plugged it in for the first time, and I'm up and running with my phone line with no obvious issues.)
http://www.pbxplus.com - offers speech recognition, faxing, extensions, voicemail transcription, trees - visual drag and drop designer. Free US number with 50 mins. Can't get better.