News:

On Tuesday September 6th the forum will be down for maintenance from 9:30 PM to 11:59 PM PDT

Main Menu

How about support for Caller ID name lookups?

Started by MichiganTelephone, January 23, 2011, 06:17:35 AM

Previous topic - Next topic

MichiganTelephone

This is a suggestion based on the fact that although Google Voice passes through caller ID numbers on incoming calls, they do not pass caller ID names (real Caller ID name lookups from the phone company cost money).

I suggest that this could be mitigated somewhat by giving the option to make a HTTP (web) call to an external name lookup source.  My suggestion is that you have a pair of substitution variables called %receivednumber%, which would be the full number string received from Google Voice including the +1, and just %number% which would be the last ten digits of the received Caller ID number. Either of these variables could then be used in a http string to make an inquiry on a callerID lookup source.  Alternately, maybe you could use a more complex syntax like %number[,startpostion][,length]% (where startposition and length would be optional parameters. and positive numbers would count from the start of the string while negative would count from the end.  So %number,,-10% would give the last ten digits of the received number).

You'd then need five new fields:
Make request if received number begins with: [+1]
CallerID name lookup request (must start with http:// and use one of the substitution variables)
Search string at start of result
String at end of result
Truncate result to [15] characters

In the first field, you can specify that the lookup should only be done if the original number received starts with a particular string, such as +1.  This is useful because Google Voice can send things like "anonymous" if the caller used *67, and obviously that can't be looked up, and most USA-based sources can't handle "foreign" numbers either.

In the second field you'd put your http call, using the %receivednumber% or %number% substitution variable in the proper place.

In the third field you'd place the unique text that comes just before the desired result on the returned page. This might be a HTML tag or some other text.

In the fourth field you'd place the character or text that signals the end of the result on the returned page (often you would be able to use just a "<" character here, to denote the start of a HTML tag).

In the fifth field you'd be able to specify whether you wanted the result truncated to a particular number of characters - the default would be 15 which is what I believe most phones will display.

When a Google Voice call comes in and the caller ID number starts with the specified characters, if any are specified, it would make the HTTP call to your lookup source (which could be a local source you provide on a server at your location, or some service on the Internet).  It would then parse the returned page by looking for the text that falls between the specified text delimiters in the third and fourth fields, if any delimiters are specified. It would truncate the result to the number of characters in the fifth field and send that on to the phone (in the Caller ID name field).

Only other consideration is you might need to somehow limit the size of the returned result so it doesn't overflow the device's memory (in case you somehow wind up requesting a video download instead of a Caller ID lookup).  :D

Once this feature was available, users could perhaps post "recipes" for using favorite lookup sources. This would be similar to what's done in the "Caller ID Superfecta" module that's used with FreePBX, but it would only allow one lookup source (so as to avoid memory issues).

There might be other ways to address this, but that would be my suggestion.
Inactive, no longer posting or responding to messages.  Goodbye and good luck.  Some of my old Obihai-related blog posts have been moved to http://tech.iprock.com - note this in NOT my blog; I have simply given the owner permission to repost some of my old stuff.

lhm.

(cross post)

I use the WhitePages API with GV and Sipsorcery, it works well.

Example: It will show name of person or company and number. If there is no listing in WhitePages.com database for caller it will show city and state  and number from where the call originated.
It is a free service from WhitePages.com

Consider this also as a feature request.

DrZKrewe

lhm,

Do you have this working with the OBi 110?  If so, how?


ShermanOBi,

Any update as to whether or not this is going to be added in a future firmware release?


Thanks!

Robpol86

Why not for the time being periodically poll the contacts on the Google account and display those names with caller ID?

Since I use Android, all of my contacts are in my Google account.  It would be nice if I can see those on my cordless phone's Caller ID.

lhm.

"Detection of Caller ID on PSTN Enhancement"

The above included with FW update 2103. Anyone know how or what was enhanced?

QBZappy

lhm.,

I think it was for OBi users outside of the North America. I remember reading about issues re CID some users were having.
Owner of the 1st OBi110/100 units in service in Canada & South America. 1st OBi202 on my street. 1st OBi1032 in Montreal.

lhm.

#6
Detection of Caller ID on PSTN Enhancement Fixed for international users. If so perhaps this would have been a little more accurate.  :-X

gerry

I'd also add my request for a Caller ID lookup feature, especially for Gmail contacts.

fbroce

I agree. I am using voip.ms on sp2 for incoming calls and get name and callerid. Works well and
is not expensive. Presently I am using gv for outgoing. That works well too.If I use gv for both I don't get name callerid as discussed in this thread.

My guess is there are not really any "free" solutions however, if you could at least add your gv contacts to display the name associated with the contact, that would be good. Most voip providers have this feature.

MichiganTelephone

If you look at the perl script I posted in this thread, Support for notification popups on computers, and in particular this post, you can get reasonably good Caller ID name lookups for free if you have access to a server running Caller ID Superfecta.  Unfortunately, you can't make the name appear on the phone (unless Obihai makes some changes to accommodate this) but you can make it appear in a popup on your computer.  I just wish that there were some way built into the Obihai devices to send a http request to an external source (containing the calling number) and receive back a name string, which could be displayed on the phone.
Inactive, no longer posting or responding to messages.  Goodbye and good luck.  Some of my old Obihai-related blog posts have been moved to http://tech.iprock.com - note this in NOT my blog; I have simply given the owner permission to repost some of my old stuff.

fbroce

Interesting. I mostly want to be able to add it to google voice so I would need the obi modification
to do what I want.

I have several linux servers running here and have played with asterisk. I may try your perl script
if I decide to use asterisk.

Great articles on your blog site.

DrZKrewe

Would there be any way to maintain a simple contact list (name and number) in either the OBiTalk portal or the OBi 110's device configuration page to pull the Caller ID names from?

I understand this won't retrieve a name for a number you don't already know or haven't already labelled, but 99% of my incoming calls are from known people.  This would essentially help you filter out the unwanted calls anyways as they wouldn't be labelled...

I would assume that would be relatively simple to code for as all calls are already logged in the OBi.  Just a simple string search when the call comes in against the caller database in the OBi (returning the name) should accomplish this.  If the name wasn't found, it could even be coded to return a standard string telling you the name isn't in the database; something such as "Not Found" or "Not in DB."

This could even be expanded on later to list the "most frequent callers," "the longest call," "total call time," "average call time," etc...  The statistics possibilities are endless.  Obviously these are potential additions for a later date, the Caller ID names are the most important.

What does everyone think?

Thanks!

MichaelM

How about tying it in to your speed dial numbers list?  If you receive a call from a number that matches one in your speed dial list then display the name from the OBiTalk speed dial listing.

-M

DrZKrewe

Quote from: MichaelM on April 19, 2011, 10:22:41 AM
How about tying it in to your speed dial numbers list?  If you receive a call from a number that matches one in your speed dial list then display the name from the OBiTalk speed dial listing.

-M

Also a great idea.

Any input from the developers on implementing caller ID name lookups?

keith

Google Talk is able to do contact lookups with the db in Google Voice.
I would love for Obi to do the same thing, so it will put Caller Name info as CNAM data from our contacts.

RyanBlace

This is something I would really like to see added (for Google Voice). I know there isn't much time for a SOA query across the net. I also assume there isn't much storage space for a huge list of contacts in the device.

Here's an idea. After the person calls the first time, the device queries GV for the name and stores is in the local memory for the next call.  Keep doing this until the allocated storage space is filled. Then, start dropping entries based on some sort of frequency or age algorithm.

So the end user wouldn't see the caller id contact name the first time the contact calls, but would on the second call.

Common sense: Don't store anything for numbers which are not in GV contacts. Store only a user defined number of characters.

Even if the OBi ran a job once a night to lookup all the day's calls would be a great first step.

Could be a marketing feature... "Our device learns, theirs doesn't."  :)

psichel

I just added support for Obi telephone adaptors in Phone Amego.

If you are Mac based, this would be one way to get what you want:
- on-screen caller ID (screen pops) across your entire LAN.
- optional reverse lookups using popular on-line services.

What's unique about Phone Amego is that it works with cell phones, landlines, Google Voice,VoIP, and provides extensive Mac integration,

You can learn more about Phone Amego here:
http://www.sustworks.com/pa_guide/index.html

Enjoy!

- Peter Sichel
  Sustainable Softworks

P.S. If you have any questions, I'd be happy to answer them personally (my Email address is in the Phone Amego User's Guide linked above).

vmseaber

I'd also add my request for a Caller ID lookup feature, Especially for Gmail contacts.

traumahound

>I'd also add my request for a Caller ID lookup feature, Especially for Gmail contacts.

+1000

psichel

>I'd also add my request for a Caller ID lookup feature, Especially for Gmail contacts.

I like this idea and believe it is already built-in to Phone Amego. On the Mac, your Gmail contacts are normally synchronized with Apple's Address Book automatically, so when Phone Amego does an Address Book lookup, it includes your Gmail contacts.  Is there any reason to access your Gmail contacts separately?

- Peter