summaryrefslogtreecommitdiff
path: root/channels
diff options
context:
space:
mode:
authorMark Spencer <markster@digium.com>2004-11-14 14:54:54 +0000
committerMark Spencer <markster@digium.com>2004-11-14 14:54:54 +0000
commit61b70c7f36f17aa65aac7e9e163e11ef75a78ccb (patch)
tree21e5bb21930aa43c3a815c512d5985c9e8549a7a /channels
parent05cbf44ba861388f5e414f829bf125660c224085 (diff)
Send 180 ringing even if we're going to send in-band if we're still in RING state...
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@4239 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'channels')
-rwxr-xr-xchannels/chan_sip.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/channels/chan_sip.c b/channels/chan_sip.c
index 80ef56895..8bda1dc8d 100755
--- a/channels/chan_sip.c
+++ b/channels/chan_sip.c
@@ -1900,13 +1900,16 @@ static int sip_indicate(struct ast_channel *ast, int condition)
switch(condition) {
case AST_CONTROL_RINGING:
if (ast->_state == AST_STATE_RING) {
+ /* Send 180 ringing no matter what */
+ transmit_response(p, "180 Ringing", &p->initreq);
if (!p->progress) {
- transmit_response(p, "180 Ringing", &p->initreq);
p->ringing = 1;
if (!p->progressinband)
break;
} else {
- /* Oops, we've sent progress tones. Let Asterisk do it instead */
+ /* Oops, we've sent progress tones. Some devices don't seem to
+ handle a 180 after a 183, so we'll go ahead and send the
+ ringback in-band, too. */
}
}
return -1;