Thursday, October 09, 2008
Yeah, you heard it right. Here is the live tracking of trains in India using google maps API. Enter the start date of the train and the train number, and current postition of the train will be tracked. Once the site is loaded, the position of the train is refreshed every minute.
The site is still in BETA though. Only trains which are currently running will be displayed properly. There are still some bugs which need to be fixed.
If you are accessing using WAP/GPRS on your mobile, use this mobile friendly link
There are quite a few websites which lets you track live if you have a GPS phone. I was curious if the "My location" feature in Google maps can be used to track the phone using only the mobile tower number information. WithoutGPS was born out of this curiosity.This was set up using code from various sources.
What is WithoutGPS?
You run an application on your smart phone, which updates your current tower information on the website which hosts the code, and you can get your position shown on google maps to anybody who has got an internet connection.
You can check my current location live at
If I am moving, the map will automatically move showing the updated position. (This site does not show properly in Chrome browser. Use IE or firefox)
How to setup WithoutGPS?
1. Right now only Nokia Symbian smartphones are supported(All S60 v2 and v3). Use the Aspicore GSM Tracker in your phone with the following settings:
HTTP protocol : On
Internet page URL : http://uselessdiaries.freehostia.com/gmaps.php?user=username
(choose a unique username which nobody else could be using)
Send cell every time : On
Cell -> On startup tracking : On
2. This is your live tracking website : http://uselessdiaries.freehostia.com/live.pl?user=username
What else can I do with WithoutGPS?
1. If you want to host this in your own site, you can download all the server side code from http://uselessdiaries.freehostia.com/uploads/WithoutGPS.zip . Be sure to use your own Maps API key in the live.html file.
2. You can use this as a vehicle theft prevention system, by putting a sybian phone with GPRS connection always in your car. It can be setup at a hardware cost of around Rs 7500 (cost of a N72) and monthly charges of Rs 200/- (minmum voice plan + WAP over GPRS)
3. I have been running Aspicore GSM tracker on my N80 (s60v3) phone, and Airtel's mobile office plan, and it has been running without a hitch. Can anyone try out if this application works with Airtel Wap over PRS(which I think is called Airtel Online)
How exactly does WithoutGPS work?
1. The application on your phone sends the cell number of the mobile tower which you are connected to.
2. The gmaps.php script queries the google database with the cell tower information, and gets the longitude and latitude, which is recorded into a file.
3. When you click on the live.pl file, it uses the recorded information and shows it on google maps.
Future of WithoutGPS?
1. Efforts are on way so that you can specify zones - like home, office etc. And when you enter some specified zone, it will send an email (or an SMS) to some specified number.
2. Do you know of other applications which will allow http access over WAP/GPRS of the cell tower information in other phones do let me know.
3. I am not into mobile software writing, so if some one can write simple applications for uploading cell tower information, let me know, and I will post it here.
4. Your comments/suggestions/contributions/ideas/brickbats are always welcome.
Friday, May 09, 2008
The tracks are in OziExplorer (and SmartComGPS) format. You can right click on the download link and save with .plt extension. Use GPSBabel to convert it into any other GPS format.
More routes to follow soon......
Siliguri to Gangtok (download)
The trip starts from the New Jalpaiguri railway station. We took a shared taxi to the bus stand and took a Sikkim Nationalised Transport (SNT) bus from the Siliguri bus stand to Gangtok. Times are also shown.
Kollam to Alwaye (download)
Trip made by KPN Volvo. It was probably the 5:30 pm Volvo from Trivandrum to Bangalore. Route goes through NH 47 taking the Ernakulam bypass.
Kumaraparvata Trek (download)
Trek route from Kukke subramanya to the top of the Kumaraparvata. (The times shown on the bubbles are incorrect)
Shortcut Route from Electronic City to Sarjapur Road/Outer Ring Road , Bangalore
Takes an almost straight line path from Hosa Road junction to Sarjapur Road Junction.
Method of travel : Bus
Total time: 25 minutes in peak hour
214-235-4101 to 4993 (No information)
770-357-XXXX (Currently used by ringbranch)
773-751-1000 to 773-751-4999 (Currently used by Jaxtr)
206-856-2398 (WA )
(469) 450-3729 (real TX phone number)
469-826-7076 (real TX number)
Feel free to let me know any other supported numbers.
Tuesday, April 29, 2008
1. Register for free at sab se bolo.com . Get your member ID and password. Provide these to your Indian contact and ask them to call into the conference.
2. Call any of these access numbers.
3. On the prompt dial *011-CONRAD. (This code will keep changing. So check this page before you make a call) This code is not required if you call through the UK numbers.
4. When prompted again, dial your member ID and password to enter into conference. You can have multiple people from India dial into the conference.
Do not abuse the system, or we might all lose it !!
Alternative methods for step 2:
Instead of calling the access numbers, you can even use your SIP phone/ATA to make a call to *firstname.lastname@example.org
METHOD 2. You can call from Google Talk by following these steps:
(a) Send a friend request to email@example.com. You will get an accept
(b) Now open a chat window for firstname.lastname@example.org and type "CALL *email@example.com"
(c) Accept the incoming call.
(d) You will hear one ring and after some time, you will be connected to the conference call.
Sunday, April 27, 2008
1. Smartphone - any one of the following
(a) Nokia symbian 60 series or above eg. 6630, all N-series and E-series of mobile phones
(b) Any mobile running Windows Mobile 5 or 6.
Getting the right hardware:
If you already have a bluetooth GPS or an inbuilt GPS in your phone, skip to the next section. If you need a GPS navigation system, the simplest and cheapest way I think would be to buy a smartphone and a bluetooth GPS and get it for half the price of a phone with inbuilt GPS. For instance, the cheapest option that I know of is Nokia N72 (INR 8000/-) + Navibe GB735 (INR 1800/-), while most of the GPS enabled phones currently in the market are above INR 20,000/- . There are Nokia smartpones cheaper than N72, but I they are much less worth for the 1000 rupee less that you pay.
Getting the right software:
(a) If you are using Nokia phone, get the SmartcomGPS software. You can get it from here mobilesmania forum. You will need to register for free at the site and dig a little bit to find the version for your phone. There is also a older but less featured MapViewGPS. Any of the above software will suffice.
(b)If you are running Windows Mobile phone, get the OziExplorerCE software, which is also available at the mobilesmania forum
Getting the maps
(a) If you are using Nokia phone, convert any of map image(JPG/PNG/BMP etc) that you have to ogf2 format using this software.
(b) If you are using Windows Mobile, use the Img2ozf application which come along witht he application to convert your files into the ozf2 format
(c) If you are using GPS, you need to calibrate the maps before you first use it. (i.e generating the .map file)
For your convenience, I have given links to some of JPG/PNG maps here. Below are the OGF2 and MAP files for some of these maps. You can store these files directly in the "e:\data\smartcomgps\maps" folder of your phone and get it working right away with or without GPS.
Kolkata OGF2 file
Kolkata MAP file (calibration file for the kolkata map)
If you have any problem or if you wants maps of other places, please leave a comment and I will try to make one.
Thursday, April 24, 2008
If you have a Wifi enabbled smartphone, this piece of freeware Walkinghotspot will allow you to make it a WiFi hotspot. WiFi clients including your laptop can connect to your phone through WiFi, and access GPRS/3G for accessing internet. I use this feature for browsing the internet from my laptop through the wireless connection.
This avoids you the hassles of connecting bluetooth and installing the drivers in your laptop. Currently it supports only Windows Mobile and Symbian series devices. Works like a charm on my Nokia N80.
Once you register at their website, they will send you a link (For symbian 3rd edition devices this might suffice) which you can access to download the executable.
Tuesday, April 22, 2008
Install the Mplayer binaries for your operating system from http://www.mplayerhq.hu/
Command line option:
mencoder -ovc frameno -oac mp3lame -lameopts cbr:br=128 -of rawaudio -o <output_file.mp3> -audiofile <input_file> <dummy_video_file>
Make sure that the play time of the video file is more than the play time of the audio you are trying to convert. In case it is not, you can give multiple video files in the place of one.
Saturday, April 12, 2008
1. Earthcaller(Only US/Canada)
They allow FREE PC to phone calls anywhere in US. You can make calls only from a PC.
2. Gizmo combination with Ringbranch (Only US/Canada)
Check out this blog entry to find out how. You can make calls from Gizmo softphone from your PC, or you can use your VOIP phone/ATA device for calling. Right now limited to 1000 minuts of call per month.
Allows free calling between two US numbers. Enter the two numbers in their website, and they will call and connect both of you. If you reside in another country, you can still work it out if you have a incoming US number mapped to you SIP device(eg sipnumber service)
4. JustVoip (Many countries)
Supported countries :Argentina,Australia, Austria, Belgium, Brazil,Bulgaria,Canada,Chile,Colombia,Cyprus,Czech Republic,Denmark,Estonia,France,Germany,Greece,Hong Kong (+mobile),
Hungary,Ireland,Italy,Japan,Latvia,Luxembourg,Malaysia,Mexico [guadalajara],Mexico [mexico City],Mexico [monterrey],Monaco,Netherlands,New Zealand,Norway,Panama,Peru,Poland,
Portugal,Puerto Rico (+mobile),Romania,Russian Federation,Singapore,Slovak Republic,Slovenia,South Korea,Spain,Sweden,Switzerland,Taiwan,Thailand,United Kingdom,United States (+mobile),Venezuela
You can make free call from this site. You need a phone number in one of the above countries to call to these locations. If you reside in another country, you can still work it out if you have a incoming US number mapped to you SIP device(eg sipnumber service)
Calls are limited to 5 minutes. They allow you to make international calls to many international destinations from any phone. You will be given local dial in number and a PIN to call your destination. You do not require any hardware/soft phone. In India, they currently allow calls only to Hyderabad landlines. They are going to introduce calls to other parts on India May 1st
By this facilty, you will get a conference dial-in in many countries. People in India can call their own local number to connect to the conference.
Friday, April 11, 2008
In an earlier post I had mentioned how to call free to phones in US/Canada . Using this and then registering with rebtel , you will be able to call the following countries.
Argentina Australia Austria Bahrain (Beta) Belgium Brazil Bulgaria Canada Chile China (Beta) Croatia (Beta) Cyprus Czech Denmark Estonia Finland France Germany Hongkong, China (Beta) Hungary Ireland Israel Italy Japan Latvia Lithuania Luxembourg Mexico Netherlands New Zealand Norway Peru Poland Romania Slovakia (Beta) Slovenia (Beta) South Africa (Beta) Spain Sweden Switzerland Turkey United Kingdom United States
1. An internet connection
2. A computer
3. Mic and headphone/speaker !!!
4. Help of a friend in US with a US mobile to help in setting things up for the first time.
5. A setup describe in this article
Theory of functioning:
1. Rebtel is a VOIP service, which, among other services, allows you to call a US number, and reaches your destination country through VOIP. From here a local call is made to your destination phone number. The callee has to call back to this local number and both the caller and callee are connected. Total charges - callee incurs local calling charges.
Things to set up:
1. At first, have this setup ready
2. Register at Rebtel
3. Give your Ringbranch number as you number at Rebtel. Keep your own phone number to call in Ringbranch a a firnd's number in US/Canada.
4. On registering to the site, you will get an automated verification call at the friend's number. Once the verification is over, you can put the destination number in ringbranch to whatever was before.
How to add a contact
1. Login to you rebtel account , adn enter your international contact number.
2. Once you enter the number, you will get two numbers - a local number in US, and a local number in your destination country.
3. For every contact, steps 1 and 2 will have to be done. Note down the corresponding numbers for all future calling to these contacts.
4. Enter the US local numbers that you got in your ringbranch contact page.
How to make an almost free call
1. Open gizmo, and call your ringbranch through backdoor.
2. Enter the contact nuber corresponding to the US number of your destination number.
3. Your call will be connected to your destination phone.
4. On connecting the call, tell your callee to call back on the caller id displayed on his phone. This number is the same as the number you got in step 2 in the previous section.
5. You stay on the line, when callee calls back to the number, and both of you will be connected.
Check here to see how rebtel connects your call.
Wednesday, April 02, 2008
What you need:
1. An internet connection
2. A computer
3. Mic and headphone/speaker !!!
4. Help of a friend in US with a US mobile to help in setting things up for the first time.
Theory of functioning:
1. Gizmo VOIP provides free calling to certain US telephone numbers through their backdoor dialling mechanism.
2. Ringbranch provides a functionality where you can dial into your ringbranch number and call any of your contacts (only US/Canada allowed ; maximum of 100) for free (total 1000 minutes allowed per month)
3. Now, the ringbranch number that you get is a free location if you dial from gizmo.
4. We make use of these facts to make free calls to location in US/Canada.
Things to set up:
1. Register yourself free at Ringbranch . In your profile, set your primary phone number as your US friend's number. Note down your ring branch number. In your profile settings, "When you call your RingBranch number in order to call out to one of your friends, what number do you want displayed on your friends' Caller ID?" , put the choice as "actual number".
2. Download gizmo . Register yourself from the application.
3. From gizmo, call the number 0101-<your ringbranch number>. This will ring your friend's mobile. Ask him to save that number and let you know that number. This is the your gizmo outgoing number.
4. Go back to ringbranch profile settings and put your gizmo outgoing number as your primary phone number instead of your friend's number.
5. Go on and add upto 100 US/Contacts in your ringbranch contacts page.
6. Your settings are finished.
How to make the free call:
1. Open gizmo, and call 0101-<your ringbranch number>
2. You will be greeted by a prompt to enter the number in the contact list that you want to call. Enter the number followed by # .(eg. 15#)
3 Thats it, your call will be connected. If at any time you want to call a new contact, go and update your ringbranch contact list at their website, and start making the call.
You can extend this and use rebtel, to make international calls. I will explain this in a separate post.
Sunday, March 30, 2008
a) Connect the phone output to any TV, and see the vidoes on the big screen.
b) Connect to LCD screen and use your mobile as GPS navigation system in your car.
2. Internal GPS
a) Use smartcomGPS software and maps from google/yahoo for excellent GPS navigation in India.
b) Multiple applications should be able to access the internal GPS simultaneously.
a) Use your phone as remote control for your computer
b) Use your bluetooth headset
c) Transfer data with other bluetooth-enabled phones
4a. FM Radio
a) Listen to FM stations on the go.
b) Connect FM transmitter to your TV and use the phone for listening without disturbing anybody
4b. Stereo FM Transmission
(a) You can play your favourite music on your mobile, and transmit it over FM, and let the car radio pick it up
(b) Play music in your mobile and let the audio system pick it up over FM and play it aloud.
5. Full fledged operating system like Symbian/Windows Mobile/Linux
a) Gives you the flexibility to install applications.
b) Use your mobile like a small computer.
6. External memory support
a) Either the mobile should have enough internal memory or it shud have external memory card support. Atleast 2 GB space is required.
7. Music / Video Playing
a) Watch your favourite videos/music while you are travelling
b) Standard 3mm jack to fit in any of your normal headphones/amplifiers
a) You dont have to carry a separate digital camera/ camcorder . (Minimum 5MP camera with atleast 3x zoom capability for normal usage)
3G services have not yet started in India, but they are slated to start in 2008. It might be a good idea to have 3G support in the mobile.
a) Browse at broadband speeds
b) Make video calls to others having 3G handsets.
c) You will be able to use your mobile in Japan and South Korea (who have proprietary CDMA systems for mobile telephony, but also have a separate WCDMA network)
a) With Quadband you should be able to use your mobile anywhere in the world. (except Japan and South Korea, unless you have 3G)
11. QWERTY keyboard
a) Use your mobile as a small computer wherever you go using the QWERTY keyboard.
12. Touch screen
Touch screen with iPhone like features.
The phone should still have normal keypads, so that I can type with just one hand.
13. Battery life
For a heavy user of GPRS/WiFi, battery backup is essentail. Recently companies are coming up with chargers using human motion.
14. Standby battery accessories
15. VOIP Call Support
Support for using Voip over 3G/WiFi networks. This will help to reduce your long distance calls when you are at home, or at a hotspot.
16. Minimum 128MB of internal memory
Enough RAM will allow you to run multiple applications at the same time.
Allows you to align landscape/portrait, by just turning the phone.(It should also be possible to disable this feature through settings)
18. Call quality
Last but the most important thing, I should be able to make calls and talk to people !!!
Thursday, March 13, 2008
Lawyers should never ask a Mississippi grandma a question if they aren't prepared for the answer.
Monday, March 10, 2008
They are currently playing English, Spanish, Chinese, Dutch, Polish andFrench movies. Some of the movies I like watching during the past month are :
a) Koma (Chinese, Thriller)
b) The Penknife (Dutch, Drama)
c) The longest penalty in the world (Spanish, Comedy)
d) My name is Justine (Polish, Drama)
Thursday, March 06, 2008
Download free Germany/delhi/india/bangalore/pune/chennai/mumbai/kolkata/karnataka/trivandrum/hyderabad/andhra/sikkim map
Downloadable maps of Germany/Delhi/bangalore/chennai/pune/mumbai/trivandrum/karnataka/kolkata/hyderabad/andhra pradesh/Cochin/Mexico City/Helsinki/Stockholm/Springfield and major cities in India. Click on the thumbnails to download the full image size. The links will take you to rapidshare download page. Just click on the "Free" button and then enter the CAPTCHA code to download it free.
Click on the thumbnails to download the full map
More detailed maps are here
Pune Maps (2MB)
Click on the thumbnails to download the full map
Zoom level 1 map (17MB)
Click on the thumbnails to download the full map
Mumbai Maps (5MB, 8MB, 5MB)
Delhi-Coarse Map (3 MB)
Agra , Uttar Pradesh, India(5 MB)
Dehra Dun, Uttaranchal, India (3 MB)
Jaipur , Rajastan, India(6 MB)
Lucknow, India (7 MB)
Mangalore, India (2 MB)
Panaji , Goa, India (3 MB)
Patna, Bihar, India (4 MB)
Sholapur, Maharashtra, India (2 MB)
Trichy, Tamil Nadu, India (2 MB)
Kuala Lampur , Malaysia (8 MB)
Springfield, Missouri, USA (7 MB)
Mexico City (8 MB)
Stockholm (2 MB)
Helsinki (2 MB)
Bellary, Karnataka (2.5MB)
Chattisgarh, India (2 MB)
Davangere, Karnataka, India (2MB)
Goa, India (3.6MB)
Haifa and Tel Aviv , Israel (2.5MB)
Indore, India (4.5 MB)
Kolhapur, India (1.2 MB)
Nagercoil, Tamil Nadu, India (165 KB)
Panaji, Goa, India (700 KB)
Salem, India (2.8 MB)
Srinagar, India (2.7 MB)
Surat , India (3.2 MB)
More maps are being added. On the hot list are Cochin, Chandigarh, Ahmedabad, Trichy.
If you need maps of any other place in india or abroad, please leave a comment, and i will try to add it.
If you trying to use maps with your nokia mobile, I will be adding an article on it soon.
Check here to find out how to download maps like these.
Wednesday, March 05, 2008
1. Internet connection
2. Perl installed in your machine (Windows version available from http://www.activestate.com/store/freedownload.aspx?prdGuid=81fbce82-6bd5-49bc-a915-08d58c2648ca) In fact, you can use any scripting language you are conmfortable in.
3. Download wget executabel (Free windows version at http://users.ugent.be/~bpuype/cgi-bin/fetch.pl?dl=wget/wget.exe )
4. Irfanview image application (Free version at http://www.irfanview.com/main_download_engl.htm)
1. First go to http://maps.google.com and browse to the location you want to see.Move around in the map and in the bottom status window, you will see some thing like this:
2. Note this down. The value for x and y will depend on the location that you have browsed. The value of "zoom" will depend on your current zoom level. Also note down the values at the four corners of the area that you want to make a map of. Lets say thay are x varies from 1072 to 1090 and y varies from 600 to 900.
3. Using notepad open a file and type the following lines into it. Modify the $x1, $x2, $y1, $y2 ,$zoom and $step variables from step 2. Also modify the wget statement with the values of "n" and "w" from step 1:
$zoom = 9;
$step = 1 ;
`wget -O $j.$i.png "http://mt3.google.com/mt?n=404&w=2.69&hl=en&x=$i&y=$j&zoom=$zoom"` ;
4. Copy the "wget.exe" to the same directory as the above file.
5. Open command prompt , go to the same directory and type:
6. The Perl will run and download all the images as small small tiles.
7. Open irfanview. Choose "Files->Thumbnails"
8. In the thumbnails window, choose all the png files which were downloaded earlier. Right click and choose "Create content sheet..."
9. In the dialog box, enter the image width , height etc using the values used above.
For eg, image width = (1090-1072+1)*256
image height = (900-600+1)*256
column width = (1090-1072+1)
row = (900-600+1)
Chooe spacing as 0.
10. Create the output, and that is your map file !!!!!
Monday, February 25, 2008
KPN Travels is one of the most reliable luxury bus operators to regions in Tamil Nadu, Kerala and Bangalore.
I have never tried booking through these guys, but these guys seems to support a lot of transport companies to a wide variety of places in south and central india.
They cover most of Tamil Nadu and Bangalore.
This site is like redbus, which cater to a variety of bus operators, covering mostly South India
They include bus operators throughout India.
At this point of time, it caters to a few cities in Tamil Nadu only.
Covers South India
Covers major cities in Tamil Nadu and Karnataka
Connects places inside Tamil Nadu
Please also refer to other services listed in http://blogs.ibibo.com/premnewzea/Bus-Tickets-Online.html
Monday, February 18, 2008
$link = $_;
# shamelessly reversed engineered from a python script :-)
print "startring first page retrieval : $link\n";
my $urlin = shift || $link;
my $content = get( $urlin ) or die "$!\n";
print "done first page retrieval\n";
# regex for 2 key text strings which identify the video file
# the second one $2 is unique for each download attempt
$content =~ /watch_fullscreen.*video_id=([^&]+)&.*t=([^&]+)&/ ;
print $1, "\n" , $2, "\n";
my $infile = $file.'.flv'; #add a .flv extension
print "gettin video file $get_url\n";
system("wget -O $infile \"http://www.youtube.com/get_video?video_id=$1&t=$2\"");
#convert the FLV file to Divx AVI
system( "mencoder $infile -oac mp3lame -ovc lavc -ffourcc DX50 -o $file.avi" );
Sunday, February 17, 2008
Opening audio decoder: [mp3lib] MPEG layer-2, layer-3
AUDIO: 44100 Hz, 2 ch, s16le, 128.0 kbit/9.07% (ratio: 16000->176400)
Selected audio codec: [mp3] afm: mp3lib (mp3lib MPEG layer-2, layer-3)
Opening video decoder: [ffmpeg] FFmpeg's libavcodec codec family
Selected video codec: [ffodivx] vfm: ffmpeg (FFmpeg MPEG-4)
Wednesday, February 13, 2008
Sunday, February 10, 2008
Introduction to How VoIP Works
How is this useful? VoIP can turn a standard Internet connection into a way to place free phone calls. The practical upshot of this is that by using some of the free VoIP software that is available to make Internet phone calls, you're bypassing the phone company (and its charges) entirely.
VoIP is a revolutionary technology that has the potential to completely rework the world's phone systems. VoIP providers like Vonage have already been around for a while and are growing steadily. Major carriers like AT&T are already setting up VoIP calling plans in several markets around the United States, and the FCC is looking seriously at the potential ramifications of VoIP service.
Above all else, VoIP is basically a clever "reinvention of the wheel." In this article, we'll explore the principles behind VoIP, its applications and the potential of this emerging technology, which will more than likely one day replace the traditional phone system entirely.
The interesting thing about VoIP is that there is not just one way to place a call. There are three different "flavors" of VoIP service in common use today:
- ATA -- The simplest and most common way is through the use of a device called an ATA (analog telephone adaptor). The ATA allows you to connect a standard phone to your computer or your Internet connection for use with VoIP. The ATA is an analog-to-digital converter. It takes the analog signal from your traditional phone and converts it into digital data for transmission over the Internet. Providers like Vonage and AT&T CallVantage are bundling ATAs free with their service. You simply crack the ATA out of the box, plug the cable from your phone that would normally go in the wall socket into the ATA, and you're ready to make VoIP calls. Some ATAs may ship with additional software that is loaded onto the host computer to configure it; but in any case, it's a very straightforward setup.
- IP Phones -- These specialized phones look just like normal phones with a handset, cradle and buttons. But instead of having the standard RJ-11 phone connectors, IP phones have an RJ-45 Ethernet connector. IP phones connect directly to your router and have all the hardware and software necessary right onboard to handle the IP call. Wi-Fi phones allow subscribing callers to make VoIP calls from any Wi-Fi hot spot.
- Computer-to-computer -- This is certainly the easiest way to use VoIP. You don't even have to pay for long-distance calls. There are several companies offering free or very low-cost software that you can use for this type of VoIP. All you need is the software, a microphone, speakers, a sound card and an Internet connection, preferably a fast one like you would get through a cable or DSL modem. Except for your normal monthly ISP fee, there is usually no charge for computer-to-computer calls, no matter the distance.
If you're interested in trying VoIP, then you should check out some of the free VoIP software available on the Internet. You should be able to download and set it up in about three to five minutes. Get a friend to download the software, too, and you can start tinkering with VoIP to get a feel for how it works.
Next, we'll look at exactly how VoIP is used.
Using VoIPChances are good you're already making VoIP calls any time you place a long-distance call. Phone companies use VoIP to streamline their networks. By routing thousands of phone calls through a circuit switch and into an IP gateway, they can seriously reduce the bandwidth they're using for the long haul. Once the call is received by a gateway on the other side of the call, it's decompressed, reassembled and routed to a local circuit switch.
Although it will take some time, you can be sure that eventually all of the current circuit-switched networks will be replaced with packet-switching technology (more on packet switching and circuit switching later). IP telephony just makes sense, in terms of both economics and infrastructure requirements. More and more businesses are installing VoIP systems, and the technology will continue to grow in popularity as it makes its way into our homes. Perhaps the biggest draws to VoIP for the home users that are making the switch are price and flexibility.
Photographer: Showface Agency: Dreamstime
VoIP phone users can make calls from anywhere there's a broadband connection.
With VoIP, you can make a call from anywhere you have broadband connectivity. Since the IP phones or ATAs broadcast their info over the Internet, they can be administered by the provider anywhere there's a connection. So business travelers can take their phones or ATAs with them on trips and always have access to their home phone. Another alternative is the softphone. A softphone is client software that loads the VoIP service onto your desktop or laptop. The Vonage softphone has an interface on your screen that looks like a traditional telephone. As long as you have a headset/microphone, you can place calls from your laptop anywhere in the broadband-connected world.
Most VoIP companies are offering minute-rate plans structured like cell phone bills for as little as $30 per month. On the higher end, some offer unlimited plans for $79. With the elimination of unregulated charges and the suite of free features that are included with these plans, it can be quite a savings.
Most VoIP companies provide the features that normal phone companies charge extra for when they are added to your service plan. VoIP includes:
- Caller ID
- Call waiting
- Call transfer
- Repeat dial
- Return call
- Three-way calling
- Forward the call to a particular number
- Send the call directly to voice mail
- Give the caller a busy signal
- Play a "not-in-service" message
- Send the caller to a funny rejection hotline
Now that we've looked at VoIP in a general sense, let's look more closely at the components that make the system work. To understand how VoIP really works and why it's an improvement over the traditional phone system, it helps to first understand how a traditional phone system works.
VoIP: Circuit SwitchingExisting phone systems are driven by a very reliable but somewhat inefficient method for connecting calls called circuit switching.
Circuit switching is a very basic concept that has been used by telephone networks for more than 100 years. When a call is made between two parties, the connection is maintained for the duration of the call. Because you're connecting two points in both directions, the connection is called a circuit. This is the foundation of the Public Switched Telephone Network (PSTN).
Click "Play" to see how circuit switching works.
Here's how a typical telephone call works:
- You pick up the receiver and listen for a dial tone. This lets you know that you have a connection to the local office of your telephone carrier.
- You dial the number of the party you wish to talk to.
- The call is routed through the switch at your local carrier to the party you are calling.
- A connection is made between your telephone and the other party's line using several interconnected switches along the way.
- The phone at the other end rings, and someone answers the call.
- The connection opens the circuit.
- You talk for a period of time and then hang up the receiver.
- When you hang up, the circuit is closed, freeing your line and all the lines in between.
Telephone conversations over today's traditional phone network are somewhat more efficient and they cost a lot less. Your voice is digitized, and your voice along with thousands of others can be combined onto a single fiber optic cable for much of the journey (there's still a dedicated piece of copper wire going into your house, though). These calls are transmitted at a fixed rate of 64 kilobits per second (Kbps) in each direction, for a total transmission rate of 128 Kbps. Since there are 8 kilobits (Kb) in a kilobyte (KB), this translates to a transmission of 16 KB each second the circuit is open, and 960 KB every minute it's open. In a 10-minute conversation, the total transmission is 9,600 KB, which is roughly equal to 10 megabytes (check out How Bits and Bytes Work to learn about these conversions). If you look at a typical phone conversation, much of this transmitted data is wasted.On the next page, we'll talk about packet switching.
VoIP: Packet Switching
A packet-switched phone network is the alternative to circuit switching. It works like this: While you're talking, the other party is listening, which means that only half of the connection is in use at any given time. Based on that, we can surmise that we could cut the file in half, down to about 4.7 MB, for efficiency. Plus, a significant amount of the time in most conversations is dead air -- for seconds at a time, neither party is talking. If we could remove these silent intervals, the file would be even smaller. Then, instead of sending a continuous stream of bytes (both silent and noisy), what if we sent just the packets of noisy bytes when you created them?
Photographer: Pavel Kapish Agency: Dreamstime
VoIP phone users can make calls using their Internet connection.
Data networks do not use circuit switching. Your Internet connection would be a lot slower if it maintained a constant connection to the Web page you were viewing at any given time. Instead, data networks simply send and retrieve data as you need it. And, instead of routing the data over a dedicated line, the data packets flow through a chaotic network along thousands of possible paths. This is called packet switching.
While circuit switching keeps the connection open and constant, packet switching opens a brief connection -- just long enough to send a small chunk of data, called a packet, from one system to another. It works like this:
- The sending computer chops data into small packets, with an address on each one telling the network devices where to send them.
- Inside of each packet is a payload. The payload is a piece of the e-mail, a music file or whatever type of file is being transmitted inside the packet.
- The sending computer sends the packet to a nearby router and forgets about it. The nearby router send the packet to another router that is closer to the recipient computer. That router sends the packet along to another, even closer router, and so on.
- When the receiving computer finally gets the packets (which may have all taken completely different paths to get there), it uses instructions contained within the packets to reassemble the data into its original state.
Packet switching is very efficient. It lets the network route the packets along the least congested and cheapest lines. It also frees up the two computers communicating with each other so that they can accept information from other computers, as well.
Next, we'll look at the advantages of using VoIP.
Advantages of Using VoIPVoIP technology uses the Internet's packet-switching capabilities to provide phone service. VoIP has several advantages over circuit switching. For example, packet switching allows several telephone calls to occupy the amount of space occupied by only one in a circuit-switched network. Using PSTN, that 10-minute phone call we talked about earlier consumed 10 full minutes of transmission time at a cost of 128 Kbps. With VoIP, that same call may have occupied only 3.5 minutes of transmission time at a cost of 64 Kbps, leaving another 64 Kbps free for that 3.5 minutes, plus an additional 128 Kbps for the remaining 6.5 minutes. Based on this simple estimate, another three or four calls could easily fit into the space used by a single call under the conventional system. And this example doesn't even factor in the use of data compression, which further reduces the size of each call.
Let's say that you and your friend both have service through a VoIP provider. You both have your analog phones hooked up to the service-provided ATAs. Let's take another look at that typical telephone call, but this time using VoIP over a packet-switched network:
Click "Play" to see how packet switching works.
- You pick up the receiver, which sends a signal to the ATA.
- The ATA receives the signal and sends a dial tone. This lets you know that you have a connection to the Internet.
- You dial the phone number of the party you wish to talk to. The tones are converted by the ATA into digital data and temporarily stored.
- The phone number data is sent in the form of a request to your VoIP company's call processor. The call processor checks it to ensure that it's in a valid format.
- The call processor determines to whom to map the phone number. In mapping, the phone number is translated to an IP address (more on this later). The soft switch connects the two devices on either end of the call. On the other end, a signal is sent to your friend's ATA, telling it to ask the connected phone to ring.
- Once your friend picks up the phone, a session is established between your computer and your friend's computer. This means that each system knows to expect packets of data from the other system. In the middle, the normal Internet infrastructure handles the call as if it were e-mail or a Web page. Each system must use the same protocol to communicate. The systems implement two channels, one for each direction, as part of the session.
- You talk for a period of time. During the conversation, your system and your friend's system transmit packets back and forth when there is data to be sent. The ATAs at each end translate these packets as they are received and convert them to the analog audio signal that you hear. Your ATA also keeps the circuit open between itself and your analog phone while it forwards packets to and from the IP host at the other end.
- You finish talking and hang up the receiver.
- When you hang up, the circuit is closed between your phone and the ATA.
- The ATA sends a signal to the soft switch connecting the call, terminating the session.
VoIP TermsThe central call processor is a piece of hardware running a specialized database/mapping program called a soft switch. See the "Soft Switches" section to learn more.
Disadvantages of Using VoIPThe current Public Switched Telephone Network is a robust and fairly bulletproof system for delivering phone calls. Phones just work, and we've all come to depend on that. On the other hand, computers, e-mail and other related devices are still kind of flaky. Let's face it -- few people really panic when their e-mail goes down for 30 minutes. It's expected from time to time. On the other hand, a half hour of no dial tone can easily send people into a panic. So what the PSTN may lack in efficiency it more than makes up for in reliability. But the network that makes up the Internet is far more complex and therefore functions within a far greater margin of error. What this all adds up to is one of the major flaws in VoIP: reliability.
- First of all, VoIP is dependant on wall power. Your current phone runs on phantom power that is provided over the line from the central office. Even if your power goes out, your phone (unless it is a cordless) still works. With VoIP, no power means no phone. A stable power source must be created for VoIP.
- Another consideration is that many other systems in your home may be integrated into the phone line. Digital video recorders, digital subscription TV services and home security systems all use a standard phone line to do their thing. There's currently no way to integrate these products with VoIP. The related industries are going to have to get together to make this work.
- Emergency 911 calls also become a challenge with VoIP. As stated before, VoIP uses IP-addressed phone numbers, not NANP phone numbers. There's no way to associate a geographic location with an IP address. So if the caller can't tell the 911 operator where he is located, then there's no way to know which call center to route the emergency call to and which EMS should respond. To fix this, perhaps geographical information could somehow be integrated into the packets.
Testing, Testing...Wondering if your broadband connection could support VoIP service? Brix Network offers a way to test your Internet connection to see how well it works.
- Because VoIP uses an Internet connection, it's susceptible to all the hiccups normally associated with home broadband services. All of these factors affect call quality:
- Packet loss
Phone conversations can become distorted, garbled or lost because of transmission errors. Some kind of stability in Internet data transfer needs to be guaranteed before VoIP could truly replace traditional phones.
One of the hurdles that was overcome some time ago was the conversion of the analog audio signal your phone receives into packets of data. How it is that analog audio is turned into packets for VoIP transmission? The answer is codecs.
VoIP: CodecsA codec, which stands for coder-decoder, converts an audio signal into compressed digital form for transmission and then back into an uncompressed audio signal for replay. It's the essence of VoIP.
Codecs accomplish the conversion by sampling the audio signal several thousand times per second. For instance, a G.711 codec samples the audio at 64,000 times a second. It converts each tiny sample into digitized data and compresses it for transmission. When the 64,000 samples are reassembled, the pieces of audio missing between each sample are so small that to the human ear, it sounds like one continuous second of audio signal. There are different sampling rates in VoIP depending on the codec being used:
- 64,000 times per second
- 32,000 times per second
- 8,000 times per second
View Enlarged Image
VoIP software processes and routes the calls.
Codecs use advanced algorithms to help sample, sort, compress and packetize audio data. The CS-ACELP algorithm (CS-ACELP = conjugate-structure algebraic-code-excited linear prediction) is one of the most prevalent algorithms in VoIP. CS-ACELP organizes and streamlines the available bandwidth. Annex B is an aspect of CS-ACELP that creates the transmission rule, which basically states "if no one is talking, don't send any data." The efficiency created by this rule is one of the greatest ways in which packet switching is superior to circuit switching. It's Annex B in the CS-ACELP algorithm that's responsible for that aspect of the VoIP call.
The codec works with the algorithm to convert and sort everything out, but it's not any good without knowing where to send the data. In VoIP, that task is handled by soft switches.
E.164 is the name given to the standard for the North American Numbering Plan (NANP). This is the numbering system that phone networks use to know where to route a call based on the dialed numbers. A phone number is like an address:
- (313) 555-1212
313 = State
555 = City
1212 = Street address
The challenge with VoIP is that IP-based networks don't read phone numbers based on NANP. They look for IP addresses, which look like this:IP addresses correspond to a particular device on the network like a computer, a router, a switch, a gateway or a telephone. However, IP addresses are not always static. They're assigned by a DHCP server on the network and change with each new connection. VoIP's challenge is translating NANP phone numbers to IP addresses and then finding out the current IP address of the requested number. This mapping process is handled by a central call processor running a soft switch.
The central call processor is hardware that runs a specialized database/mapping program called a soft switch. Think of the user and the phone or computer as one package -- man and machine. That package is called the endpoint. The soft switch connects endpoints.
Soft switches know:
- Where the network's endpoint is
- What phone number is associated with that endpoint
- The endpoint's current IP address
We'll talk more about soft switches and protocols on the next page.
VoIP: Soft Switches and ProtocolsThe soft switch contains a database of users and phone numbers. If it doesn't have the information it needs, it hands off the request downstream to other soft switches until it finds one that can answer the request. Once it finds the user, it locates the current IP address of the device associated with that user in a similar series of requests. It sends back all the relevant information to the softphone or IP phone, allowing the exchange of data between the two endpoints.
© Tim Boyle/Getty Images
Customer call centers like this hotline require consistent call quality and many rely on VoIP technology.
Soft switches work in tandem with network devices to make VoIP possible. For all these devices to work together, they must communicate in the same way. This communication is one of the most important aspects that will have to be refined for VoIP to take off.
As we've seen, on each end of a VoIP call we can have any combination of an analog, soft or IP phone as acting as a user interface, ATAs or client software working with a codec to handle the digital-to-analog conversion, and soft switches mapping the calls. How do you get all of these completely different pieces of hardware and software to communicate efficiently to pull all of this off? The answer is protocols.
There are several protocols currently used for VoIP. These protocols define ways in which devices like codecs connect to each other and to the network using VoIP. They also include specifications for audio codecs. The most widely used protocol is H.323, a standard created by the International Telecommunication Union (ITU). H.323 is a comprehensive and very complex protocol that was originally designed for video conferencing. It provides specifications for real-time, interactive videoconferencing, data sharing and audio applications such as VoIP. Actually a suite of protocols, H.323 incorporates many individual protocols that have been developed for specific applications.
As you can see, H.323 is a large collection of protocols and specifications. That's what allows it to be used for so many applications. The problem with H.323 is that it's not specifically tailored to VoIP.
An alternative to H.323 emerged with the development of Session Initiation Protocol (SIP). SIP is a more streamlined protocol, developed specifically for VoIP applications. Smaller and more efficient than H.323, SIP takes advantage of existing protocols to handle certain parts of the process. Media Gateway Control Protocol (MGCP) is a third commonly used VoIP protocol that focuses on endpoint control. MGCP is geared toward features like call waiting. You can learn more about the architecture of these protocols at Protocols.com: Voice Over IP.
One of the challenges facing the worldwide use of VoIP is that these three protocols are not always compatible. VoIP calls going between several networks may run into a snag if they hit conflicting protocols. Since VoIP is a relatively new technology, this compatibility issue will continue to be a problem until a governing body creates a standard universal protocol for VoIP.
VoIP is a vast improvement over the current phone system in efficiency, cost and flexibility. Like any emerging technology, VoIP has some challenges to overcome, but it's clear that developers will keep refining this technology until it eventually replaces the current phone system.
On the next page, we'll talk about VoIP call monitoring.
VoIP Call Monitoring
VoIP has its distinct advantages and disadvantages. The greatest advantage of VoIP is price and the greatest disadvantage is call quality. For businesses who deploy VoIP phone networks -- particularly those who operate busy call centers (customer service, tech support, telemarketing, et cetera) -- call quality issues are both inevitable and unacceptable. To analyze and fix call quality issues, most of these businesses use a technique called VoIP call monitoring.
© Robyn Bell/AFP/Getty Images
Newer Skype services are equipped to handle VoIP protocol.
VoIP call monitoring, also known as quality monitoring (QM), uses hardware and software solutions to test, analyze and rate the overall quality of calls made over a VoIP phone network [source: ManageEngine]. Call monitoring is a key component of a business's overall quality of service (QoS) plan.
Call monitoring hardware and software uses various mathematical algorithms to measure the quality of a VoIP call and generate a score. The most common score is called the mean opinion score (MOS). The MOS is measured on a scale of one to five, although 4.4 is technically the highest score possible on a VoIP network [source: TestYourVoIP.com]. An MOS of 3.5 or above is considered a "good call" [source: ManageEngine].
To come up with the MOS, call monitoring hardware and software analyzes several different call quality parameters, the most common being:
- Latency -- This is the time delay between two ends of a VoIP phone conversation. It can be measured either one-way or round trip. Round-trip latency contributes to the "talk-over effect" experienced during bad VoIP calls, where people end up talking over each other because they think the other person has stopped speaking. A round-trip latency of over 300 millisecond is considered poor [source: TestYourVoIP.com].
- Jitter -- Jitter is latency caused by packets arriving late or in the wrong order [source: SearchVoIP.com]. Most VoIP networks try to get rid of jitter with something called a jitter buffer that collects packets in small groups, puts them in the right order and delivers them to the end user all at once. VoIP callers will notice a jitter of 50 msec or greater [source: TestYourVoIP.com].
- Packet loss -- Part of the problem with a jitter buffer is that sometimes it gets overloaded and late-arriving packets get "dropped" or lost [source: TestYourVoIP.com]. Sometimes the packets will get lost sporadically throughout a conversation (random loss) and sometimes whole sentences will get dropped (bursty loss) [source: TestYourVoIP.com]. Packet loss is measured as a percentage of lost packets to received packets.
There are two different types of call monitoring: active and passive. Active (or subjective) call monitoring happens before a company deploys its VoIP network. Active monitoring is often done by equipment manufacturers and network specialists who use a company's VoIP network exclusively for testing purposes [source: VoIP Troubleshooter.com]. Active testing can't occur once a VoIP network is deployed and employees are already using the system.
Passive call monitoring analyzes VoIP calls in real-time while they're being made by actual users [source: VoIP Troubleshooter.com]. Passive call monitoring can detect network traffic problems, buffer overloads and other glitches that network administrators can fix in network down time.
Another method for call monitoring is recording VoIP phone calls for later analysis. This type of analysis is limited, however, to what can be heard during the call, not what's happening on the actual network. This type of monitoring is usually done by human beings, not computers, and is called quality assurance.
On the next page, we'll talk about making VoIP calls using cell phones.
VoIP Cell Phones
VoIP-enabled cell phones are just entering the consumer market. In the United States, only T-Mobile's HotSpot@Home service allows customers to make cell phone calls over a VoIP network. HotSpot@Home relies on a device called a dual-mode cell phone.
Image courtesy of T-Mobile
HotSpot@Home lets you make cell phone calls over your home WiFi network. Learn how this useful technology integrates seamlessly between two networks.
Dual-mode cell phones contain both a regular cellular radio and a Wi-Fi (802.11 b/g) radio. The Wi-Fi radio enables the cell phone to connect to a wireless Internet network through a wireless router. If you have a wireless Internet router in your home, or if you're sitting at a Starbucks with wireless Internet access, you can use your cell phone to make VoIP calls. Here's how it works:
- When the cell phone is in range of a wireless Internet network, the phone automatically recognizes and connects to the network.
- Any calls you initiate on the wireless network are routed through the Internet as VoIP calls. With HotSpot@Home, all VoIP calls are free.
- If the phone is out of range of a wireless Internet signal, it automatically switches over to the regular cellular network and calls are charged as normal.
- Dual-mode phones can hand off seamlessly from Wi-Fi to cellular (and vice versa) in the middle of a call as you enter and exit Wi-Fi networks.
Similar to dual-mode cell phones are Wi-Fi phones. Wi-Fi phones aren't technically cell phones because they only have a Wi-Fi radio, not a cellular radio. Wi-Fi phones look like cell phones (small, lightweight handsets), but can only make calls when connected to a wireless Internet network. That means all Wi-Fi phone calls are VoIP calls.
Wi-Fi phones are useful in large companies and offices with their own extensive wireless networks. And could prove to be the next big thing, with the expanding market for municipal Wi-Fi. [source: Dr. Dobb's Portal]. Imagine that your entire city was covered by a high-speed wireless network. That means cheap (if not free) VoIP calls wherever you go.
In England, a company called Hutchinson 3G (or simply 3) has partnered with the popular VoIP service Skype to introduce the 3 Skypephone. The Skypephone allows users to make free cell phone calls to other Skype users. The phone can also make regular cell-phone calls to non-Skype users for the normal fees. Here's how it works:
- To make a Skype call using the 3 Skypephone, you have to be on 3's cellular network.
- To initiate a Skype call, find a Skype user in your phone's address book and press the big "Skype" button.
- The call first goes over 3's cellular GSM network to a fixed Internet line, which then connects the call to Skype [source: mobileSift].
- From your 3 Skypephone, you can make free VoIP calls to other Skype users whether they have a Skypephone or not. You can talk to Skype users on their PCs or using other Skype VoIP products.
The 3 Skypephone isn't currently available in the United States.
On the next page, we'll talk about how amateur radio operators are using VoIP technology.
Use of VoIP in Amateur Radio
Think of amateur radio, or ham radio, as an early version of the Internet. Using a worldwide network of radio towers, antennas and transceivers, amateur radio enthusiasts are able to communicate with fellow hobbyists around the globe, sometimes by voice and sometimes by Morse code.
© Tim Sloan/AFP/Getty Images
Amateur or ham radio operators can use VoIP technology to set up temporary stations such as this one used by the Red Cross following Sept. 11.
Amateur radio is limited by the distance that radio waves can travel. To send a signal to the other side of the world requires calculated timing and more than a little bit of luck. Every 11 years, for example, there's a peak in the number of sunspots produced by the sun, which increases the intensity of something called ionospheric propagation [source: International Solar Terrestrial Physics Program]. By bouncing radio signals high into the ionosphere, ham radio users can send long-distance messages. During off-peak years it's much more difficult.
Now amateur radio fans are using VoIP technology to link users around the globe. Here's how it works. Ham radio has always relied on FM repeaters, large radio towers that act as base stations for accessing the radio network from home. By attaching an Internet-connected PC to these repeater stations, people can communicate with the repeater using VoIP.
Several amateur radio fans have developed special software that helps connect home radio transceivers to the Internet. Users can connect their ham radio transceivers to their PC sound card and use the computer software to search for available repeater stations across the world [source: ARRL]. No longer are ham radio fans limited to the closest repeater station. If you live in Indiana, you can call into a repeater station in Mozambique and chat with local amateur radio aficionados instantly.
There are also software programs that allow you to communicate with other amateur radio users directly from your PC, without having an actual ham radio [source: ARRL]. Some ham radio purists wouldn't call this amateur radio, while others hope that this new technology will draw more young people into the hobby.