Using Asterisk In Your Home – The Uses

So now we have Asterisk set up for home use. What can we do with it now? If you happen to have mischevous teenage kids, you can log all your calls! Maybe you want to have a seperate line for those teens. The great thing about Asterisk is flexibility. You can do almost anything you can think of.

Here are a couple ideas for you.

  • Call logging
  • Call forwarding
  • Virtual phone lines
  • Call recording
  • Conferences
  • Cheap phone service
  • Voicemail
  • Wakeup calls
  • Reminder calls

There are a thousand and three other things to do with it, but that’s just the first couple things that come off the top of my head.

P.S. I want to hear what you guys use Asterisk for in your house. Post a comment with your ideas.

Using Asterisk In Your Home – The Setup

When setting up Asterisk for home use, you’ve got a million and a half ways to do it. If you want to take the easy way, Asterisk@Home is the way to go, thus the name. It provides a GUI that you can use, instead of having to write all your own code. However, if it were me, I like writing my own code. So that’s what I would do.

Now, for this kind of thing you have a few options.

  1. Use VOIP
  2. Use your existing Landline
  3. Turn your Landline into VOIP

Continue reading

What distro of Linux should I run?

There are hundreds of distro’s of linux that you could run Asterisk on. There is even a Windows port out now. However I would hesitate running in on Windows as it’s still beyond buggy.

You could choose to run it on Knoppix (my personal favorite), or Slackware, maybe straight up Debian. Why not go for a Red Hat install? Or maybe even a Damn Small Linux perhaps? There are so many to choose from. The problem with choosing one is all about neccessity. Personally, I love to use Debian based OS’s. That’s why I choose Knoppix, or in the case of what I have installed now, a modified version called “Auditor“. It comes packaged with tons of penetration testing software which I find quite useful.

I would reccomend heading over to www.DistroWatch.com and finding a distro that woul work for you. Like I said before, it’s all about neccessity. If it’s got what you need, then use that version. I like having all the security tools, so I choose to use Auditor. If I didn’t need them, I would go with plain Knoppix, however it suits my needs. So go out there and look around. See what would fit you.

What do I need to run Asterisk?

A computer. A clunker. A piece o’ trash! Nothing exciting really. If you’ve got an old dusty computer sitting in your closet, pull it out and throw knoppix on that bad boy!

Currently I am running the Asterisk PBX on a 1.3 Ghz, 20 gig computer with a 4x cd drive… I have a nice new cd burning drive sitting in a computer next to me (the computer doesn’t work but the cd drive does) but I just haven’t gotten around to putting in the new drive yet seeing as how I don’t really use it. But anyway, I scrapped it together using parts from OOOOLD computers I bought from a thrift shop and I got the case and motherboard from some guy I had some classes with. The point is, you really don’t need much at all. As long as the computer can run linux, you’ll be fine.

IAX and SIP

Here are two protocols that I have played with using Asterisk. They are the most common in my opinion as well, IAX and SIP. Of course you’ve also got H.323 but I’ve never played with that one.

So first of all, I bet you are asking yourself, what the hell am I talking about protocols and geese and tear ducts, oh my! Well, a protocol is simply a way that a call is made. It’s the system that it goes through. SIP is going to be through a standard telephone line. If you connected your Asterisk box to your home phone line, that’s SIP, thus you would have to set it up using SIP specific terms and utilizations. IAX however is a bit more interesting to me. IAX is a protocol that Mark Spencer actually created. It’s in the second version now, so it’s usually referred to as IAX2. Continue reading

The Playback() and Background() Functions

These two functions are going to be commonly used in your dial plan. They are virtually the same thing with the exception of one detail, interactivity. First of all, let me share with you a piece of my dial plan that I am currently using on this computer.

[incoming]
exten => 866*******,1,Answer()
exten => 866*******,2,AGI(call_log.agi)
exten => 866*******,3,Wait(2)
exten => 866*******,4,Background(main)
exten => 866*******,5,Wait(15)
exten => 866*******,6,Hangup()

Let me share with you what all of that does. First of all, every line in the dial plan starts with “exten =>” then the incoming DTMF tone, then the priority of which the call will flow, and lastly the program to run. So, First it answers from the toll free number I have set up, it runs a call logging script, waits for 2 seconds, then plays a background file, waits again, and hangs up.

Ok, so you now see a background file in use, lets discuss it. Basically it will play a file and lets the user select something from a menu that you provide. Typically background files will say things like “If you would like to… press 1″ and so on.

On the other hand, the playback function will not let the user press any buttons. the function ignores any DTMF that comes through the line.