As an admin for a telephone system, possibly one of the most useful things you can do is monitoring your peers and trunks. There are 2 great reasons you should do so:
1. You can respond to and resolve issues with your system before your users know about it, and you can be in the know if someone reports “none of the phones are working” when in fact only 1 or 2 are not working
2. You can actually know when there is a problem with the system – where you otherwise might not know there is a problem until someone calls on your mobile to say your office number is not working
I have 2 scripts running every 15 minutes to email me with the details of any down extensions and trunks. This is done in Crontab with the line:
*/15 8-18 * * Mon-Fri /usr/Peermonitor.sh
and similar for Trunkmonitor.sh. This line says to run every 15 minutes between 08:00 and 18:00 every Monday-Friday
This information is provided without warranty – although I have been using this configuration successfully for over 12 months.
In FreePBX there is a module which has changed it’s name but remains an extremely useful one. Day/Night control, now called Call Flow Control, allows you to set a toggle-switch to change how a call is routed within the system. Typically this could be a Day or Night mode service, but you might also want a ‘We are closed for Christmas’ message for example. Using an announcement as the ‘night’ destination, using a recording linked to a feature code before going to a voicemail box, gives you a very quick way to temporarily close the office, with whatever message your users want to record themselves.
However, the module has a limitation; it only allows you to setup Callflows 0-9, for a total of 10 call-flow options. Should you need more than this, you would either need to program them manually, or else you can edit the module thus:
When you start looking at control panels for Asterisk it can be difficult to decide what you should be using – FreePBX or A2Billing.
While they are both web GUIs for setting up Asterisk, they are used for different things and which one to choose depends on your needs.
Here is a brief description of both to help you decide –
Used for setting up extensions and trunks for inbound and outbound calls
Includes lots of features of a traditional PBX – voicemail, IVRs, ring groups, queues etc.
Includes Call Detail Records (CDR) that logs all calls, their destination and duration
Used for billing for calls
Can be used to charge for calling card, sip user or regular outbound calls
The heart of A2Billing are the rate cards that include the per minute cost for all destinations allowed to be called
Least cost routing with multiple rate cards with the cheapest route being chosen
Admin and customer interfaces
So FreePBX is used to setup Asterisk with the features of a ‘traditional’ PBX and A2Billing focuses on billing for different types of calls.
It is also possible to combine the two and use A2Billing to account for outbound calls for extensions setup within FreePBX.
A2Billing is more complicated to setup than FreePBX. While it’s possible to setup an extension and trunk in FreePBX and start making calls very quickly there is quite a learning curve with A2Billing. Managing rate cards which hold all destinations and their cost can be quite complex.
If you’re using FreePBX or one of the distributions that use it such as Trixbox, Elastix, PBX-in-a-Flash and are having a problem with IVRs being slow to respond it it is worth checking that you do not have “Enable Direct Dial” enabled for the IVR.
This option allows a customer to dial an extension number rather than an IVR menu option but this means that FreePBX has to wait to see if an extension number is being dialled, which can introduce a delay.
If you don’t need callers to be able to dial extensions from an IVR then you can turn this option off.
Just set the codec you’re going to be using (check with your VOIP provider – g.711/ulaw is usual and the highest quality), the connection type (usually SIP or IAX2 with Asterisk) and the number of concurrent calls. It will then display the bandwidth required for that many calls.
One thing to watch out for if you’re planning on mixing codecs (say g.711 on one leg of the call and g.729 on the other) is that your server will have to transcode/convert the audio which is processing intensive. This may limit the number of concurrent calls your server can handle.
Also don’t forget that if you’re planning on running Asterisk at home your upload speed will normally be a lot slower than the download speed.
EDIT – these test numbers are no longer functional
As a quick demonstration of what you can achieve with Trixbox in a couple of hours I have put together a demonstration phone system.
Trixbox uses Asterisk and FreePBX to provide a richly featured phone system that you can do lots of interesting things with.
For the demonstration I created a phone system with DDI numbers in the London and New York. These phone numbers are provided by future-nine.com.
If you would like do give it a go you can call the system using the following regular telephone numbers –
The system comprises an automated voice menu with the following options –
Press 1 – for some music.
Press 2 – for a speaking clock that reads the time in the UK.
Press 3 – for an echo test. This will echo back everything you say to it, giving you an idea of the delay on the line.
Press 4 – to leave a voicemail. This will then be e-mailed to me as an e-mail attachment.
Press 5 – for some current news. This is produced by downloading the latest rss news feed from Yahoo and then converting it to speech using software from Cepstral. It’s certainly not perfect but gives an idea of what is possible. The audio is updated automatically every hour. The main IVR menu speech was also created using Cepstral.
The whole process from ordering the phone numbers from future-nine, to having a functioning phone system, took only a couple of hours and the only part that is not possible to perform via the web gui was downloading and converting the news feed.
As FreePBX forms the basis of most of the Asterisk distributions is just as easy to do the same with Trixbox, Elastix or PBX in a Flash.
Please give it a go and add a comment below to let me know how you get on.
If you’d like more information about virtual PBXs from Sysadminman then click here