summaryrefslogtreecommitdiff
path: root/funcs/func_channel.c
diff options
context:
space:
mode:
authorRichard Mudgett <rmudgett@digium.com>2011-03-04 15:28:20 +0000
committerRichard Mudgett <rmudgett@digium.com>2011-03-04 15:28:20 +0000
commit928ec2b9903346f6e3d274c4addace48fb8f8624 (patch)
treef3cafb2098bf62294b6581078f8b3e29a8caba83 /funcs/func_channel.c
parent3cda82a379fc3714ea82cb45ee10c9aae0094242 (diff)
Merged revisions 309445 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.8 ........ r309445 | rmudgett | 2011-03-04 09:22:04 -0600 (Fri, 04 Mar 2011) | 46 lines Get real channel of a DAHDI call. Starting with Asterisk v1.8, the DAHDI channel name format was changed for ISDN calls to: DAHDI/i<span>/<number>[:<subaddress>]-<sequence-number> There were several reasons that the channel name had to change. 1) Call completion requires a device state for ISDN phones. The generic device state uses the channel name. 2) Calls do not necessarily have B channels. Calls placed on hold by an ISDN phone do not have B channels. 3) The B channel a call initially requests may not be the B channel the call ultimately uses. Changes to the internal implementation of the Asterisk master channel list caused deadlock problems for chan_dahdi if it needed to change the channel name. Chan_dahdi no longer changes the channel name. 4) DTMF attended transfers now work with ISDN phones because the channel name is "dialable" like the chan_sip channel names. For various reasons, some people need to know which B channel a DAHDI call is using. * Added CHANNEL(dahdi_span), CHANNEL(dahdi_channel), and CHANNEL(dahdi_type) so the dialplan can determine the B channel currently in use by the channel. Use CHANNEL(no_media_path) to determine if the channel even has a B channel. * Added AMI event DAHDIChannel to associate a DAHDI channel with an Asterisk channel so AMI applications can passively determine the B channel currently in use. Calls with "no-media" as the DAHDIChannel do not have an associated B channel. No-media calls are either on hold or call-waiting. (closes issue #17683) Reported by: mrwho Tested by: rmudgett (closes issue #18603) Reported by: arjankroon Patches: issue17683_18603_v1.8_v2.patch uploaded by rmudgett (license 664) Tested by: stever28, rmudgett ........ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@309446 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'funcs/func_channel.c')
-rw-r--r--funcs/func_channel.c16
1 files changed, 16 insertions, 0 deletions
diff --git a/funcs/func_channel.c b/funcs/func_channel.c
index 4ae08efc2..dcc0190b4 100644
--- a/funcs/func_channel.c
+++ b/funcs/func_channel.c
@@ -224,6 +224,22 @@ ASTERISK_FILE_VERSION(__FILE__, "$Revision$")
</enumlist>
<para><emphasis>chan_dahdi</emphasis> provides the following additional options:</para>
<enumlist>
+ <enum name="dahdi_channel">
+ <para>R/O DAHDI channel related to this channel.</para>
+ </enum>
+ <enum name="dahdi_span">
+ <para>R/O DAHDI span related to this channel.</para>
+ </enum>
+ <enum name="dahdi_type">
+ <para>R/O DAHDI channel type, one of:</para>
+ <enumlist>
+ <enum name="analog" />
+ <enum name="mfc/r2" />
+ <enum name="pri" />
+ <enum name="pseudo" />
+ <enum name="ss7" />
+ </enumlist>
+ </enum>
<enum name="keypad_digits">
<para>R/O PRI Keypad digits that came in with the SETUP message.</para>
</enum>