I currently serve as a Peace Corps volunteer in Chadiza District of Eastern Province, Zambia. I am looking for more information on how to set up a server to be used as a VOIP callback service. I want to have it so someone can call a number, have it instantly hand up then call them back. Then, using this incoming call, enter another number for who they actually want to talk to and finally be connected to the other person. I have only the most basic knowledge in telephony technology, my main area of computer knowledge is web design and related high level programming (my main work is in agroforestry and micro business creation). Therefore I wanted to know what the simplest way to set up a VOIP server would be and what it would entail. I realize that anything involving VOIP and older telephone systems is going to be fairly involved, however i am looking for the steps to set up such a server so I can know how feasible it is for me to complete the project in my remaining time hear in Zambia.
Setting up a server is actually not to hard, specially if you have computer experience.
1 - Hardware
A) - Server
You will need a Computer (PC). There’s a lot of debate about what type of hardware you actually need; feel free to read all the posts.
I personally setup an Asterisk server on a Pentium 3 with 512 mb of Ram. The Install was quite slow (compared to a Pentium 4) but once it was running, it was ok.
Anything equal to or above a Pentium 3 500, 512MB of Ram and 10G Hard Disk should get you started.
B) - Telephony Hardware
You will need some sort of Telephony Hardware to connect to the PSTN (Telephone Network). Your main choices are Analog (Like a normal Telephone line you may have at home) or Digital (BRI-2 Phone Lines or PRI-23 Phone lines)
The best cards (in my opinion) are made by www.digium.com. Be extra careful when choosing that you have the right motherboard connections for them. There are 2 different kinds of PCI slots (3.3 Volt and 5 Volt) and PCI Express. Check the motherboard manual to see what choices you have.
Also, make sure your card supports CALLERID. If you would like to have a CallBack Service, you will need to see the person that is calling’s CALLERID. All the Digital Boards will support CALLERID. I’ve never worked with the Analog boards so I’m not sure.
To get Started, you don’t need the Telephony hardware. You can get a server going and use a SIP Client (Either a Hardware SIP Phone or a Free Soft Phone). If you don’t have Telephony Hardware, you can call SIP to SIP but you can’t call to the PSTN or receive calls from the PSTN.
2 - Software
A) - Linux Version
There are a lot of Linux version out there and I believe most of them will work well with Asterisk. I personally used SLACKWARE and DEBIAN. Slackware was very easy to use and I was setup in hours. Debian was a little harder (I had to include and compile extra items) but I did get it going).
B) Asterisk Version
The 3 main choices for Asterisk are:
- Asterisk Commercial (You need to pay for it but it comes with Support from Digium)
- Asterisk Now (Contains Linux, Asterisk and a GUI (Graphical User Interface) to get you started faster)
- Asterisk. This is the one I use. It’s a CLI (Command Line Interface) but It’s easy to use.
HOW TO GET STARTED:
I would start by reading the Free Asterisk Book:
Then I would go to www.asteriskast.com. These guys do a full Asterisk Install with Screen Captures. This was a great help to me. You will need to get a Linux Slackware going as they only do the Asterisk Portion.
This is the best episode to get started:
I hope this helps and let us know if you have any questions.
Hi - any links to the stuff you’re doing in Zambia?
If you haven’t seen this already, Digium - the asterisk people, have an ISO for download which you can burn onto a CD, boot and install asterisk with a v.functional GUI at asterisknow.org
I haven’t tried the 1.5 beta, but you may as well give it a shot. Any old Pentium 3 should do you fine for what you want but you will only get 2 or 3 concurrent calls. Depends what hardware you’ve got available.
To do call back, there are a few different ways.
a) Will you have caller id presented to you to the asterisk box? If so, you can automatically hangup on the call, then call them back writing a .call file.
This is a text file that gets moved to a certain asterisk directory which gets scanned v.v.often (almost immediate action).
If you haven’t got caller id presented, as is the case with a lot of international dialling we’ll have to try a different method which would need a 100 number indial range (or equivalent). This is like when you are in an office and you have your main office number on 82136100 and all the other numbers like 82136101 82136110. The same 821361XX pattern. You could assign a different ending to each person to call back. E.g. I would be calling from location X and I would dial 82136131. My brother would ring up 82136132, my sister 82136133. Each of those different numbers would trigger a configured asterisk box to dial back to a different preconfigured number. Again dialing using this .call file.
Once the call-back is established/up, you would present the other number with a dial tone using the DISA command. The asterisk box would then listen for digits which are the numbers to dial. The call could then be placed.
So what’s the scenario?