911 VOIP Calls Should Be Tested

911 dispatch

All Americans know how to call 911 in case of am emergency. The system was first investigated in 1958 and was set in place in 1967. The first 911 call ever to be made was in 1968. The caller was Rankin Fite, then the Alabama Speaker of the House, and the person who answered was Congressman Tom Bevill. The 911 emergency call system has gone a long way since then and has saved countless of lives.

Today, with telephony covering many aspects and facets aside from the conventional telephone lines, the ability to reach 911 in case of an emergency is something to consider. With VOIP becoming as prevalent as it is today, it is but natural to make sure that people who use VOIP lines instead of conventional phone lines will still be able to call 911 and get the fastest service possible.

This is why the Lee County Division of Public Safety is calling for the testing of the efficiency of calling 911 from VOIP lines. To date, there has been no case of failure or complications of 911 calls from VOIP lines. However, I do agree with them when they say that we should not have to wait for such an occurrence.

So why should there be any complications with VOIP lines when they function basically the same way as regular phone lines? The fact is that there are differences – significant differences. This is particularly important with the Enhanced 911 service, wherein details such as phone number, name, and address are displayed. This information can spell the difference between life and death in some cases. If the person in trouble does not have time to state the important details, the dispatcher just has to look at the information displayed on screen and have the proper people go over to the site.

Sometimes, though, when VOIP users make calls, the vital information is not displayed at all. What reasons could be behind this? One reason could be that the VOIP user did not give their VOIP service provider (VSP) that information – this could be either because they purposely did not do so OR they were not informed that they should have done so. In any case, the possible results are the same – no information will be displayed when they call 911. More so, some VOIP calls do not get connected directly to the 911 center. Instead, they are routed to a VSP center first.

As you can see, this is a vital point that has to be dealt with soon – before anyone actually gets in trouble because of the lack of proper preparation.

VOIP: The Good and The Bad

plus minus sign

In the recent months, VOIP services have gotten more and more attention – both for individual and business purposes. Sometimes, though, we get all caught up in the hype that we may not really see the details. Is VOIP really all that it is made out to be? Does it really bring about advantages? If so, what are they? On the other hand, does VOIP have disadvantages? And if so, what are they?

Let’s look at the positive side first. What are the benefits that VOIP offers? Of course, the benefits vary depending on the specific VOIP service provider. More so, these will depend on the specific features of the VOIP provider.

Unlimited calls for a very low price.
This benefit is actually quite dependent on the plan that you take on. For certain plans, VOIP users can make unlimited phone calls for a very low fee. This could mean that a flat fee is charged for a certain period of time, with no limits as to how many calls can be made. For other plans, it could be that the charges are made per call – for a very low fee still. In any case, the bottom line is that more calls can be made – long distance especially – for much cheaper.

Charging is done per second.
Again, this depends on the VOIP provider and the specific plan. For some VOIP plans that charge per call, however, the calls are charged per second and not by the minute. This makes for a lot of savings as you only really pay what you use.

Mobility and flexibility.
There are many VOIP platforms today which can be used anywhere in the world – as long as the user has a computer and a fast Internet connection. This makes for a lot of convenience as we all know that almost anywhere you go, you can connect to the Internet. This is particulary efficient and cost effective for business people who travel all the time.

Now how about the downside? VOIP surely has some disadvantages as well.

Security.
Like it or not, there are some security threats to VOIP. Generally, though, service providers are handling these issues the best way they can. This is not to say that security threats will not come up in the future, though.

Dependency on Internet speed.
The main thing that makes VOIP great can also be its downfall. Call quality is highly dependent on the speed of the Internet connection. If the Internet speed is not enough, then VOIP calls just might not be possible.

Social Networking Benefits From VOIP

girl with headset

I was talking to a younger cousin the other day and I was surprised at how involved she is in social networking. I was asking her about her friends and activities and a large part of the conversation revolved around her friends whom she met online. I guess I should not have been surprised at all, with the way technology is constantly evolving to become part of our everyday lives.

Social networking, in particular, has reached astronomical heights in popularity. People of all ages and all backgrounds are coming together online, meeting and interacting through various web sites and instant messaging services. Add to this VOIP and you have a complete range of social networking services.

