Thursday, June 28, 2007

VoIP killer applications

Home phone away from home
You can bring your "home" phone anywhere that has Internet connection! It's worthwhile to pack it with you - the phone is about palm size and the base sits on your palm. Sometimes it's important to give the impression of being at home, eg, taking sick leave to go on vacation! Or you can tell you friends that you are on vacation as it happens, rather than returning their calls after vacation. You can retrieve your voice mails with no extra cost anywhere in the world, rather than going through all of them when you come back.

But I won't bet on it 100%. There would be little difference within US. But Internet traffic between countries or regions may have bottlenecks affecting voice quality or reliability. But if you are on vacation, who cares.

It can't replace cell phones outdoors, but the charges are high for international roaming. For example, a US caller calling your US cell number can get through if you are in London, but someone has to pay for the international long distance charges. Usually people bring their GSM phone, or an extra GSM phone when they go abroad, then buy local prepaid SIM cards. So you have a number that your folks back home do not know, unless you tell them. They can still reach you, but international call charges apply. But for VoIP, there is no difference where your phone is, anywhere in the world.

Telemarketer killer

I can tell you that the no-call list don't work, only making telemarketer more aggressive. Dish network used offshore telemarketers to get around no call list? Firemen and policemen funds seem to be exempted. Debt collectors of course can call you until the end of time. Credit card affiliates can call you to sell credit protection plans and others.

Banging the phone and zippers don't work because the telemarketers are well prepared. It's part of the job and their life depends on it, scarifying the ear drum is not a big deal. It only make them more aggressive as if to revenge.

Having a landline is a liability. At worst, the marketing calls outnumbered useful calls 10 to 1 ! Most people use cell phone. I keep a landline mainly for international calls, and I don't use cell that much too.

Without caller ID subscription, it's suicide! CID alone doesn't do much. First of all, the phone still rings all the time. Second, you have to go up to the phone to see the ID. A CID announcing phone saves you some walk around.

Typically VoIP call features are inclusive, making it much cheaper than traditional phones. CID is always free. The other marketer killer features are call blocking. You can block all incoming calls without an ID, in this case you phone don't even ring! You can also block individual numbers. Call waiting ID allows you to see who's waiting before deciding to take the call.

Since most international calls do not have CID, I need a 2nd number with a distinctive ring tone for international callers. I also give this as a VIP number to friends and families. This number is free too. (You have only one number for outgoing calls, that is, your outgoing CID is your home number .)

After fighting with the telemarketers for a while, I know their tactics. First, they call with blocked ID's. Then they call with some misleading company CID, but you can recognize who's behind it after Googling it. If you block these numbers then they will have totally non-sense names or numbers like 12345678, or a combination of legit area codes and random numbers, like 602-00-0000. Then, the bad news, not a day after I heard on the news that they can spoof the CID, I got many calls from cell phone numbers that I don't recognize. Nobody left a message so I knew they are spoofing telemarketers. I don't take calls not on my electronic phone book. Then they give up.

Traveling service provider

If you ping pong between East and West coast for example, you will be using your cell phone for business, as most call plans are national in scope. VoIP is effectively a national plan, with the same charges no matter where you bring your phone, but cheaper. In addition, all US carriers do not support a second line (a second phone number) on a single phone. For VoIP, not only that you can have as many numbers as you like on a single line, you can pick any area code you want. This allows you to create the impression of local presence. It's either free or a few dollars for each additional number. However, your outgoing caller ID will always be your primary "home" number.

Traveling call center

Usually all your cell phone call log appears online in your account. I can't say that about landlines. But VoIP does it a lot better. First, extended CID means that you have a name on top of a number. Second, you can work your contact list online, rather than on your tiny cell phone. Third, you can listen to and organize voice mails online (though the voice quality is not as good as cell or your own recorder). With a laptop traveling, you can deal with a large number of new and old callers. With simple browser add-ons, you can, for example, highlight a phone number or numbers on your log, and lookup customer information from a database. Or you can lookup the database with a single click on a button, using the first X phone numbers on the log as the key. The call details appear pretty quick online, pretty much as quick as the demo on TV about how fast the credit card transitions will appear online.

Intercom

It isn't relevant to VoIP technology but did I say I buy into VoIP because of the low cost equipment? I brought VoIP because I can have a decent cordless phone for cheap. Nowadays the intercom functions are pretty good. Press one button to initiate call and then scroll through the list to call the dining room, bedrooom 1 to 4, toilet 1 or 2, or everybody. It can hardly be simpler than a dedicated intercom.

