Recently in VoIP Category

CallerID is cool, but CallerID with Name (CNAM), -- also known as Calling NAMe -- is where it's at. When you go with a traditional phone provider (non-VoIP) they'll often offer you CallerID with Name for an additional fee. But penny-pinching Asterisk & VoIP fans want CallerID with Name too. Unfortunately, too often the SIP trunks or traditional PSTN trunks (analog, T1/E1) connected to your Asterisk IP-PBX don't provide CallerID with Name - just regular CallerID (number only). So how do we solve this dilemma?

Well, Asterisk sits on an IP network, which of course means it can access the Internet. With access to the Internet, "in theory" a special Asterisk script can take the CallerID number, perform a reverse lookup on AnyWho, Google, and 411.com and then change the CallerID data string before it gets passed to the Asterisk extension.

Well, theory is all well and good, but has it been done? Oh yes it has!

Check out this Perl script I found on Team Forrest's website that leverages AGI (Asterisk Gateway Interface), a powerful interface that lets your programmatically control Asterisk.

Calling the CallerID with Name Perl script (calleridname.pl) is as simple as calling this single line of code:
exten => s,n(getname),AGI(calleridname.pl,${CALLERID(NUM)})

Here's the calleridname.pl script:
#!/usr/bin/perl -w
use strict;
use LWP::UserAgent;
$|=1;
sub trim($);

my %AGI; my $tests = 0; my $fail = 0; my $pass = 0; my $result = ""; my $cidnum = ""; my $cidname = "";
my $npa = ""; my $nxx = ""; my $station = ""; my $name = "";

$cidnum = $ARGV[0];

while(<STDIN>) {
    chomp;
    last unless length($_);
    if (/^agi_(\w+)\:\s+(.*)$/) {
        $AGI{$1} = $2;
    }
}

my $AnyWho = '1' ;
my $Google = '1' ;
my $www411 = '1' ;


if(substr($cidnum,0,1) eq '1'){
$cidnum=substr($cidnum,1);
}

if(substr($cidnum,0,2) eq '+1'){
$cidnum=substr($cidnum,2);
}

if ($cidnum =~ /^(\d{3})(\d{3})(\d{4})$/) {
    $npa = $1;
    $nxx = $2;
    $station = $3;
    }
elsif($cidnum =~/\<(\d{3})(\d{3})(\d{4})\>/){
    $npa = $1;
    $nxx = $2;
    $station = $3;
    }
else {
    print qq(VERBOSE "ERROR: unable to parse caller id" 2\n);
    exit(0);
}


if ($AnyWho > '0') {
    print qq(VERBOSE "STATUS: checking AnyWho for name lookup" 2\n);
    if ($name = &anywho_lookup ($npa, $nxx, $station)) {
        $cidname = $name;
        print qq(SET VARIABLE CALLERID\(name\) "$cidname"\n);
        print qq(VERBOSE "STATUS: AnyWho said name was $cidname " 2\n);
        exit(0);
        }
    else {
        print qq(VERBOSE "STATUS: unable to find name with AnyWho" 2\n);
        }
    }
else {
    print qq(VERBOSE "STATUS: AnyWho lookup disabled" 2\n);
}

if ($Google > '0') {
    print qq(VERBOSE "STATUS: checking Google for name lookup" 2\n);
    if ($name = &google_lookup ($npa, $nxx, $station)) {
        $cidname = $name;
        print qq(SET VARIABLE CALLERID\(name\) "$cidname"\n);
        print qq(VERBOSE "STATUS: Google said name was $cidname " 2\n);
        exit(0);
        }
    else {
        print qq(VERBOSE "STATUS: unable to find name with Google" 2\n);
        }
    }
else {
    print qq(VERBOSE "STATUS: Google lookup disabled" 2\n);
}

if ($www411 > '0') {
    print qq(VERBOSE "STATUS: checking www411 for name lookup" 2\n);
    if ($name = &www411_lookup ($npa, $nxx, $station)) {
        $cidname = $name;
        print qq(SET VARIABLE CALLERID\(name\) "$cidname"\n);
        print qq(VERBOSE "STATUS: www411 said name was $cidname " 2\n);
        exit(0);
        }
    else {
        print qq(VERBOSE "STATUS: unable to find name with www411" 2\n);
        }
    }
else {
    print qq(VERBOSE "STATUS: www411 lookup disabled" 2\n);
}

print qq(SET VARIABLE CALLERID\(name\) "$cidnum"\n);
print qq(VERBOSE "STATUS: Unknown name for $cidnum " 2\n);
exit(0);

