Matt G. Watson

Just another geek
Add to Technorati Favorites

Migrating to Asterisk VoIP PBX – Part 3

Thursday, May 15th, 2008

Continueing on from where Part 2 left off, this post will be mostly filled with configuration information used throughout our infrastructure getting it getting for Asterisk.

I left off Part 2 talking about my TFTPd modification that allows me to execture arbitrary commands when a file is requested from my TFTPd server, to explain the rule mentioned in my previous post.

x ^00085D /usr/local/bin/mkaastracfg

the ‘x’ means this is an ‘execute rule’, this is what my patch added. the ‘^00085D’ is the pattern to match, the Aastra phones request a config file named <MAC>.cfg, that 00085D is the OUI prefix for the Aastra phones. Then as you can see it executes my mkaastracfg program, the filename being requested gets passed to mkaastra config as a command line argument, this is how the program collects all the configuration data. The only extra step here is configuring your DHCP server to set option ’66′ (boot-server) to the IP address of your TFTPd server.  If you are using ISC DHCPd you just need to add the following line to your scope.

option tftp-server-name “10.1.0.10″;

This now essentially allowed us to create devices and assign default users to devices inside FreePBX, then plug a brand new right out of the box phone into one of our PoE ports the phone boots up our TFTPd dynamically creates its configuration file when it boots and thats it, the new is up and rocking, no additional configuration required. I also recommend dropping your firmware files on your TFTPd server as well, as your phones will automatically download updates when you place them there.

(more…)

Migrating to Asterisk VoIP PBX – Part 2

Wednesday, May 14th, 2008

Continuing on from part 1 of my Migrating to Asterisk VoIP PBX – Part 1 series off. In part 1 I talked about the problems we faced with our current PBXs and what the general plan was to fix it. In this part I’ll be discussing how we got our infrastructure prepared and began to take the idea from research to an implemented stage 1 of our plan.

I believe I failed in mention that in Part 1, as part of our research we needed additional software on top of just Asterisk. Management at our company wanted the system to be maintainable by the non-nerdy, mostly to just be able to do basic things, create extensions, change voicemail passwords, these kinds of things. Originally we outright said “sorry, thats not going to happen”, our initial plan was to write the entire Asterisk dialplan by hand, seeing as how Asterisk was new to use we knew this was going to be a challenge, but we were prepared to do it. Asterisk dialplans I consider to be a bit of an art form, while in a sense it is just another programming language, once you get into it you quickly realize it shares very little similarity to any programming language you already know. Asterisk does however offer an alternative to its regular configuration language that is a more programming-like language called Asterisk Extension Language (AEL). AEL however is considered experimental, that word alone was enough to make us shy away from it. I kept asking my friend Matt Gibson about Asterisk and how he managed it, he pointed me in the direction of FreePBX which is essentially web-based configuration utility for Asterisk that writes the majority of the configuration files for you, not to mention gives you a ton of features out of the box without having to write any dialplan by hand. Score 1 for management, they got the ability for the non-nerdy to manage parts of the system even after we said it wouldn’t happen!

(more…)

Migrating to Asterisk VoIP PBX – Part 1

Tuesday, May 13th, 2008

This first series of articles will be a recount of my experience recently with a VoIP project that we implemented over the last 6 months where I work. I have taken a phone-system consolidation project from idea to research to testing to a completed project. Part 1 will focus mainly on our existing infrastructure and what the plan was.

We had tried to do this a year previous, but relied on outside companies to propose something to us, my opinion is that they didn’t do a great job selling their idea and really left it up to us to find the benefits. Unfortunately we failed to find enough benefits to outweigh the costs. This project was always in the back of my head and a year after that and I still wanted to do it. One day a co-worker said to me”Why can’t we transfer calls between offices?”. My reply was “Great question! You should go ask <our Manager of Finance>”, she was the one that was part of the original try at this, and ultimately the one that decided we couldn’t afford it then. My biggest problem with the system was the lack of ability to transfer between offices, being that I work at head office, I always overheard phone calls to our receptionist where people were looking for our staff members that worked for another program that did not operate out of our building, but operated out of the other 3. We would have to give the person the phone number for that program’s main office, and then that receptionist might end up telling them that person is in a different office and have to ask them yet again to hang up and call another number… we thought this was horrible client service and wanted to fix it.

After that co-worker said this to me, I began doing some research, a friend Matt Gibson had talked to me off and on over the past year or two about the Asterisk open-source PBX, however I didn’t really know a lot about it at the time. I began asking him a lot of question about it and eventually decided that it sounded perfect for us. I started doing a lot of research on my own time and did some number crunching to find out what it would cost to implement, and more importantly, how in the long run it would save us approximately $7000 per year. To a non-profit that is primarily funded by offering various government programs, that can be a big chunk of change. I poured a lot of heart and soul into this project, I truly believed it would be great. After I had crunched my numbers, I approached our Manager of Finance again with the project and said “What would you say if I told you the telephone system project would cost you $25,000 but it would save you $7000/year… would you be interested?”

(more…)