Must have software for free email accounts

The open source Thunderbird email client is way better than Outlook, and way better than any company email clients in terms of user features. The non-trivial spam filter and message filters are certainly useful. I tried but didn't switched to Thunderbird as I do not have emails to use it on. To use it, your email accounts have to provide POP servers (for receiving) and SMTP servers (for sending). At least you need to forward your emails to an account that support POP. Free email accounts like Yahoo make sure you can't do any of that. You only get those features if you pay up in Yahoo, you get useful spam filters too. That's an awful lot of revenue for Yahoo.

The unthinkable happened. You can download and send emails from most popular free email accounts as if you paid up. Who doesn't have a few free email accounts? One for posting on Craigslist, one for registering for some free services, one personal, one for spams, etc. It's a pain to switch users in Yahoo, who punishes you by forcing you to read more advertisements. One account with multiple ID's is not safe. One day you will review the wrong ID to the wrong people.

Thunderbird has an extension called WebMail. After installing that and restart, you can install modules specific to each email service, including Yahoo, Gmail, Hotmail and many more.

Honestly this one escaped me for a while. For some reasons, it doesn't appear on the thunderbird recommended extension list, not on the popular list, nor you find it via casual search. Maybe the reason is just that the web pages are outdated. Perhaps the whole thing is understandably rather buggy in the first years. More likely, the email service providers can screw you up at any time to revenge their lost of business. Now after so many revisions of the software, I don't think they are going to do anything to sink it.

The installation is as easy as setting POP or SMTP accounts, as described in the instructions, though a little outdated. I would suggest first to setup the SMTP accounts first if possible, even if you don't intend to send emails via Thunderbird. Installation of POP accounts is as described, server is always localhost, and user is always user@domain - your full email address. Other details needed are display IDs that you can check later. What is missing from the instructions is that you need to go to add-ons, click on the email service module, eg Yahoo, and check the options. For Yahoo the default mode is the old version, most people would have switched to the new beta version, and that is the option that you have to set. It took me a while to get it working because of this.

In theory, Yahoo can screw you up anytime by changing their own protocol, eg from old version to beta. It's safe if you run Yahoo messenger and login to your most spammed accounts. If on a day that you don't seem to have new email notifications, there must be something wrong.

Webmail warned against setting up multiple SMTP accounts to send email. It didn't say whether it doesn't work at all or there will be some mixed up sometimes. I wouldn't do that anyway. I prefer login first to Yahoo to make sure that the account is the right one, before sending any email.

Wednesday, June 27, 2007

VoIP doesn't cost you anything

You need broadband Internet connections for VoIP telephony. For Cable Internet it's about $50, whether you want their bundled digital telephone (non-VoIP) or not. For DSL it's $20 for a decent speed Internet connection, but you have to pay $30 for the phone. So it's roughly $50 whatever you want. However, basic cable is a lot faster than basic DSL, reflecting the stated prices of $40 to $20.

Why would you want VoIP? For cable phone for example, the caller ID feature cost you extra $6, a few dollar monthly fees for long distance and international calls if you want economical calls, and of course the high call charge as compared to, well, Skype, which is almost free. So it's worthwhile to get VoIP for $10 with all the call features you can think of (except voicemail $3), including a 2nd phone number (same line). The basic $10 package includes some 200 minutes local and anywhere calls. Additional calls are comparable to Skype Out, an order of magnitude compared to conventional call rates.

So even for low volume users, VoIP cost you nothing to saving you a lot of money. For high volume, it's a must have, since traditional carriers like AT&T offers VoIP to business users. Skype doesn't do it for me. VoIP is one telephone number for everything. For Skype you need an ID for free PC to PC calls. You pay to call a traditional phone number (Skype Out), and it cost you to keep a Skype In phone number for grandma to call you. The critical deficiency for Skype is that it's a P2P technology, relying your PC to do all the work. Your PC not only process the voice, but routing other's calls as well. You must have an always on PC to replace the landline, or a standalone Skype phone will not be cheap. Skype do not have 911 support.

