[asterisk-bugs] [Asterisk 0016946]: Call that clears in same app_dial poll as answer is reported as NOANSWER but NORMAL_CLEARING
Asterisk Bug Tracker
noreply at bugs.digium.com
Wed Oct 13 18:47:12 CDT 2010
A NOTE has been added to this issue.
======================================================================
https://issues.asterisk.org/view.php?id=16946
======================================================================
Reported By: davidw
Assigned To: twilson
======================================================================
Project: Asterisk
Issue ID: 16946
Category: Applications/app_dial
Reproducibility: sometimes
Severity: minor
Priority: normal
Status: closed
Target Version: 1.6.2.15
Asterisk Version: SVN
JIRA: SWP-984
Regression: No
Reviewboard Link: https://reviewboard.asterisk.org/r/740/
SVN Branch (only for SVN checkouts, not tarball releases): N/A
SVN Revision (number only!):
Request Review:
Resolution: fixed
Fixed in Version:
======================================================================
Date Submitted: 2010-03-02 13:54 CST
Last Modified: 2010-10-13 18:47 CDT
======================================================================
Summary: Call that clears in same app_dial poll as answer is
reported as NOANSWER but NORMAL_CLEARING
Description:
If a call clears so fast after being answered that app_dial fails to read a
frame before it realises it has been answered, handle_cause breaks from its
switch and does not increment any of its failure reason counters. The call
ends up with a "No one is available to answer at this time (1:0/0/0)"
message logged, the default DIALSTATUS of NOANSWER and a HANGUPCAUSE of 16
(AST_CAUSE_NORMAL_CLEARING).
If it clears just slightly later, it is treated as a successful, if short
call (that's why it is "sometimes", not "always".
The variablility in the result, depending on precise timing is confusing,
and NOANSWER does not seem an appropriate status.
======================================================================
----------------------------------------------------------------------
(0128001) svnbot (reporter) - 2010-10-13 18:47
https://issues.asterisk.org/view.php?id=16946#c128001
----------------------------------------------------------------------
Repository: asterisk
Revision: 291657
_U trunk/
U trunk/main/channel.c
------------------------------------------------------------------------
r291657 | twilson | 2010-10-13 18:47:11 -0500 (Wed, 13 Oct 2010) | 42
lines
Merged revisions 291581 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.8
................
r291581 | twilson | 2010-10-13 16:01:56 -0700 (Wed, 13 Oct 2010) | 35
lines
Merged revisions 291580 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.6.2
................
r291580 | twilson | 2010-10-13 15:58:43 -0700 (Wed, 13 Oct 2010) | 28
lines
Merged revisions 291577 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r291577 | twilson | 2010-10-13 15:45:15 -0700 (Wed, 13 Oct 2010) |
21 lines
Don't ignore frames that have been queued when softhangup'd
When an outgoing call is answered and hung up by the far end *very*
quickly, we
may not read any frames and therefor end up with a call that
displays the wrong
disposition/DIALSTATUS. The reason is because ast_queue_hangup()
immediately
sets the _softhangup flag on the channel and then queues the HANGUP
control
frame, but __ast_read refuses to read any frames if
ast_check_hangup() indicates
that a hangup request has been made (which it will if _softhangup is
set). So,
we end up losing control frames.
This change makes __ast_read continue to read frames even if a soft
hangup has
been requested. It queues a hangup frame to make sure that
__ast_read() will
still eventually return NULL.
Much thanks to David Vossel for all of the reviews, discussion, and
help!
(closes issue https://issues.asterisk.org/view.php?id=16946)
Reported by: davidw
Review: https://reviewboard.asterisk.org/r/740/
........
................
................
------------------------------------------------------------------------
http://svn.digium.com/view/asterisk?view=rev&revision=291657
Issue History
Date Modified Username Field Change
======================================================================
2010-10-13 18:47 svnbot Checkin
2010-10-13 18:47 svnbot Note Added: 0128001
======================================================================
More information about the asterisk-bugs
mailing list