sub anywho_lookup {
    my ($npa, $nxx, $station) = @_;
    my $ua = LWP::UserAgent->new( timeout => 45);
    my $URL = 'http://www.anywho.com/qry/wp_rl';
    $URL .= '?npa=' . $npa . '&telephone=' . $nxx . $station;
    $ua->agent('AsteriskAGIQuery/1');
    my $req = new HTTP::Request GET => $URL;
    my $res = $ua->request($req);
    if ($res->is_success()) {
        if ($res->content =~ /<!-- listing -->(.*)<!-- \/listing -->/s) {
            my $listing = $1;
            if ($listing =~ /<B>(.*)<\/B>/) {
                my $clidname = $1;
                return $clidname;
            }
        }
    }
    return "";
}

sub google_lookup {
  my ($npa, $nxx, $station) = @_;
  my $ua = LWP::UserAgent->new( timeout => 45);
  my $URL = 'http://www.google.com/search?rls=en&q=phonebook:' .  $npa . $nxx . $station . '&ie=UTF-8&oe=UTF-8';
  $ua->agent('AsteriskAGIQuery/1');
  my $req = new HTTP::Request GET => $URL;
  my $res = $ua->request($req);
  if ($res->is_success()) {
    if ($res->content =~ /<font size=-2><br><\/font><font size=-1>(.+)<font color=green>/) {
      my $temp = $1;
      my $clidname = "";
      if ( $temp =~ /(.+)<font color=green>/o ) {
        $clidname = substr($1, 0, -3);
      } else {
        $clidname = substr($temp, 0, -3);
      }
      if ($clidname =~ /<a href(.+)\//) {
        $clidname = $1 ;
        if ($clidname =~ />(.+)</) {
          $clidname = $1 ;
        }
      }
      return $clidname;
    }
  }
  return "";
}

sub www411_lookup {
  my ($npa, $nxx, $station) = @_;
  my $ua = LWP::UserAgent->new( timeout => 45);
  my $URL = 'http://www.411.com/search/Reverse_Phone?phone=' .  $npa . $nxx . $station;
  $ua->agent('AsteriskAGIQuery/1');
  my $req = new HTTP::Request GET => $URL;
  my $res = $ua->request($req);
  if ($res->is_success()) {
    if ($res->content =~ /Location: <strong>(.*)<\/strong>/s) {
      my $temp = $1;
      my $clidname = "";
      $temp =~ s/&amp\;/&/g;
      $temp =~ s/%20/ /g;
                        $clidname = $temp;
            return $clidname;
     }
  }
  return "";
}


For more details, head on over here.
microsoft-ocs-tips-tricks-ppt-sample.jpgNow that OCS 2007 R2 has RTM (released to manufacturing), I thought I'd share Microsoft's brand new Unified Communications Tips and Tricks Flashcards for End-Users which includes some cool tips for their Office Communications Server 2007 platform. The image above is a sample. The slide deck is specific to OCS 2007 and not OCS 2007 R2. However, there is lots of feature overlap, so I'm sure they're still useful for the early birds using OCS 2007 R2 and those still using OCS 2007 of course. Microsoft told me that flashcards for R2 will be available after R2 ships.

The 54 slides are a very nice overview on how to use OCS 2007. Just click the link below to download the Powerpoint deck of "tips and tricks" for Microsoft's Unified Communications. Each card provides step-by-step instructions for how to best utilize Microsoft's Unified Communications software and technology to its full potential.

OCS 2007 tips and tricks PPTDeck.pptx
truphone-ipod-touch.jpg Truphone has added a new Skype feature that will allow iPhone and iPod Touch users to make calls and instant message other Skype users.  This new feature is scheduled to go live to consumers the week of Jan. 12, but it's available for a select few media that inquire. I'm going to try it very shortly.

You now will have the ability to make and receive Skype calls and instant message Skype users from your iPhone or iPod touch. Truphone customers on both Apple devices can contact their Skype friends via their Skype IDs.


ipod-touch.jpg
According to Techcrunch, we can soon expect to see a 7" or 9" iPod touch, which would make it more akin to a tablet PC than a portable music & video player with app support. The app support is a key point here. One of the problems with the iPod touch and similarly the iPhone is the relatively small screen. Sure, it's bigger than most portable devices, but it's still not quite large enough for optimal productivity.

By stepping up the screen size, not only will it improve productivity, you may even see users actually "work" within business apps such as Excel on the iPod touch. Try working in Excel on the iPod touch or iPhone on such a small screen is nearly impossible. In fact, I should point out that natively the iPhone and iPod touch don't support Excel. There is a workaround however.

Broadsoft Acquires Rival Sylantro

December 29, 2008 8:59 AM | 0 Comments
broadsoft-logo.gifIn what could portend several acquisitions in the VoIP space, Broadsoft has acquired rival competitor Sylantro Systems, both makers of softswitches and both heavily involved in carrier infrastructure, IMS, and converged services. TMCnet's Greg Galitzine has the full details on the acquisition.