Is VoIP E911 reliable? You need your cable/DSL modem and router working, DC adapters for them working, and have electricity. Although modems and routers look like toys nowadays with cheap plastic casings, they seem to work forever 24/7. I think I can trust my life on them if I need 911. Think about it, how many cordless phone users have a wired phone connected for backup? I don't think cordless phones are any more reliable than modems and routers. I have a wired phone, but not really for backup, but use it as a telephone ringer for the spare phone socket. Also, it's just as easy to cut your telephone line as your electricity. The chance of noticing that your electricity is gone is a lot higher, when you are watching TV for example. And there are emergency systems that turn backup lights on when electricity is off. There's also the cell phone that everybody have that cannot be cut that way. Indeed there are alarm systems that make use of cellular systems rather than landlines.

As for equipment cost, again it cost you nothing to save you a lot. If you wait for promotions, the adapter allowing you to use your old phones bundles free. You can also use all of your existing phone sockets too, if you must. So if the VoIP company goes out of business (some may), you will not lost anything. Even better, you may get a free cordless phone that will not fight with WiFi. As for me, I refused to pay the overly expensive cordless phones nowadays, which drove me to discover my VoIP provider - Sunrocket. My cordless VoIP phone cost $40, which is about the price in the rest of the world, and the price I am willing to pay, after using the cordless VoIP phones in the rest of the world for a while, especially in the Far East. Mine is slightly not as slack and not as feature rich as those in the Far East, but well, they all think Americans should pay more for everything.

The voice quality of VoIP depends, but certainly between traditional landline and cell phones. If you talk a little, it doesn't make any difference to you. If you talk a lot, the amount of money saved will make you forget about the difference if any. Skype to Skype calls can be better than landline I would think. It's a big plus skipping over the telephone network, which has been evolving over many years but has to work with many old phones and systems. Skype voice processing can be an overkill because it has the PC to do all the work. One of the problems I have is international VoIP to VoIP calls. Sometimes it work perfectly, sometimes not at all, sometimes with clear echoes. But I think it's a temporary problem, otherwise no business will use it.

Friday, June 15, 2007

Home Security - cam, monitor and DVR

The current mainstream setup is a wireless Wifi IP CAM at right, and a PC anywhere in the world where you want to monitor or record the video. The cheapest CAM is about $100. The security version with a metal housing can cost 10 times more.

You also need a Wifi router (<$40) to receive the video, a broadband modem and of course Internet connection. Off-site monitoring and recording is as secure as your telephone line (DSL) or cable TV line, which are pretty easy to find and cut depending on areas. Another disadvantage of this kind of system is that you need a PC, which is the obvious target to smash when intruders get through.

The other concepts are small portable self contained devices that can easily be hidden. They are easier to use than a camcorder and there's no need for installation. You can even bring it to a hotel!

The system on the left includes up to 4 wireless quarter sized cameras that can easily be hidden somewhere, and a palm sized monitor and recorder, which can also be hidden somewhere. For the less than $200 system, you can have multiple systems hidden in different places for redundancy.

Using SD cards, you can record several hours of DVD sized video. The system used to come with an 20GB internal hard drive, which will last about a day of continuous recordings. Using half sized resolution, which is still better looking than analog VCR systems, the record time will last for days.

The new systems come with a USB connection, which probably allows you to record video on an dirt cheap external hard drive. The old 40GB and 80GB that people throw away are about the same size. You only need to buy a few dollar adapter and you can record continuous for many days.

Even if you can record for days, you may want a security aware DVR system that don't need any attention, 24/7/52. The DVR at right works with any NTSC or PAL signal. Recording only starts if motions are detected on the images. The detection algorithms are primitive but the storage space is drastically reduced - even if you have a lot of moving tree branches, pets and wild animals etc.

The new videos or images override the old ones automatically. So if you have a large enough SD card, you know you always have a week of most current video stored in the device. A 4GB SD card can last you for months. The video quality is comparable or slightly better than VCR systems. The frame rate is low but typically much faster than time lapsed VCR systems.

The device is thin and palm sized. It's so compact and cheap (<$100) that you can just stick a tiny and cheap wired camera to it and hide the whole thing outside the door for example. That's even simpler than a wireless system. You can afford multiple units too. Instead of rotating the CAMS for recording, you can have one DVR for each CAM.

Night vision and motion detection
You don't really want a night vision cam alone because the video quality at dark will be poor even for military standards. Though a night vision cam can maintain video sync at total darkness with only a little faint red infrared LED illumination that usually comes with the cam. To record something decent you must add a low cost passive IR motion detector to trigger the flood lights for example. The switching of the lights will be seen as motion in the DVR with motion detection above.


update

Saturday, June 2, 2007

Custom display of feeds in blogs

