In the last couple of weeks I have been setting up a voice over IP system for the office. Something I have been meaning to do for a while but now the neccessity has arisen to make it so.
After a little research it seems Asterisk is the best software available. After failing miserably at a bare Asterisk install (due to the plethora of extra sh17 to install on top of it). I tried AsteriskNOW and prebuilt ISO with the linux OS, asterisk and apparently all the gear to make it fly. I burnt a pile of hours trying to make that flat with limited success so abandoned that too. Last and successful attempt was using trixbox. AWESOME! Really great package, it is the whole box and dice (as per AsteriskNOW).
I have installed it in a virtual machine inside the office, opened the relevant ports in the firewall. The asterisk virtual pbx connects to my VoIP service provider Exetel.
Call quality is average, a little worse than the regular telephone system but quite acceptable. Where it wins is in flexibility. A single incoming number can be routed to ring groups, IVR, a specific user etc. Video calls are possible, voicemail built in, web interface to configure.
Next job is to hook up the regular phone to divert through the PBX.