With the global slowing economy, even the VoIP industry which has had exponential growth over the last 13 years, is being affected by the global downturn. No doubt we will see more consolidation within the VoIP space and likely a few bankruptcies as well.

I for one can't believe it's been 13 years since VoIP was first invented. It's amazing to think I've been covering the VoIP industry for over a decade, when most people have only heard of VoIP in the last 5 years or so. I still believe VoIP has not reached its full potential and will still be one of the few bright spots in the near future because of its cost-savings potential and other factors that will drive customer and carrier adoption.

trixbox CE vs. Asterisk Downloads

December 23, 2008 6:00 AM | 4 Comments
As you may have read, Digium announced a sharp rise in Asterisk downloads for 2008 registering in a whopping 1.5 million downloads for 2008. That got me thinking just how does Asterisk & AsteriskNOW compare with Fonality's trixbox CE distro? Arguably trixbox CE is the either the #1 or the #2 downloaded Asterisk-based distribution. But are they #1 or #2? Let the Fonality vs. Digium download battle commence...

First, we head to Sourceforge, which tracks trixbox CE downloads and see how trixbox CE stacks up against Digium's claimed 1.5 million downloads.
trixbox-ce-downloads-2008.jpg

Date (UTC) Downloads Bytes Served
Dec 2008 * 18,050 6.8 TB
Nov 2008 31,000 12.2 TB
Oct 2008 35,187 15.6 TB
Sep 2008 19,449 9.6 TB
Aug 2008 6,948 3.3 TB
Jul 2008 8,329 3.7 TB
Jun 2008 19,993 9.3 TB
May 2008 21,822 13.3 TB
Apr 2008 18,238 11.0 TB
Mar 2008 41,085 25.2 TB
Feb 2008 27,725 16.9 TB
Jan 2008 43,942 26.4 TB
     
Total 291,768 153.8 TB

* Partial data: End of month not yet reached.
Taking a daily average, the final 2008 total downloads should be ~292,587.

That's 292,587 (year-end estimate) vs. 1.5 million (so far) for Asterisk. So it would appear Digium's Asterisk beats Fonality trixbox CE by over 5X!

Not so fast though. I was pretty sure the Digium download numbers were for Asterisk and AsteriskNOW combined. AsteriskNOW and trixbox CE are more comparable to each other, since both have FreePBX installed, both are .iso bootable CDs, they're both nearly plug-and-play distros, etc.

So to be fair to Fonality's trixbox CE, I should compare AsteriskNOW to trixbox CE. I contacted Digium's Bill Miller, VP, Product Management, and asked him for the breakdown in their 1.5 million downloads.

I told Bill my intentions of making a side-by-side download comparison, but also pointed out I had to wear my skepticism hat:

"The only caveat to any comparison I make between Asterisk/AsteriskNOW & trixbox CE is that you host your own downloads - not a 3rd party like Sourceforge. So there I have to have a healthy level of skepticism for any numbers Digium cites. Nevertheless, I think it'll be an interesting discussion if I post these comparative stats in an article."


Bill explained, "19.8% are AsteriskNOW. We are close to par with them.". Indeed at 19.8% of 1.5 million equates to 297,000 downloads or roughly 6500 more than trixbox CE. Although, I said above I had to wear my skepticism hat, I think the numbers Bill gave me sound credible.

Bill Miller ads, "Due to the other open source packages they have integrated, and the head start they had, we suspect that they have more in trixbox than AsteriskNOW in production but we are taking downloads and share from them."

I would agree with Bill that there are indeed more trixbox CE boxes in production, but it does appear from these numbers that Digium's AsteriskNOW is closing fast in production numbers and already exceeding Fonality's trixbox CE in downloads.

To be perfectly frank, I'm a little bit surprised AsteriskNOW has surpassed trixbox CE, since I'm sure even Digium would admit that trixbox CE, which was formerly Asterisk@Home, had a huge head start and developed a strong community (see trixbox forums and the sheer number of posts & threads). In fact, Bill Miller mentioned the head start in our conversation. Still, the number of downloads between the two is very close and they are neck-in-neck.

Of course, if you add in regular Asterisk downloads it's no contest. Digium wins by a landslide.

The State of Nortel

December 22, 2008 9:35 AM | 0 Comments
nortel-logo.gif Rich has an excellent piece on Nortel where he talks to Nortel's President of Carrier Networks' Richard Lowe and Bruce Gustafson, Director of Marcom, Carrier Networks. With all the bad news surrounding Nortel it's interesting to get a perspective of Nortel from the horse's mouth. Of course, Nortel's job or any company for that matter is to try and spin things in a positive light.