It's trivial if you want to display a particular feed (RSS/Atom etc) on your website. You download some server code for it, if your server doesn't support it already.

Without server side code, as in our blogs, we are limited to the use of client side javascript (and java for example), which wasn't that simple until very recently.

Google and Yahoo are racing against time to launch their services. For Google it's the tag sharing feature in Google Reader and for Yahoo it's the Pipes. Firstly, even for a single feed, you need somebody to convert the feed format in XML into JSON for you so you can use javascript to display it. Both services can do it nicely.

Of course blogger supports to display feeds directly with the feed page elements. And you can simply generate a clip in Google Reader to put in in your blog. However, you have little control over the style and content. You can do a lot of things using Pipes without programing but as of now it's very slow and unreliable.

This is an example display, you can put it here, at the side bars or almost anywhere.



You'll need 3 piece of codes. The first piece of javascript is shared (only one copy needed), which is listed in the previous post. You should put it in one of the first page elements.

The 2nd piece of html code should be placed where you want to display the feeds, one for each display with unique ID's:

<div id="testfeed"></div>

Without styles, the display will normally blend in with the default styles. Since the feed is appended to the division, you can put something in the division first such as titles.

The 3rd piece is the javascript codes to fetch the feed contents:

<script src="http://www.google.com/reader/public/javascript/user/
09908229015642209841/label/test?n=3
&callback=(new WriteFeed('testfeed')).write"></script>

(There should be no space or breaks within the quoted string.) The URL before the question mark contains your Google ID and the name of the shared label in your Google Reader. You can find it out from Reader by looking at the public page of the shared tag, and then click on the feed icon to view the URL at the address bar. In the URL, you need to change the word atom to javascript, as in ...public/javascript/user... above. You can put this code anywhere after or inside the div tags above, and after the 1st piece of javascript code. But since the order of rendering in Blogger is the posts, then the sidebars, you have to put the 3rd piece of code in the sidebar too, after the 1st piece.

The parameter n=3 is to limit the number of items to display. There are other parameters in the GData API, but not all are applicable here.

You can customize any of the follow parameters like this:

<script>
var block = new WriteFeed('testfeed');
block.title = 128;
block.source = 100;
block.summary = 256;
block.from = "<br/>";
block.unique = false;
block.max = 1000;
block.except = "a source url";
block.front = "your front page";
</script>

<script src="http://www.google.com/reader/public/javascript/user/
09908229015642209841/label/test?n=3
&callback=block.write"></script>

These parameters are optional. If you don't specify, the default will be used.

title : limits the length of the title, 0 to omit
source : limits the length of the source URL, 0 to omit
summary : limits the length of the summary, 0 to omit
from : the characters or html tags between the title and source
unique : only one title and summary is taken from each source
max : the maximum number of items allowed. If unique=false, max = n by default
except : a source url to include always, even if the number of items is max+1
front : typically set to your front page, so the feed only shows up on your front page, current there's transition effects.

Custom display of feeds in blogs - code

<script>
function WriteFeed(id){
this.id = id;
this.title = 128;
this.source = 128;
this.summary = 512;
this.from = "<br/>&nbsp;&nbsp;<sup>from</sup>&nbsp;";
this.unique = false;
this.max = 1000;
this.except = "";
this.front = "";

this.write=function(feed){
if(this.front)
if( document.location.href != this.front ) {
document.getElementById(id).style.display="none";
return;
}
var code=[];
var lst={};
cnt = 0;
for(var i=0; i < feed.items.length; i++) {
var item = feed.items[i];
if(cnt >= this.max){
if ( lst[ this.except ] )
break;
if( item.origin.htmlUrl != this.except )
continue;
}
if(this.unique){
if( lst[item.origin.htmlUrl] )
continue;
lst[item.origin.htmlUrl] = true;
}
if(this.title)
code.push( '<a href="' + item.alternate.href + '">' + item.title.substr(0,this.title) + '</a>');
code.push( this.from );
if(this.source && item.origin.title)
code.push( '<a href="' + item.origin.htmlUrl + '">' + item.origin.title.substr(0,this.source) + '</a><br/>');
if(this.summary){
if( item.contentSnippet )
code.push( item.contentSnippet.substr(0,this.summary) + '<br/><br>' );
else if(item.summarySnippet)
code.push( item.summarySnippet.substr(0,this.summary) + '<br/><br/>' );
}
cnt++;
}
document.getElementById(id).innerHTML += code.join("");
}
}
</script>