Think back to several years ago – the main way that people interacted online was through text. They sent e-mails back and forth. Offline messages were sent the same way. Real time conversations were conducted by typing messages on the keyboard. When it became possible to chat through voice – thanks to VOIP – communication became even easier. Now, people with “fat fingers” do not have to worry about having to type as fast as they can speak! All they have to do is plug in a headset and chat away.

Years ago, chatting through voice was limited to computer to computer calls. This was (and is) free. All one needs to do is to log in to a chat room or an instant messaging service and make sure that his/her friends do the same. Today, with various platforms offering computer to telephone calls through VOIP, communicating with friends is even made easier. More than that, the communication costs are slashed down to very minimal amounts.

Realizing this benefit that VOIP brings to communications online, social networking web sites are quick to take advantage of it. There are many online dating sites which offer additional features taking advantage of VOIP. For example, an online dating site may offer a feature wherein their members can talk to each other through voice without the members having to disclose their phone numbers immediately. This is particularly significant for individuals who are concerned about their privacy. Other social networking sites have also added widgets wherein a “call me” button can be placed on a member’s profile.

These may seem “little” but looking at the overall picture, one can indeed say that VOIP is changing the landscape of communications in many different aspects.

Installing Asterisk with a GUI on Linux

I don’t know how I missed this, but I just came across an excellent Asterisk How-to guide on howtoforge.com, the excellent site that houses an increasing amount of guides of doing many things on Linux. The article is entitled “Installing the Asterisk PBX and The Asterisk Web-Based Provisioning GUI on Linux” and it provides a good step-by-step guide on getting started with Asterisk PBX on your favorite Linux distribution.

The guide is neatly organized into chronological sessions that you can follow step by step if you want to implement your own Asterisk PBX or if you would just like to try it out.

The guide assumes a Linux Red Hat ES4 distribution though if you know your way well enough around Linux, you can easily adopt it to suit your own Linux distribution of choice.

The first part of the guide is about installing and configuring the core Asterisk package, and the guide provides clear and concise instructions you can follow. The steps looks easy enough that most Linux users familiar with fiddling with their system can easily follow it. Just in case something doesn’t work though, you’re kind of left with your own “googling” skills. At the end of the 7-step part of the installation howto, you will have a working Asterisk installation on Linux. The guide provides basic test instructions that you can use to verify if your installation of Asterisk was succesful.

Next, the how-to discusses the necessary steps needed for you to install and configure the Asterisk manager: the component of Asterisk that lets you manage your Asterisk PBX. The guide also discusses AJAM, a new feature found in Asterisk 1.4 that allows a web browser or any http-enabled application to access the Asterisk Management Interface

The second page (and the last part) of the guide is about installing the Asterisk Web-Based Provisioning GUI. Although Asterisk can be used through the command line without this component, installing the Web-based GUI will simplify and make things a lot easier if you’re maintaining an Asterisk deployment. Again, the guide provides an extensive and yet easy to follow set of instructions to guide any user trying to install the web-based Asterisk GUI.

Overall, the guide is a good starting point if you want to get your hands dirty with Asterisk PBX.

Tips On Maximizing Your PBX

Sure, you know about the basic features that come with your PBX systems. Features such as call forwarding, voicemail, call accounting, configurability, etc. But for those who haven’t been able to explore the full extent of their PBX’s features yet, this article will give you an idea of the more advanced PBX features you might have overlooked. Hope this post will teach you how to take full advantage of your business phone system.

1. Consolidation – this takes on the “unified messaging role, bringing together all of your telecommunications devices into a single convenient system. The technology works by linking all of your office devices together, and messages you on the appropriate device based upon your availability.

2. Personnel Locator – need to know exactly where your employees are? PBX systems can keep track of where your employees last interacted with the system, data which will allow you to pinpoint their exact location. Some PBX systems are even going as far as incorporating GPS and RFID technology into their locating software.

3. Email Integration – PBX telephony has the ability to merge with email clients (such as Microsoft Outlook) and retrieve contact information on the various customers you’re on the phone with. This will give you a better idea of who you’re dealing with and how to better serve their needs.

