Setup IP PBX for small business step by step


1. Instruction

More and more peoples start small business now, such as home based business. It is very important to keep communication with our customers. In normal, most of us just use a simple telephone or use skype to do that. It can just fit our basic requirement, but it has obvious shortage, for example, it makes our business looks like a very small business, a personal business. We hope to make our business looks like a big business and our company looks like a professional company. We want to establish a voice interaction for our customers, such as prompt "welcome to xxx company. Please dial the extension or zero for assistance", etc. Can we do that?
Of course, we can do that! There is a very simple solution to do that using VOIP. This document will give a step by step guide on how to establish a VOIP network for our business. The solution will be as simple as possible, almost just need only one PC with Windows system.

2. What's VOIP?

VOIP is "Voice over Internet Protocol". It is a general term for a family of transmission technologies for delivery of voice communications over IP networks such as the Internet or other packet-switched networks. VOIP can be a benefit for reducing communication and infrastructure costs.
In another way, it is very easy to use VOIP to establish our communication system with rich features.
In normal, we need to setup three main components: IP-PBX, phones (or soft-phones) and VOIP carriers' service that let you call other peoples on the PSTN (Public Switched Telephone Network, it is our traditional telephone network).

2.1 IP-PBX

There are lots of IP-PBX. Some of them are hardware based devices, some of them are software based server.
I suggest miniSipServer. miniSipServer is a professional SIP PBX for Windows system. It has all features we need. Most important, it is so easy that we can setup and run it in 10 minutes!
In another way, if you are familiar with Linux system, I suggest to try Asterisk. It is complex and powerful.

2.2 Phones

We can buy SIP phones from Grandstream, Cisco, Linksys, etc. If we still want to use our traditional analog telephone, we can buy a SIP adapter from them.
To get started, we use a softphone and run it in the same computer or another computers. I suggest to try Xlite softphone.

2.3 VOIP carriers

Lots of VOIP carriers can provide SIP services. I suggest following VOIP providers:
Once register to these VOIP providers, they will give you a SIP account information, such as SIP server address, account name and password, etc. These information will be used when we configure our IP-PBX.

3. Scenario

Following figure describes a simple environment for small business or home based business.
In our demo scenario, the small company only has two member, Holly and G.T.
Holly's extension number is 100, and G.T's extension phone number is 101. Both of them have PCs based on windows system. The IP address of Holly's PC is The IP address of G.T's PC is miniSipServer will be installed on another PC whose IP address is
The company establish connection with PSTN through a VOIP carrier's network.
We will follow subsequent steps to establish our VOIP network.
Step 1: Setup miniSipServer. Following figure describe it.
network (step1)
Step 2: Connect local users to miniSipServer.
network (step2)
Step 3: Connect miniSipServer to VOIP providers' network.
Step 4: Configure some wonderful advance services for our small company, such as auto-attendant, ring group and pick-up.

4. Configuration

4.1 Step1: setup miniSipServer

This step could be the easiest one in our configuration. We can download the miniSipServer SETUP file fromhttp://www.myvoipapp.com/download. The latest version is 2.5.4 now.
There are several kinds of miniSipServer, such as 20 client, 50 clients etc. For example, "100 clients" version can support 100 extensions. Since there are only two members in our scenario, "20 clients" version is enough.
Before we install miniSipServer, please make sure that the PC based on Windows and network are work well firstly.
After that, please click the .EXE file to setup miniSipServer and run it! It is unnecessary to configure anything! So easy!
If everything is fine, the miniSipServer should run as following figure.
MSS main window

4.2 Step2: connect local users to miniSipServer

When miniSipServer is installed, it will create three default extensions automatically. Please click button "local users" in main window to check it. The default password for these extensions are also 100, 101 and 102.
local user window
We begin to configure Holly's softphone to connect miniSipServer.
Holly use Xlite 4 as her softphone. The Xlite4 is a wonderful SIP client and can be download fromhttp://www.counterpath.net/x-lite.html.
After install Xlite, please click menu "Softphone -> Account settings".
xlite account configuration
In the pop-up window, please add a SIP account like following figure.
xlite account property
The key configurations are described as:
User ID
Authorization name
Register with domain and receive call
Send outbound via
Please click 'OK' button to complete the Xlite configuration. Xlite will try to register to miniSipServer. If it successes, it should display 'Available' information.
xlite ready
Now, Holly's extension has connected to miniSipServer rightly. We can follow the same step to configure G.T' extension. If you have other kinds of SIP clients/phones, they should also be configured same information.
Both Holly and G.T' extensions have been connected to miniSipServer. We can show miniSipServer' local user information to check their status. Their icons should be blue.
local users ready
After we finish this step, the basic VOIP network is established. Holly and G.T can call each other. Holly can dial '101' to call G.T, and G.T can also dial '100' to call Holly.

4.2.1 Add a new extension in miniSipServer

In above configuration, we use the default extensions '100' and '101'. In future, with the growth of company, more and more people will join with us, we need add more extensions to support them. So we can do as following:
In the 'local users information' window, please click 'Add' button to add a new extension.
add a new local user
new local user configuration
In normal, we can just assign extension number and password to a new extension. The new employee can use this new account information to configure his/her Xlite or SIP phones.

