diff options
author | Richard Mudgett <rmudgett@digium.com> | 2011-02-07 23:33:44 +0000 |
---|---|---|
committer | Richard Mudgett <rmudgett@digium.com> | 2011-02-07 23:33:44 +0000 |
commit | 49feb747ba9b5c3243a00c9d2e8eb38194882a6b (patch) | |
tree | 8f8aeb28fd951c28cd1af6a11b47d5086c9bb11e /channels/sig_pri.c | |
parent | 1277a80a5b6f3ae31205e7c04ec58aaa4db2ee99 (diff) |
Pass a MCID request to the bridged channel.
Pass a MCID request to the bridged channel so the bridged channel can send
it to the network.
The ability to send the MCID request on an ISDN span is enabled with the
new chan_dahdi.conf mcid_send option.
JIRA SWP-2845
JIRA ABE-2736
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@306755 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'channels/sig_pri.c')
-rw-r--r-- | channels/sig_pri.c | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/channels/sig_pri.c b/channels/sig_pri.c index ff700c087..58f6c82b2 100644 --- a/channels/sig_pri.c +++ b/channels/sig_pri.c @@ -1917,7 +1917,12 @@ static void sig_pri_mcid_event(struct sig_pri_span *pri, const struct pri_subcmd } if (owner) { - /* The owner channel is present. */ + /* + * The owner channel is present. + * Pass the event to the peer as well. + */ + ast_queue_control(owner, AST_CONTROL_MCID); + ast_str_append(&msg, 0, "Channel: %s\r\n", owner->name); ast_str_append(&msg, 0, "UniqueID: %s\r\n", owner->uniqueid); @@ -7687,6 +7692,15 @@ int sig_pri_indicate(struct sig_pri_chan *p, struct ast_channel *chan, int condi } #endif /* defined(HAVE_PRI_AOC_EVENTS) */ break; +#if defined(HAVE_PRI_MCID) + case AST_CONTROL_MCID: + if (p->pri && p->pri->pri && p->pri->mcid_send) { + pri_grab(p, p->pri); + pri_mcid_req_send(p->pri->pri, p->call); + pri_rel(p->pri); + } + break; +#endif /* defined(HAVE_PRI_MCID) */ } return res; |