summaryrefslogtreecommitdiff
path: root/res/res_agi.c
diff options
context:
space:
mode:
Diffstat (limited to 'res/res_agi.c')
-rw-r--r--res/res_agi.c24
1 files changed, 15 insertions, 9 deletions
diff --git a/res/res_agi.c b/res/res_agi.c
index 4150fe1a9..bd8ad4bfd 100644
--- a/res/res_agi.c
+++ b/res/res_agi.c
@@ -1626,14 +1626,18 @@ static void setup_env(struct ast_channel *chan, char *request, int fd, int enhan
ast_agi_send(fd, chan, "agi_version: %s\n", ast_get_version());
/* ANI/DNIS */
- ast_agi_send(fd, chan, "agi_callerid: %s\n", S_OR(chan->cid.cid_num, "unknown"));
- ast_agi_send(fd, chan, "agi_calleridname: %s\n", S_OR(chan->cid.cid_name, "unknown"));
- ast_agi_send(fd, chan, "agi_callingpres: %d\n", chan->cid.cid_pres);
- ast_agi_send(fd, chan, "agi_callingani2: %d\n", chan->cid.cid_ani2);
- ast_agi_send(fd, chan, "agi_callington: %d\n", chan->cid.cid_ton);
- ast_agi_send(fd, chan, "agi_callingtns: %d\n", chan->cid.cid_tns);
- ast_agi_send(fd, chan, "agi_dnid: %s\n", S_OR(chan->cid.cid_dnid, "unknown"));
- ast_agi_send(fd, chan, "agi_rdnis: %s\n", S_OR(chan->redirecting.from.number, "unknown"));
+ ast_agi_send(fd, chan, "agi_callerid: %s\n",
+ S_COR(chan->caller.id.number.valid, chan->caller.id.number.str, "unknown"));
+ ast_agi_send(fd, chan, "agi_calleridname: %s\n",
+ S_COR(chan->caller.id.name.valid, chan->caller.id.name.str, "unknown"));
+ ast_agi_send(fd, chan, "agi_callingpres: %d\n",
+ ast_party_id_presentation(&chan->caller.id));
+ ast_agi_send(fd, chan, "agi_callingani2: %d\n", chan->caller.ani2);
+ ast_agi_send(fd, chan, "agi_callington: %d\n", chan->caller.id.number.plan);
+ ast_agi_send(fd, chan, "agi_callingtns: %d\n", chan->dialed.transit_network_select);
+ ast_agi_send(fd, chan, "agi_dnid: %s\n", S_OR(chan->dialed.number.str, "unknown"));
+ ast_agi_send(fd, chan, "agi_rdnis: %s\n",
+ S_COR(chan->redirecting.from.number.valid, chan->redirecting.from.number.str, "unknown"));
/* Context information */
ast_agi_send(fd, chan, "agi_context: %s\n", chan->context);
@@ -2116,7 +2120,9 @@ static int handle_setpriority(struct ast_channel *chan, AGI *agi, int argc, cons
return RESULT_SHOWUSAGE;
if (sscanf(argv[2], "%30d", &pri) != 1) {
- if ((pri = ast_findlabel_extension(chan, chan->context, chan->exten, argv[2], chan->cid.cid_num)) < 1)
+ pri = ast_findlabel_extension(chan, chan->context, chan->exten, argv[2],
+ S_COR(chan->caller.id.number.valid, chan->caller.id.number.str, NULL));
+ if (pri < 1)
return RESULT_SHOWUSAGE;
}