Having a fully functional PBX system is not a big problem anymore. Thanks to Asterisk, you can now have a working PBX installed on your PC running GNU/Linux without spending a lot of money.
What is Asterisk?
Asterisk is an open source Private Branch Exchange (PBX) that runs on Linux, BSD and Mac OSX. It was created by Mark Spencer of Digium in 1991. Like any PBX, it allows a number of attached telephones (extensions) to make calls to one another, and to connect to other telephone services including the public switched telephone network (PSTN).
The basic Asterisk software provides all of the features you would expect from a proprietary PBX including: voicemail, conference calling, interactive voice response (IVR), and automatic call distribution (queue). These are just a few of the features that it can provide, you can view a list of supported features at Asterisk's Web site.