diff options
author | Richard Mudgett <rmudgett@digium.com> | 2011-01-08 01:13:58 +0000 |
---|---|---|
committer | Richard Mudgett <rmudgett@digium.com> | 2011-01-08 01:13:58 +0000 |
commit | f91340bb71a7a3f70adea2cc131bdd32be1b37f2 (patch) | |
tree | 69294de0a22d7a226256f9dd2d59fd55af921431 /channels/chan_dahdi.c | |
parent | 74e0a87776ba93b2105bf7beae488d71edba5398 (diff) |
Merged revisions 301134 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.8
........
r301134 | rmudgett | 2011-01-07 19:11:31 -0600 (Fri, 07 Jan 2011) | 7 lines
The DTMF attended transfer feature cannot callback a chan_dahdi BRI phone.
The DAHDI ISDN channel name is not dialable.
Make a channel name like DAHDI/i3/400-12 dialable when the sequence number
is stripped off of the name.
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@301135 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'channels/chan_dahdi.c')
-rw-r--r-- | channels/chan_dahdi.c | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/channels/chan_dahdi.c b/channels/chan_dahdi.c index 40967d64b..4519294d6 100644 --- a/channels/chan_dahdi.c +++ b/channels/chan_dahdi.c @@ -12826,6 +12826,11 @@ static int is_group_or_channel_match(struct dahdi_pvt *p, int span, ast_group_t if (!p->pri || p->pri->span != span) { return 0; } + if (!groupmatch && channelmatch == -1) { + /* Match any group since it only needs to be on the PRI span. */ + *groupmatched = 1; + return 1; + } } #endif /* defined(HAVE_PRI) */ /* check group matching */ @@ -13136,11 +13141,14 @@ static struct dahdi_pvt *determine_starting_point(const char *data, struct dahdi * data is ---v * Dial(DAHDI/pseudo[/extension[/options]]) * Dial(DAHDI/<channel#>[c|r<cadance#>|d][/extension[/options]]) - * Dial(DAHDI/[i<span>-](g|G|r|R)<group#(0-63)>[c|r<cadance#>|d][/extension[/options]]) * Dial(DAHDI/<subdir>!<channel#>[c|r<cadance#>|d][/extension[/options]]) + * Dial(DAHDI/i<span>[/extension[/options]]) + * Dial(DAHDI/[i<span>-](g|G|r|R)<group#(0-63)>[c|r<cadance#>|d][/extension[/options]]) * * i - ISDN span channel restriction. * Used by CC to ensure that the CC recall goes out the same span. + * Also to make ISDN channel names dialable when the sequence number + * is stripped off. (Used by DTMF attended transfer feature.) * * g - channel group allocation search forward * G - channel group allocation search backward @@ -13189,8 +13197,8 @@ static struct dahdi_pvt *determine_starting_point(const char *data, struct dahdi /* Remove the ISDN span channel restriction specifier. */ s = strchr(args.group, '-'); if (!s) { - ast_log(LOG_WARNING, "Bad ISDN span format for data %s\n", data); - return NULL; + /* Search all groups since we are ISDN span restricted. */ + return iflist; } args.group = s + 1; res = 0; |