From cf3810a555113bb8315fc36554c2267b349bad4e Mon Sep 17 00:00:00 2001 From: Richard Mudgett <rmudgett@digium.com> Date: Mon, 25 Mar 2013 23:24:29 +0000 Subject: [PATCH] Set the CALLERID(dnid-num-plan) for incoming ISDN calls. The CALLEDTON channel variable is set for incoming ISDN calls to the lower 7 bits of the Q.931 type-of-number/numbering-plan octet. The CALLERID(dnid-num-plan) should have the same value. (closes issue ASTERISK-21248) Reported by: rmudgett ........ Merged revisions 383796 from http://svn.asterisk.org/svn/asterisk/branches/1.8 git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/11@383798 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- channels/sig_pri.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/channels/sig_pri.c b/channels/sig_pri.c index 4691e166a0..96ae24e176 100644 --- a/channels/sig_pri.c +++ b/channels/sig_pri.c @@ -6410,6 +6410,10 @@ static void *pri_dchannel(void *vpri) snprintf(calledtonstr, sizeof(calledtonstr), "%d", e->ring.calledplan); pbx_builtin_setvar_helper(c, "CALLEDTON", calledtonstr); + ast_channel_lock(c); + ast_channel_dialed(c)->number.plan = e->ring.calledplan; + ast_channel_unlock(c); + if (e->ring.redirectingreason >= 0) { /* This is now just a status variable. Use REDIRECTING() dialplan function. */ pbx_builtin_setvar_helper(c, "PRIREDIRECTREASON", redirectingreason2str(e->ring.redirectingreason)); @@ -6548,6 +6552,9 @@ static void *pri_dchannel(void *vpri) snprintf(calledtonstr, sizeof(calledtonstr), "%d", e->ring.calledplan); pbx_builtin_setvar_helper(c, "CALLEDTON", calledtonstr); + ast_channel_lock(c); + ast_channel_dialed(c)->number.plan = e->ring.calledplan; + ast_channel_unlock(c); sig_pri_handle_subcmds(pri, chanpos, e->e, e->ring.subcmds, e->ring.call); -- GitLab