Welcome!

Linux Authors: Michelle Drolet, Elizabeth White, Larry Dragich, Michael Bushong, Roger Strukhoff

Related Topics: Linux, Wireless

Linux: Article

Asterisk: Getting Connected

Part 2: A step-by-step guide

In December's column, we installed the Asterisk PBX and configured two IP phones as extensions. This month, we'll connect our PBX to the telephone network for incoming and outgoing calls and set up the Digital Receptionist to route our incoming calls.

Connecting Asterisk to the Telephone Network
Asterisk supports a myriad of ways to connect to the public telephone network. Asterisk provides standard technologies such as IAX (Inter-Asterisk-eXchange), SIP (Session Initiation Protocol), and PRI (with appropriate hardware). We'll be connecting with IAX because it's simple and widely supported by VoIP providers.

Choosing a VoIP Provider
We'll be using VoIP services provided by Blue Networks, Inc., because it offers the best mix of pricing, support, and connectivity. Blue Networks also has online sign-up and a no-nonsense free trial.

Head over to www.sellVoIP.net/ and click on "Free Trial." Blue Networks will send your username and password to the e-mail address you supplied during sign-up.

Your VoIP experience can be affected by many variables. Network latency and reliability issues between your Asterisk server and your provider's gateway are the most critical factors. Luckily, Blue Networks has multiple gateways and finding one with the least latency is simple.

To determine which gateway to use, log into your Asterisk@Home machine either from the console or with a secure shell. Once logged in, issue the following command:

[root@asterisk1 ~]# ping -qc5 miaiax1.sellVoIP.net

After a few seconds, you should see ping results similar to:

PING miaiax1.sellVoIP.net (69.25.180.232) 56(84) bytes of data.

--- miaiax1.sellVoIP.net ping statistics ---
5 packets transmitted, 5 received, 0% packet loss, time 4004ms
rtt min/avg/max/mdev = 38.139/39.095/40.131/0.744 ms, pipe 2

Make a note of the average ping time. In this case, it's 39.095 milliseconds. Run the same ping for seaiax1.sellVoIP.net and nyiax1.sellVoIP.net, then log out. We'll use the server with the lowest average ping time. In my case, miaiax1.sellVoIP.net was the fastest to respond.

Let's configure Asterisk to connect to the fastest gateway and make a couple of test calls.

In AMP, click on Setup, then Trunks. Click on "Add IAX2 Trunk." We'll use the account number "12345" and the secret "mysecret" in this example. Replace these with the account number and secret you got in the e-mail from Blue Networks.

In the "Outgoing Settings" section, we'll add the following:

In Dial Rules, add:

Replace 919 with your local area code. Asterisk will automatically dial this area code whenever a number dialed doesn't include one.

At the bottom of the page, add the following to the "Registration" section:

Remember to replace "12345" and "mysecret" with the IAX username and secret from your sign-up e-mail. When complete, click on "Submit Changes."

Next, click on "Outbound Routing." Select the default route of "0 9_outside." In the section "Trunk Sequence" select the IAX2 route we added above, then click "Submit Changes" and click on the red warning to make your changes take effect, see below.

You should now be able to make phone calls! Remember, since your trial account has a 10-cent balance, your phone call will be limited to a few minutes. Also, always dial 9 and then the number.

To get a phone number (called a DID for "Direct Inward Dial"), you'll have to sign into the SellVoIP Portal (www.sellVoIP.net/portal/) and add funds to your account. You'll then click on "Add DID" and select the DID from the list. At the time of this writing, there are several dozen toll-free numbers available, as well as numbers in various area codes throughout the country. If your area code isn't available, request it in a support ticket.

Once you have a DID, configuring Asterisk to use it is quite simple.

Click on Trunks then click on the SellVoIP trunk we just added for outbound calls. In the section "Incoming Settings" enter your IAX username. In User Details, add the following:

Let's also set our outbound caller ID to this DID. Do this by putting the 10-digit number in the "Outbound Caller ID" field.

Click "Submit Changes," then click the red banner to make those changes take effect.

Configuring the Digital Receptionist
What use is a fancy PBX without being able to route calls? The Asterisk Management Portal (AMP) lets us route inbound calls to the Digital Receptionist, directly to an extension, to a ring group, or a call queue. It will also let us specify different options for "after hours" calls.

We'll configure the Digital Receptionist to handle our incoming calls. Before we record any prompts or greetings, we should take a few minutes to sketch out our requirements and user experience.

Our example company, Spatula City, has a receptionist who should always be reachable by dialing "0." There are only two extensions, so it isn't necessary to configure a company directory. We want the caller to be able to reach our Sales and Customer Service departments through the menu. Our main menu should sound something like:

"Welcome to Spatula City! If you know your party's extension, please enter it now. For the sales department, press one. For customer service, press two. For the operator, press zero."

In AMP, click on Digital Receptionist. The Receptionist will need to know your extension to record menu items.

AMP gives us the option to record our prompt over the phone or upload it as a WAV file. Let's record the prompt through the telephone by picking it up and dialing *77 and reading the welcome message above. You can dial *99 to listen to the recording and *77 again to re-record.

Once the recording is complete, we need to name and describe it:

After clicking Continue, AMP needs to know how many options there are on the menu we just recorded. Enter "3" here.

Spatula City is a small operation. It has a bookkeeper in the back at extension 200. She's also the operator. There's one person dedicated to sales and customer service at extension 201. Our call routing is simple:

Finally, we have to tell Asterisk to use this Digital Receptionist for incoming calls. In AMP, click on Incoming Calls. Spatula City wants the Digital Receptionist to handle incoming calls all the time, even when the store is closed. The easiest way to do this is to set the Digital Receptionist to "Spatula City Main" for regular hours and force regular hours as shown below.

Testing the Receptionist
Asterisk@Home can simulate an incoming call from any extension by dialing 7777. After dialing, you should hear the main menu presented by the Digital Receptionist.

More Stories By Stephen Misel

Stephen Misel has been developing Linux-based applications for over 10 years. He is the owner of Misel Consulting, LLC, a Voice-Over-IP consultancy.

Comments (1) View Comments

Share your thoughts on this story.

Add your comment
You must be signed in to add a comment. Sign-in | Register

In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.


Most Recent Comments
SYS-CON Italy News Desk 02/09/06 09:33:26 AM EST

In December's column, we installed the Asterisk PBX and configured two IP phones as extensions. This month, we'll connect our PBX to the telephone network for incoming and outgoing calls and set up the Digital Receptionist to route our incoming calls.