SS7 marked the start of an open season for trunk again but here's something minor - abstract early bridging into the technology so that we don't always assume they use RTP and try it.

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@43437 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
Joshua Colp
2006-09-21 19:27:26 +00:00
parent 19b22887ca
commit 1c764935f2
6 changed files with 64 additions and 42 deletions

View File

@@ -575,8 +575,8 @@ static struct ast_channel *wait_for_answer(struct ast_channel *in, struct dial_l
OPT_CALLEE_MONITOR | OPT_CALLER_MONITOR |
OPT_CALLEE_PARK | OPT_CALLER_PARK |
DIAL_NOFORWARDHTML);
/* Setup RTP early bridge if appropriate */
ast_rtp_early_bridge(in, peer);
/* Setup early bridge if appropriate */
ast_channel_early_bridge(in, peer);
}
/* If call has been answered, then the eventual hangup is likely to be normal hangup */
in->hangupcause = AST_CAUSE_NORMAL_CLEARING;
@@ -605,7 +605,7 @@ static struct ast_channel *wait_for_answer(struct ast_channel *in, struct dial_l
ast_verbose(VERBOSE_PREFIX_3 "%s is ringing\n", c->name);
/* Setup early media if appropriate */
if (single)
ast_rtp_early_bridge(in, c);
ast_channel_early_bridge(in, c);
if (!(*sentringing) && !ast_test_flag(outgoing, OPT_MUSICBACK)) {
ast_indicate(in, AST_CONTROL_RINGING);
(*sentringing)++;
@@ -616,7 +616,7 @@ static struct ast_channel *wait_for_answer(struct ast_channel *in, struct dial_l
ast_verbose (VERBOSE_PREFIX_3 "%s is making progress passing it to %s\n", c->name, in->name);
/* Setup early media if appropriate */
if (single)
ast_rtp_early_bridge(in, c);
ast_channel_early_bridge(in, c);
if (!ast_test_flag(outgoing, OPT_RINGBACK))
ast_indicate(in, AST_CONTROL_PROGRESS);
break;
@@ -629,7 +629,7 @@ static struct ast_channel *wait_for_answer(struct ast_channel *in, struct dial_l
if (option_verbose > 2)
ast_verbose (VERBOSE_PREFIX_3 "%s is proceeding passing it to %s\n", c->name, in->name);
if (single)
ast_rtp_early_bridge(in, c);
ast_channel_early_bridge(in, c);
if (!ast_test_flag(outgoing, OPT_RINGBACK))
ast_indicate(in, AST_CONTROL_PROCEEDING);
break;
@@ -1624,7 +1624,7 @@ out:
sentringing = 0;
ast_indicate(chan, -1);
}
ast_rtp_early_bridge(chan, NULL);
ast_channel_early_bridge(chan, NULL);
hanguptree(outgoing, NULL);
pbx_builtin_setvar_helper(chan, "DIALSTATUS", status);
if (option_debug)