4.3 Step 3: connect miniSipServer to VOIP provider

It is so easy to establish internal VOIP network and Holly and G.T enjoy it. It is time to establish connection with customers now.
In normal, if we want to make call to outside or receive a call from outside, we need a VOIP gateway connect our miniSipServer and traditional telephone or we need VOIP provider to do it for us. We decide to connect our miniSipServer to VOIP providers' network and we select BroadVoice as our VOIP provider.
After we request a SIP account from BroadVoice, for example, the account is '723123456', we will use use this account to configure miniSipServer to connect BroadVoice.
In the miniSipServer main window, please click button 'External lines' to add an external line information.
external lines
In the pop up window, please click button 'Add' to add an external line with BroadVoice account information.
external line configuraton
The key informations are described as below table. Of course, you can update it according to your own configuration.
External line
Peer server address
Peer server port
Share outgoing call with other local users
Auto attendant
Because we hope both Holly and G.T can make outgoing call, we select 'share outgoing call with other local users'.
Here we configure 'auto attendant' to support receiving incoming call from outside.
If the external line success to connect to peer server ( VOIP provider's network or VOIP gateway), the icon of the external line should be gray and without cross flag.
Then, we describe some details about making outgoing call and receiving incoming call.

4.3.1 Make outgoing call

As we have confirmed in above sections, Holly and G.T can call each other by dialing their extensions number directly. If we want to make outgoing call to our customers, how can we do it?
Since the external line is connected to VOIP provider's network ( or VOIP gateway), it is no problem to call outside customers, but we have to mention that we need add prefix '9' before we dial our customers numbers. In miniSipServer, prefix '9' is the default outgoing prefix which is used to distinguish call type. For example, if the customer's number is '7321234568', we need dial '97321234568'.

4.3.2 Receive incoming call

When we configured external line before, we has indicated 'auto attendant' at the same time. So when the customer calls in, miniSipServer will prompt him/her to enter extension number. For example, once the customer calls "7321234567" ( the external line number provided by VOIP provider and configured in miniSipServer ), he/she will hear "Welcome, please enter extension number" and the customer can enter '100' to call Holly or enter '101' to call G.T.
The benefit of using "auto attendant" to receive incoming call is that the company can provide only one public telephone number to customers and assign different extensions to each employee.
In another way, the default announcement can be modified and replaced. We can change it according to our real requirement, for example, we can change it to "welcome to xxx company,...". Please refer to the "Automatic attendant" document which has been installed with miniSipServer.
Because miniSipServer uses "RFC2833" DTMF mode to collect the customer's input digits, we must confirm with our VOIP provider that they can support this DTMF mode.

5. Advance configuration

When we finish above configurations, we success to establish our basic VOIP system. Is it enough? Of course, no! We want more useful services to support our communication, such as Voice mail, ring group, etc.
Here, we just have a brief look at these services in this document. We can refer to their own service guide documents or visit miniSipServer official website for details. The service guide documents are installed with miniSipServer at the same time.

5.1 Voice mail

Sometime we maybe miss some important call because we have left the office. That means the business is possible gone! How to avoid this? The answer is voice mail. We hope the customer can leave their voice message and the miniSipServer mails these voice messages to our e-mail box, so we can check them at any time.
Please refer to the "Voice mail service document".

5.2 Ringing group

"Ringing group" is another useful service for our business. For example, when the customer calls Holly, the Holly's phone and the G.T's phone can ring at the same time if they are in the same ring group. So anyone of them can pick up the call.
Please refer to the "Ringing group service docuemnt"

6. FAQ

6.1 How to change SIP port?

The default SIP port is 5060 (UDP) which is defined in SIP standard. But in some special scenarios, we need change this port to another, for example 5090.
To do that, we need modify MSS and SIP phones configurations together.
In MSS, please click menu "data -> system information -> SIP" and change the port. Please refer to following figure.
SIP port in MSS
After that, please restart MSS to enable this modification.
In the Xlite (or other SIP phones), we need indicate it to work with the new port. In the SIP account configuration, please set the "domain" to "":
SIP port in Xlite

6.2 one-way audio or no-way audio problem?

We are often asked "why I cannot hear peer side?" or "why we cannot hear each other?". The root reason is firewall or NAT(network address translation). In these scenarios, we can often find that MSS and the SIP phones are deployed in an intranet with private IP address.
First, we need confirm the firewall should not filter the audio streams in our network. For example, windows firewall often do that. We can try to shutdown the firewall and try again. If everything is ok, that means we need add MSS and Xlite to the windows firewall exception list.
If we still cannot hear each other, we need configure STUN in the SIP phones to process NAT or firewall traversal. In the Xlite, please click menu "Softphons -> Account settings -> Topology". We can configure "Discover public IP address" and configure "stun.xten.com" as the default STUN server.
Configure STUN in Xlite
BTW, if all your SIP phones are Xlite, you can configure the "Firewall traversal method" to be "auto-detect firewall traversal method using ICE(recommended)".

Hardeep Singh

Post a Comment Blogger