4. Total “Business Intelligence” Integration – Properly incorporating business intelligence and your PBX will allow for more streamlined and targeted customer relations, as employees will immediately know background information about the customer, that customer’s history with the company, past issues they have had and whether they have been flagged as a particularly important or problematic client.

5. Call Routing – this allows for calls to be routed based upon certain criteria including caller importance, length of wait, time of day, day of week, etc. Just as with call holding, caller mapping is the key to an efficient call routing scheme. Unless you know all the variants of calls the your company receives, you cannot begin to create a PBX routing system that will properly treat all of those callers.

6. Analog vs. IP Phones – you can setup your PBX so that calls may be directed to either analog or VoIP phones, depending on which calls would be more cost-efficient.

7. IP Multimedia Subsystem (IMS) – IMS allows users to send and receive multiple types of media across a network rather than just hearing voice on a standard PBX system, or reading text on a SMS system. For instance, you could video conference or give an extensive presentation in real time.

Choosing a VoIP Gateway for Your Company (Part 1)

Gateways are essential aspects of any enterprise VoIP system. These transfer voice (and other traffic) between the Public Switched Telephone Network (PSTN) and the IP (Internet Protocol) network. This means VoIP gateways should be able to do much more than traditional PBXes that only interface your internal analog network with the PSTN. As such, you should also expect the gateway to handle other tasks, such as call management, and routing of voice traffic, and translation across the various VoIP protocols, when needed.

Organizations looking into adopting a VoIP solution may be doing so for several reasons. For some, it’s a way to mitigate expensive long-distance and even overseas charges, particularly if offices and branches are located far away from each other (spanning continents, for instance). For others, VoIP gateways offer a more feature-rich network than possible with traditional telephone exchanges.

VoIP gateways basically offer the following features and functionalities: packetization (translation of analog signals to digital packets), compression and decompression (“codecs”), control signaling and voice/packet routing. If you intend to buy a gateway for your company, your decision should go beyond these basics. For one, you should consider the ease of integration of the gateway with your existing PSTN and PBX. You should also consider the level of support that the vendor is provding. Then, of course, you should consider whether the gateway is compatible with your existing VoIP equipment and infrastructure (if any). Finally, there are the added stability and usability features that you might want to have on your system, such as PSTN failover (you can move to the analog line if the VoIP connection fails), H323 and SIP survivability, multiplexing, NAT transversal (if you’re working behind a corporate firewall).

Back to the Basics – Config Files

The configuration files in Asterisk are all text based. Nothing too complicated. If you installed the sample .conf files, then they will have a default setup and will have everything commented nicely so that you can learn your way through them.

The config files have the extention of “.conf” and are located in “/etc/asterisk”. The main file that you will play with is the extentions.conf. This is where ALL the main functionality in Asterisk comes from. In this file you will place the dial plan. There is a tool that I like to use called “The Dialplanner” that will help you in setting up your dial plan. This way it’s all point and click and you can just copy and paste it over to your file through SSH or whatever you want.

If you want to get techincal, you can include other files in the .conf by using the “#include” function. If you know PHP at all, this does the same thing as the include function in PHP. Go figure, haha.

Sniffin’ the VOIP traffic

This time we will install a network protocol analyzer to watch the traffic on our LAN from initiating and connecting a SIP call.

The Wireshark open source project was formerly known as Ethereal. I used to work for a great company called Cybera as a programmer, and I was always fascinated by networking. I’d bug the network engineers for any information I could, and play around with Ethereal to try to understand what they were talking about.

If you’re working under windows, download the installer. For our Ubuntu or Debian friends, it’s available under the standard free apt archives.

There’s one little trick you need to be aware of during the install.

winpcap

Make sure you select WinPCAP as part of the installed goods.Complete the install and start the program. Minimize it for the time being.

Launch your VMWare server and the Trixbox instance, log in, and you’ll notice the IP address shown after you log in. Mine is 192.163.1.93.

Run over to another box on your LAN and make sure you can ping this address, as detailed in my last post.

If you don’t see ‘Logged In’ in the faux LCD window, most likely you’ll need to update the IP address that the phone needs for Asterisk.

Click the little Menu button juuuust to the left of the green phone button. Select System Settings->Sip Proxy->Default.

