CCXML 1.0-W3C Development GuideHome  |  Frameset Home

  Unjoin via termdigit  |  TOC  |  G: Send Element & HTTP requests  

More Than You Want To Know About ANI - DNIS

For those not 'in the know', the terms 'ANI' and 'DNIS' represent the callerID and the calledID of a telephone call. CallerID/ANI is affected by the entire path a call takes to reach its destination and requires perfect communication between the central office and tandem switches all along the routing path. There are many reasons that communication breaks down, from different regulatory environments in the home state of the caller, to choices the caller makes personally, to different (read "antiquated") switch hardware in some locales, to foreign country telephony standards, or to any number of subtle differences in even US standards. Telco programmers make the big bucks keeping track of current standards and figuring out how to translate from one to the other but it ain't easy. And if a particular state or locale forbids a telco from transmitting that information without the permission of the caller, you're out of luck.

One can think of it as being similar to the problem of making a telephone call to a random number selected from all the numbers in the world. What are the chances that the person who answers will speak English? While they're pretty good in some parts of the USA, they're not so good in some other parts. Worldwide, the chances become rather poor.

The short answer is that you simply can't trust Caller ID/ANI, no matter where it comes from. People use each other's phones. People have many phones.  Even if you receive an identifiable call you should verify the caller's actual ID before proceeding, since you don't want the guy who steals your cell phone to be able to access your bank account without hindrance.

Note: This example application requires the enabling of outdial priveleges on the Voxeo network, and the provisioning of a alphanumeric token string to your application. In order to get hooked up with all these neat features, check our Support Guide for all the juicy details.


ANI spoofing

Due to telo limitations, a DNIS value may not be spoofed. However, these restrictions do not apply to ANI, and we may designate a user defined ANI value in CCXML by following this syntax snippet closely:


<createcall dest="'tel:12223334444'" callerid="'1111111111'"/>


Of course, you can get a wee bit fancier with this if you so desire:


If you want to use variables, here's how you can do it:

<var name="phoneNumber" expr="'4071234455'"/>
<var name="ani" expr="'4075551234'"/>
..
<createcall dest="'tel:1' + phoneNumber + 'callerid=' + ani"/>







  ANNOTATIONS: EXISTING POSTS
0 posts - click the button below to add a note to this page

login
  Unjoin via termdigit  |  TOC  |  G: Send Element & HTTP requests  

© 2008 Voxeo Corporation  |  Voxeo IVR  |  VoiceXML & CCXML IVR Developer Site