Index: pbx.c =================================================================== RCS file: /usr/cvsroot/asterisk/pbx.c,v retrieving revision 1.137 diff -u -r1.137 pbx.c --- pbx.c 14 Jul 2004 07:44:19 -0000 1.137 +++ pbx.c 22 Jul 2004 16:15:08 -0000 @@ -868,6 +868,8 @@ *ret = workspace; } else *ret = NULL; + } else if (c && !strcmp(var, "CALLERTON")) { + snprintf(workspace, workspacelen, "%d", c->callerton); + *ret = workspace; } else if (c && !strcmp(var, "DNID")) { if (c->dnid) { strncpy(workspace, c->dnid, workspacelen - 1); Index: channels/chan_zap.c =================================================================== RCS file: /usr/cvsroot/asterisk/channels/chan_zap.c,v retrieving revision 1.295 diff -u -r1.295 chan_zap.c --- channels/chan_zap.c 16 Jul 2004 04:40:54 -0000 1.295 +++ channels/chan_zap.c 22 Jul 2004 16:15:12 -0000 @@ -441,6 +441,7 @@ char language[MAX_LANGUAGE]; char musicclass[MAX_LANGUAGE]; char callerid[AST_MAX_EXTENSION]; + int callerton; char lastcallerid[AST_MAX_EXTENSION]; char *origcallerid; /* malloced original callerid */ char callwaitcid[AST_MAX_EXTENSION]; @@ -4357,6 +4358,7 @@ tmp->callerid = strdup(i->callerid); tmp->ani = strdup(i->callerid); } + tmp->callerton = i->callerton; tmp->restrictcid = i->restrictcid; tmp->callingpres = i->callingpres; #ifdef ZAPATA_PRI @@ -7111,6 +7113,8 @@ strncpy(pri->pvts[chanpos]->callerid, e->ring.callingnum, sizeof(pri->pvts[chanpos]->callerid)-1); } else pri->pvts[chanpos]->callerid[0] = '\0'; + /* Caller Type Of Number - used to distinguish NANPA from International */ + pri->pvts[chanpos]->callerton = ((e->ring.callingplan) >> 4) & 0x7; strncpy(pri->pvts[chanpos]->rdnis, e->ring.redirectingnum, sizeof(pri->pvts[chanpos]->rdnis) - 1); /* If immediate=yes go to s|1 */ if (pri->pvts[chanpos]->immediate) { Index: include/asterisk/channel.h =================================================================== RCS file: /usr/cvsroot/asterisk/include/asterisk/channel.h,v retrieving revision 1.49 diff -u -r1.49 channel.h --- include/asterisk/channel.h 22 Jun 2004 18:49:00 -0000 1.49 +++ include/asterisk/channel.h 22 Jul 2004 16:15:12 -0000 @@ -149,6 +149,8 @@ char *dnid; /*! Malloc'd Caller ID */ char *callerid; + /*! Caller Type Of Number */ + int callerton; /*! Malloc'd ANI */ char *ani; /*! Malloc'd RDNIS */