Menu

Make sure that the IP address for Domain/Realm, SIP Proxy, and Outbound proxy are all set to the IP address of the Asterisk Trixbox server you just started via VMWare.

Remeber, Nerd Vittles set us up with 500 and 501 as 2 extensions to use with these phones. Dial 501 from the 500 phone or vice versa. I launched mine just now and I can hear the kids, dog, and my wife doing fun stuff. Frankly at this point I have to sit back and marvel at the processes running to make this possible. It just blows my mind.
Now comes the hackin’ part. As the SIP call is in progress, flip back to Wireshark.

wiresharc-startup.PNG

From the main window, select Capture->Interfaces.

wriesharcints.PNG

I can see one of the listed network interfaces dealing with a lot of traffic. Choose that one and press the capture button.

wriesharkcaping.PNG

Let wireshark capture at least 5 or so seconds of traffic. So far, on mine, the vast majority of this VOIP traffic is of the UDP variety. Click Stop and wireshark will dump it all into its analysis window.

analyze.PNG

Every line that says OICQ Protocol represents one UDP (User Datagram Protocol) VOIP packet traversing the network. As a side note, it appears that Wireshark has made the assumption for us that these packets are really part of a chat protocol popular in China, which, of course, is not correct.

Right click on one, and select ‘Open in new window’. Go down to the bottom and look at the ‘data’ section of the packet. This data section represents the actual digitized voice of the VOIP call. It’s interesting to me that the protocol used is UDP, which is one of the two major types of IP packets, the other being TCP. UDP is a connectionless protocol, which means that the client generating the traffic simply puts the packet on the wire without regard to checking to see if the recipient actually received it. This also implies that the recipient has to collect the correct UDP packets and reorder them to form a meaningful conversation. I wonder what role the SIP ‘stack’ in asterisk plays in this function. I suppose we’ll find out here at Asteriskblog!

Well, I hope you’ve found that illuminating, and I’m sure we’ll be referring to this tool to diagnose our further work in Asterisk. Please contact me if you have any questions.

Chowing on some Nerd Vittles.

To get started on some askerisk hackin’, let’s head on over to nerdvittles for a very nice treat from a fellow Charlestonian asterisk guru (much more than I).

What they are offering is a .torrent of a VMWare image containing a fully configured Trixbox instance with lots of goodies. Please do download the VMWare server console and the Trixbox virtual machine, and we can get started a-hackin’. Help save bandwidth and keep your torrent tracker open to distribute the load among lots-n-lots of peers.

Also consider all of nerdvittles’ hard work and click the paypal link to donate.

When you have followed the directions and downloaded all the pieces, I have one small recommendation. Open the Virtual Machine and select Ethernet. Choose the setting – ‘Bridged’. Since I don’t like to think very much about this, this allows me to have the machine run and appear on my LAN as a separate IP.

BridgedVMWare

Bridged = ‘Connected directly to the physical network’

You may have to shutdown and restart the virtual machine for this to take effect.
After I start mine, from the command line I type:

ifconfig

and receive info about the virtual machine appearing on my LAN. Look for the ‘inet addr’, mine is 192.168.1.93.

From the command line of the host box, just for grins, I then tried to ping the virtual trixbox instance:

C:Documents and SettingsDan>ping 192.168.1.93
Pinging 192.168.1.93 with 32 bytes of data:
Reply from 192.168.1.93: bytes=32 time=1ms TTL=64
Reply from 192.168.1.93: bytes=32 time=1ms TTL=64

If you have a couple of boxes on your lan, put the XLite softphone on both and call each other. Here’s how. In the Trixbox vmware instance provided by Nerdvittles, they kindly set up several extensions you can use.

sipsetup
Click the little setup button on your XLite softphone and choose ‘System Settings’, then ‘SIP Proxy’, then ‘Default’. Enter the IP address of the Trixbox image running in your VMWare player.

For one phone I chose extension 500, for the other on the other box, 501. I hopped over to my wife’s PC, now running XLite as extension 501, and dialed 500. I ran back over and answered the line and had a nice little conversation with myself.

For our next installment, we’ll show you how to get nitty-gritty and watch the actual IP packets traverse our LAN. It’s really enlightening!