However, reading the article it seems that Nortel was fairly open about their current status and the direction they are taking. For instance, Rich's article states, "He did say a large number of carriers are slowing their spending in CDMA... they have deployed 1x he mentioned for voice and have their first EVDO deployments in place for data. He says they will be looking for this line of business to decline perhaps 5-10% a year."

The article adds, "He further explained that ROI parameters are getting more challenging so operators are slowing their CAPEX investments which would be used to upgrade TDM to VoIP. He says these operators will hold onto their Class 5 switches longer than originally planned... As long as it continues to support the traffic he explained."

Rich's article then goes into Nortel's views on their prospects in GSM, WCDMA (wideband CDMA) and more.

Great read. Check it out.
skype-video-cards.jpg
This morning I was playing with the new video e-card creation tool from Skype, which is just in time for Christmas, Hanukkah and the rest of the holidays. It's called Video cards with Skype (http://www.skypevideocards.com).

Facebook fans can easily embed/send the cards to your Facebook friends instantly or use the "Video cards with Skype" Facebook app (http://apps.facebook.com/videocardswithskype).

The new skypevideocards.com is a no-download Flash-based video creation tool that lets you embed videos or email them to friends/family. Sightspeed and others have had this for awhile. What's interesting is that this is the first app by Skype outside of the main Skype client - at least that I'm aware of. With this Flash-based video recording tool, could a Flash-based VoIP client by Skype be far behind? We shall see. That would be huge news if Skype did create a no download Flash client, but there are some technical hurdles to that I'm sure (i.e. supernodes would be hard to run under Flash).

Here's a video demo from me with some holiday greetings to fans of the VoIP & Gadgets blog. Thanks for your support and readership these past 4 years!
Belkin F1PP010EN-SK Desktop Internet Phone for 'Skype (Black) I was doing some Christmas shopping on Amazon when I was curious what sort of VoIP phones were available on Amazon. I came across the Belkin Desktop Internet Phone for Skype, which I never heard of.

The Belkin Desktop Internet Phone for Skype is a standalone Skype phone with no PC running Skype requirement. All that is required is a wired connection to your LAN with Internet access. Because it's a standalone Skype phone it's much more suitable as a landline phone replacement in your house than some of the USB-based Skype phones.

The Belkin Desktop Internet Phone for Skype sports a 1.8-inch color LCD display and a phonebook that supports over 500 sets of phone numbers. Importantly, it supports all key Skype features including Skype-to-Skype calling, SkypeIn, SkypeOut, Skype Voicemail, Skype search directory, Skype contact list, Skype Presence, call waiting, conference call (guest only), call history, and user profiles. (Note: The SkypeIn capability is critical if you want to replace your landline phone.)

Belkin espouses the fact that unlike many other Skype phones that use a WiFi connection and require additional SSID or security-key input, the Belkin Desktop Internet Phone is a plug-and-play device that connects automatically to the Internet & Skype at boot up. While no wireless SSID keys to fuss with is certainly a plus, the fact that this phone is completely "wired" without even a wireless handset, may make this a deal breaker for some. The only time I use a "wired" phone is at work and even then I have a DECT 6.0 wireless headset I can use if need be. The phone does have a speakerphone for a hands-free experience, but that doesn't make up for no roaming around capabilities.

Still, if you want to have a standalone Skype phone and make this a landline replacement for cheaper calls, it certainly has some nice capabilities. Other features include phone-book dialing, mute, redial, hold, and a call-timer display.

Available on Amazon for $79.99

p.s. You should also check out my Philips VoIP841 review, which sports a DECT cordless phone and is also a standalone Skype phone.

CNET - Where's the love?

December 16, 2008 4:29 PM | 4 Comments
cnet-news-logo.jpgI love CNET, it's one of my favorite technology, electronics, and gadgets sites. But I'm just not feeling the love. You see, I wrote a quick review of the just launched GizmoCall Flash-based VoIP service this morning. A few hours later, see in my RSS alerts another article on GizmoCall. Naturally, I want to see other people's opinions on it, so I click through and see that it's a CNET article. (http://news.cnet.com/8301-1035_3-10124311-94.html)

The CNET article had very similar sentiments to my own and performed the same test I did by dialing a free 800 number. I thought to myself what a waste of a click, it's basically the same thoughts I had and did the same test I did. How boring. I was about to close the window when I noticed my username (tkeatingtmc) on the CNET screenshot within the CNET article! WT-??

That's just fantastic, CNET! There goes my privacy. You just gave away my GizmoCall username. And what, no link love? You 'borrow' my image with my username in it and you don't link to the source? Bad form, CNET. Bad form!

Also, you would have had to have read the article in order to see the image. So why not say "Tom Keating also checked out GizmoCall. Here are his thoughts."

Here's a snapshot in case it is deleted:
cnet-gizmocall.jpg
Previous 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 ... 117 Next

Subscribe to Blog

Archives