Merged revisions 159360 via svnmerge from

https://origsvn.digium.com/svn/asterisk/trunk

................
r159360 | murf | 2008-11-25 16:03:01 -0700 (Tue, 25 Nov 2008) | 23 lines

Merged revisions 159316 via svnmerge from 
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r159316 | murf | 2008-11-25 15:41:10 -0700 (Tue, 25 Nov 2008) | 15 lines

(closes issue #12694)
Reported by: yraber
Patches:
      12694.2nd.diff uploaded by murf (license 17)
Tested by: murf, laurav

Thanks to file (Joshua Colp) for his IAX fix.

the change to cdr.c allows no-answer to percolate
up into CDR's, and feels like the right place to
locate this fix; if BUSY is done here, no-answer
should be, too.



........

................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@159375 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
Steve Murphy
2008-11-25 23:27:08 +00:00
parent ae28cf2d91
commit 95fb6bb29c
2 changed files with 10 additions and 0 deletions

View File

@@ -8550,6 +8550,13 @@ retryowner:
iaxs[fr->callno]->videoformat = f.subclass & ~0x1;
}
}
if (f.frametype == AST_FRAME_CONTROL && iaxs[fr->callno]->owner) {
if (f.subclass == AST_CONTROL_BUSY) {
iaxs[fr->callno]->owner->hangupcause = AST_CAUSE_BUSY;
} else if (f.subclass == AST_CONTROL_CONGESTION) {
iaxs[fr->callno]->owner->hangupcause = AST_CAUSE_CONGESTION;
}
}
if (f.frametype == AST_FRAME_IAX) {
AST_SCHED_DEL(sched, iaxs[fr->callno]->initid);
/* Handle the IAX pseudo frame itself */

View File

@@ -754,6 +754,9 @@ int ast_cdr_disposition(struct ast_cdr *cdr, int cause)
case AST_CAUSE_BUSY:
ast_cdr_busy(cdr);
break;
case AST_CAUSE_NO_ANSWER:
ast_cdr_noanswer(cdr);
break;
case AST_CAUSE_NORMAL:
break;
default: