Thursday, July 15, 2010

Fun with Asterisk (* and I ain't talkin' sports records)

Recently a friend of mine, Rob "Nosbig" mentioned me in his blog entry "My Live With Asterisk".  So I figured I'd give you my perspective and experience.

I'm not new to VoIP, but I am new to rolling my own, so to speak.  I've been using a Linksys SPA900 IP-PBX, SPA400, and SPA942 phones.  You might ask why I've got such a home setup... well it has everything to do with a funky firmware on the SPA400 and a company that wasn't willing to wait for a more stable version... but I digress.

Here's my setup; be warned, it's UGLY.  My voice connection comes into my home via a VoIP provider that does not permit me to "Bring Your Own Device" (BYOD).  Because of this, I take the FXS  on the back of my SIP provider's device and  plug it into the FXO on the SPA400.  When a call comes in and rings the SPA400, it hit's the SPA9000 which in turn has a ring-all group that rings the SPA942s in my house.

This setup has worked pretty well but I really don't like a few things.  First, I don't like that when a call rings all the phones and you pick it up, all the other phones now have a "missed call."  Second, I'm limited on features.  I'd really like to have some sort of find-me feature where my home PBX rings my cell if I'm not at home.  Lastly, I HATE the SIP to Analog to SIP conversion.  The call quality is amazingly good... but on principal I'm disgusted.

So, how do I fix this?  Well, I set aside some time with my good friend Nosbig and we talk Asterisk.  Now, what's Asterisk you ask... Well, it's an IP PBX.  It's the swiss army knife of Telephony.  It's an enterprise class telephone system that is FREE!

Rob filled me in on the advances of the FreePBX interface, and it sounded like something that I could get into.  I showed up at his house with two P4 boxes, a handful of SPA942s, and associated peripherals.

I tossed the freshly burnt disk into the CD-Rom and booted into a simple install.  Yep, it's the ol' RedHat'ish install.  It agrevates me that it doesn't let me setup any user other than root, rename the machine, or set the IP address... all this must be done after the install.

Once thins were rolling, we had some issues getting calls going.  We ended up having to load some Asterisk modules by hand, chan_sip and func_dialplan... not sure if this was an artifact of updating and not reloading or what.  Once we did that all was well.  We were dialing around in well under an hr.

Once I cut my teeth on the basics, I took my new toy home and really had some phone.  I created a trunk to my SPA9000 allowing me to 4-digit dial all the other phones in my house.  I also created a trunk to my SPA400 permitting me to dial to the outside world.  In less than half a day I had a fully functional phone system, and I hardly even knew what I was doing.

With some more playing I just kept getting more and more impressed.  Quickly I began to see options.  I setup my VPN connection on my laptop and a SIP client and boom... extension to may SIP client.  Hmm... Droid?  Yep, there's an app.  Type type RING!  SIP phone goodness on my Droid!  Oh, this is going to be fun!

So, what's the point of this post?  Geeky stuff can be FUN!  That's the beauty of Free and Open Source Software.  You can have all the fun of REALLY EXPENSIVE toys w/out needing to spend a dime.  That being said, if you want to use this in an enterprise setting, it's ready to roll and there are wonderful geeks out there like Nosbig to support you with it.  So, if you are looking for some fun with phones in your home, check out Asterisk.  If you're looking for an incredibly capable phone system for your company, CHECK OUT ASTERISK.

Thanks for the mention, Rob.  Also, if you're looking for more info on home network setup, look back here shortly.  I'll be doing a few posts on the upgrades I've got going on here.  More Asterisk, Firewall Replacement, NAS, and much much more!

1 comment:

  1. It must have been a quirk of the particular setup we were using, as I had no trouble with modules loading on the install described on my production phone system. I'll have to try reinstalling it on a test system someday to see if we can reliably duplicate the problem and know why we had so much trouble.

    Rob

    ReplyDelete