Building a Business PBX
From Asterisk Australia
Overview
Trixbox and Asterisk can be used to replace your current panasonic, commander or traditional PBX. It is a cost effective solution and can provide years of hassle free service if completed correctly. Don't be too cheap when it comes to buying phones, stick with brand names that will be there in 20 years. Your phones are critical to your business, and you probably have more important things to do than tinkering with a phone system. This system can scale to support large business requirements, can be integrated into CMS systems, supports telecommuters and has advanced call routing features. This guide offers a tried and tested suite of products known to work and remain reliable after years. This will probalby take you one - two hours the first time around, you can try with your existing modem/router, but the wrong router causes many VoIP problems.
Before You Start
Some conventions in VoIP telephony are different to traditional telephony. One big difference for Australia is the concept of "Lines". Your commander may have 4 lines, so you say there is a call on line 1. With IP telephony there is no line 1, 2, 3 or 4. With our solution provided with engin your number of "lines" is limited by your internet bandwidth. Like many computers can share an internet connection, many phones can share a VoIP connection. You can monitor who is on a call with an SPA962 and SPA932 Attendant console, you can park calls and monitor parking lots but "lines" are no more.
Parts Required
To simplify installation and frustration, the products used in this guide are known to work with Asterisk and trixbox reliably.
- WAG54GV3 - Wireless ADSL Modem/Router. (Use Cisco WRT range if you are not on ADSL)
- A server or computer. This does not need to be the latest, 2Ghz+ with 512Mb- 1Gb ram should be fine.
- Small form factor is better, low power consumption is also better.
- A CD Burner (to download and burn the software)
- WINSCP - Download to move files between your computer and your Trixbox PBX server.
- IP Phones (Cisco SPAXXX recommended, SPA942 used in this guide)
- Engin Account (Engin VoIP Provider account)
- A notebook and pen to make notes as you go.
Getting Started
- Plug in your phones, server ready to go.
- Plan the following information. - In Your Notebook.
IP Address of Server : _________________________________ Default Gateway : ______________________ Subnet Mask : __________________________ Admin Password : _______________________
Engin Username : ___________________ (phone number) Engin Password : ____________________ Engin Proxy : ____________.byo.engin.com.au
- Download the latest Trixbox Software.
2.6.23 Click Here to Download Its a big download, over 500Mb. Get it started early, while you read the rest of the document.
- Burn the ISO to CD. Label your CD. Screenshots
If you do not know how to burn an iso, simply download and install ISO recorder. After installing simply right click your downloaded file in windows explorer and select "Copy Image to CD". Insert blank CD and follow instructions.
Click Here To Download ISO Recorder If Required
Installing the Trixbox Software Screenshots
- Put the CD in your new PBX system and boot from CD.
ALL INFORMATION AND DATA ON THIS SYSTEM WILL BE DELETED
- Press Enter to begin the installation.
- Select Keyboard Type (U.S.)
- Select your timezone. Australia/Closest Location
- Enter your password - Write it down in your notebook. Hit O.K.
- Wait a few minutes while the system installs.
- Eject Your Trixbox CD, Put it Aside and reboot.
- When trixbox has rebooted, enter the username root and your password.
Configure Your Network Settings, Give Trixbox a Fixed IP Address ScreenShots
- Type system-config-network Hit Enter.
- Select "Edit a Device Params"
- Select your network Card.
- Untick Use DHCP
- Enter your Fixed IP Address from your start notes, eg 192.168.0.50
- Enter the subnet mask and gateway. 210.23.129.33
- Select "O.K."
- Select Edit DNS Configuration
- Enter your DNS Server, if you dont know enter 139.130.4.5 in the Primary and 210.23.129.33 in the secondary.
- Select O.K. (Tab to move Space Bar to Select)
- Select Save and Quit
- Restart the network by typing : service network restart at the command prompt.
Done! - You no longer should require the keyboard, screen and mouse on that PC.
- Make sure you set your computer bios to not stop on any errors when it boots.
- It is also good if you can set the system to AUTO-ON after a power failure.
Your PBX is now setup and we are ready to start configuring your handsets. All management will now be done via the Trixbox web interface.
Log in and Configure Trixbox Via the Web Interface Screenshots
- On another computer on the network, open internet explorer.
- Type the trixbox IP address into the Internet Explorer address bar.
- In the top right, it will say User Mode. Click "Switch".
- Enter maint as the username and "password" as the password. You are now in Admin Mode.
- The trixbox registration form will pop-up. You can choose to register or not.
- Since this is new, lets update the system for security. Select "Packages" from the top menu.
- Put a tick in the boxes with a red "Upgrade".
- Scroll down and select upgrade.
Configure Extensions on Trixbox Screenshots
- Open Your Trixbox Web Management Interface (Internet Explorer, then the IP address)
- Click Admin, PBX, PBX Settings.
- On the left, select Extensions.
- Create a new Generic SIP Device.
- Enter the User Extension Number, Name and secret (password). Start with 201 for example.
- Select if the extension will have Voicemail and Password.
- Other settings remain as they were or blank.
- Repeat for each extension required for the business.
Configure Your Handsets
This guide covers SPA942 handsets, however any SIP based handset will work. All you should need to enter on a handset is the Extension number, Password and IP address of your Trixbox PBX. Because we are using this system in our business and expect growth, we will configure the handsets to boot using TFTP. This will make future handset installation super easy, but may take a few moments longer to setup first time around.
- If you are in a rush, Quick Extension Configuration for SPA9XX Handset
- Download the mass deployment files.
- Spa942.cfg Spa general.cfg Spa-macaddress.xml
- Save a copy of each of these files on your local computer. (Create a new directory to work in)
- Download the Latest Cisco SPA942 Firmware Click Here
- Open the zip file and extract the .bin file to the directory with the config files.
Edit the Config Files
- Edit Spa942.cfg with notepad or your favourite text editor.
- Change the ip.address.of.server with your Trixbox IP Address
- Save and Close.
- Edit your spa_General.cfg file with notepad.
- Go through the config and change the ip.address.of.server with your Trixbox IP.
- Save and Close
- Edit spa-macaddress.xml file with notepad.
- Change the Name, UserID and Password to what you ant that extension to be.
- Save the file, but replace macaddress with the phone mac address. eg. spa-000ECBA0FF.cfg
- You can find the mac address on the back of the phone.
- Create a spa-macaddress.xml for each of your spa phones.
Move the files to your Trixbox Server
- Run WinSCP. Enter your server IP address, Username : root and your password
- Use the explorer type interface to browse to /tftpboot on your server.
- Simply drag and drop all files from your working directory to /tftpboot
Update your DHCP Server
The final part is to update your DHCP with a boot option. You need to log into your router or server and add option 066 to point to the IP address of your Trixbox server. If you have a router that has limited dhcp options, you can use your Trixbox server as the DHCP Server.
If you cannot update your DHCP Server
Get the ip address of each phone (Menu, 9 on the handset) and open that with Internet explorer.
- Click Admin, Advanced.
- Click Provisioning.
tftp://ip.address.server/spa_general.cfg in the Profile_Rule tftp://ip.address.server/SPA$PSN-$MA.xml in the Profile_Rule_B tftp://ip.address.server/spa$PSN-6-1-5a.bin in the Upgrade Rule Change Upgrade enable to Yes
- Reboot your phone and it should upgrade the firmware and configure with the settings for that mac address.
Yes, that was a tricky section, but worth the effort in a business environment.
- Download the latest firmware from Cisco.
- Edit SPA-942.cfg (rename for model number if you have spa-962 or different)
Configure the Trixbox to Engin Trunk
This trunk will be used to make and receive calls to the outside world.
- Open Your Trixbox Web Management Interface (Internet Explorer, then the IP address)
- Click Admin, On the Left Select Trunks.
- Select Add New SIP Trunk.
- Enter the Following Information.
Outbound Caller ID : Your Phone Number
- Scroll Down to Peer Detail. Enter Trunk Name : Engin.
- Change your Password, Phone Number and Proxy in the details below.
disallow=all allow=ulaw&alaw auth=md5 canreinvite=no dtmfmode=rfc2833 fromdomain=Koala1.byo.engin.com.au fromuser=0280040000 insecure=very musiconhold=framed nat=yes port=5060 qualify=no realm=mobileinnovations.com.au secret=passw0rd type=peer username=0280040000
- Scroll Down to Incoming Settings
- User Context : Enter your engin phone number.
- In the User Details Box Enter - Change details for your Proxy, Phone Number and Password.
context=from-pstn fromdomain=Koala1.byo.engin.com.au outboundproxy=Koala1.byo.engin.com.au secret=passw0rd type=user username=0280040000
- In The Register String Enter the Following, 0280040000:passw0rd@byo.engin.com.au/0280040000 change your Phone and Password.
- Leave byo.engin.com.au the same for the register string.
- Click Submit Changes. Then Click The Apply and Reload.
- You can check the trunk is registered. When you click System Status your should see 1 SIP Peer online.
- Now We are almost ready to make an outbound call. We just need to add an outbound route.
Create an Outbound Route
An outbound route is simply a rule on where to send a dialed number.
- Open Your Trixbox Web Management Interface (Internet Explorer, then the IP address)
- Click Admin, On the Left Select Trunks.
- On the left you will see Outbound Routes, Click it.
- Trixbox creates 1 route by default, You will see it on the right 9_Outside, Click on this.
- Delete this route, we will create a new one. (Click Delete Route 9_Outside)
- You should now be looking at the Add Route Screen
- Enter The Following
Route Name : Engin Route Password : Leave Blank Dial Patterns : x. Trunk Sequence : Pick Your Engin Trunk
- Click Submit Changes, Apply and Reload.
What we have just done is say Anything (x.) send via engin. We can get more advanced with our dial plans later.
- You should now be able to make your first call via the internet using your Business Trixbox PBX
Summary
Congratulations, you have now created a fully functioning VoIP PBX system. This can scale to hundreds of handsets and handle many calls at the same time. This is only the start of what your system can do.
Trouble Shooting
O.K. So maybe something isn't working as expected. Here is a quick checklist on things to diagnose.
The Risks
You may be used to calling your local service tech when you have a problem with your system, you may like the idea of a system with no moving parts and everyone understands the importance of telephones to any business. Managing the risk of a failure is important, the worst thing that can happen is something fail, panic set in and start trying random things to fix the problems. Hopefully you purchased good cisco quality phones, have a reliable router and internet connection. If all goes bad, check our Australian Asterisk Support Section.
Your Internet Connection Could Fail
Yes, the internet connection can drop leaving you without phone calls. This is a rare occurance and engin have a facility that if your server is unreachable phone calls can be routed to another phone number. This could be a mobile or a traditional line. This happens automatically so you will continue to receive calls, when the server is back online, calls will go back to the trixbox.
The Server Could Fail
This is probably the worst that could happen. Hopefully you can just swap a power supply and everything just powers up. If it is more terminal, you have just seen that a server can be built from scratch in around 1 hour. See in our trixbox advanced manouvers section how to backup and restore your configuration. This means you can recover from complete failure in around 30 minutes.
Lost Confidence, Lack of Handover
This is the biggest problem, people rarely like change and when you move from a key system (commander 4 lines etc) to an advanced VoIP system staff are often overwhelmed with learning new procedures. They become very aware of call behaviour and if it is something they are not expecting they can lose confidence in your new system, fast. Be sure to test and re-test and then test again before telling staff this is the new system, hand over explaining how to hold, transfer, park, check voicemail, empower them to use the new system. The phone is something most employees interact with every day.
Call Echo, Dropped Calls
Call echo and dropped calls should not happen. Work out why and resolve quickly. Echo problems will mainly be associated with PSTN (Telstra Lines) and impedance mismatch. You can read more about this later in the Advanced section if you move your telstra lines into your Trixbox Business PBX.
That is about as scary as things can get, keep the Trixbox CD handy, run backups. If you have are a staff member looking after the PBX, document the recovery plan cleanly so it is easily followed.
Advanced Asterisk/Trixbox Business Manouvers
This is a list of advanced functions, so you can delve deeper into your new phone system. It is very advanced and can do more than you can imagine.
- Configure your IVR Also called a digital receptionist or auto-attendant.
- Make more calls with G.729
- PSTN Lines to your VoIP Server
- Configure an extension for a tele-commuter.
- Configure trixbox servers between 2 locations
- Changing the music on hold
- Different Outbound routes
- All information is supplied without guarantee. You should consider requirements and consult a professional before implementing any new system or service.