[asterisk-bugs] [Asterisk 0016789]: [patch] Overlap receiving timeout, plus dialplan latency, causes network to retry SETUP
Asterisk Bug Tracker
noreply at bugs.digium.com
Tue Jan 25 11:58:06 CST 2011
A NOTE has been added to this issue.
======================================================================
https://issues.asterisk.org/view.php?id=16789
======================================================================
Reported By: alecdavis
Assigned To: alecdavis
======================================================================
Project: Asterisk
Issue ID: 16789
Category: Channels/chan_dahdi
Reproducibility: sometimes
Severity: minor
Priority: normal
Status: closed
Asterisk Version: SVN
JIRA: SWP-887
Regression: No
Reviewboard Link:
SVN Branch (only for SVN checkouts, not tarball releases): 1.6.1
SVN Revision (number only!): 243988
Request Review:
Resolution: fixed
Fixed in Version:
======================================================================
Date Submitted: 2010-02-08 19:57 CST
Last Modified: 2011-01-25 11:58 CST
======================================================================
Summary: [patch] Overlap receiving timeout, plus dialplan
latency, causes network to retry SETUP
Description:
An overlap received call, should have a PROCEEDING sent when asterisk has
deemed that no further digits are coming, IE when asterisk starts executing
the dialplan.
The issue is, ast_waitfordigit in ss_thread waits 'matchdigittimeout'
which set 3 seconds, then there is dialplan delay, which may take a while
to execute PROGRESS(), PROGRESS() or ANSWER(). In our case, database
lookups.
When the network retries the SETUP, with the same channel and call
reference, libpri deems this as a 'Not a new call' and promptly rejects the
call. Now the call is lost!.
Previously it has required the PROCEEDING() to be the the first line of
the dialplan context.
======================================================================
Relationships ID Summary
----------------------------------------------------------------------
related to 0017085 [patch] [regression] Overlap dialing to...
related to 0017414 [patch] ss_thread calls pri_grab withou...
related to 0018509 [patch] Sending out unnecessary PROCEED...
======================================================================
----------------------------------------------------------------------
(0131033) svnbot (reporter) - 2011-01-25 11:58
https://issues.asterisk.org/view.php?id=16789#c131033
----------------------------------------------------------------------
Repository: asterisk
Revision: 303772
_U trunk/
U trunk/channels/chan_dahdi.c
U trunk/channels/sig_pri.c
U trunk/channels/sig_pri.h
U trunk/channels/sig_ss7.c
U trunk/channels/sig_ss7.h
------------------------------------------------------------------------
r303772 | rmudgett | 2011-01-25 11:58:01 -0600 (Tue, 25 Jan 2011) | 61
lines
Merged revisions 303771 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.8
................
r303771 | rmudgett | 2011-01-25 11:49:20 -0600 (Tue, 25 Jan 2011) | 54
lines
Merged revisions 303769 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.6.2
................
r303769 | rmudgett | 2011-01-25 11:42:42 -0600 (Tue, 25 Jan 2011) | 47
lines
Merged revisions 303765 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r303765 | rmudgett | 2011-01-25 11:36:50 -0600 (Tue, 25 Jan 2011) |
40 lines
Sending out unnecessary PROCEEDING messages breaks overlap dialing.
Issue https://issues.asterisk.org/view.php?id=16789 was a good idea.
Unfortunately, it breaks overlap
dialing
through Asterisk. There is not enough information available at this
point
to know if dialing is complete. The ast_exists_extension(),
ast_matchmore_extension(), and ast_canmatch_extension() calls are
not
adequate to detect a dial through extension pattern of "_9!".
Workaround is to use the dialplan Proceeding() application early in
non-dial through extensions.
* Effectively revert issue https://issues.asterisk.org/view.php?id=16789.
* Allow outgoing overlap dialing to hear dialtone and other early
media.
A PROGRESS "inband-information is now available" message is now sent
after
the SETUP_ACKNOWLEDGE message for non-digital calls. An
AST_CONTROL_PROGRESS is now generated for incoming SETUP_ACKNOWLEDGE
messages for non-digital calls.
* Handling of the AST_CONTROL_CONGESTION in chan_dahdi/sig_pri was
inconsistent with the cause codes.
* Added better protection from sending out of sequence messages by
combining several flags into a single enum value representing call
progress level.
* Added diagnostic messages for deferred overlap digits handling
corner
cases.
(closes issue https://issues.asterisk.org/view.php?id=17085)
Reported by: shawkris
(closes issue https://issues.asterisk.org/view.php?id=18509)
Reported by: wimpy
Patches:
issue18509_early_media_v1.8_v3.patch uploaded by rmudgett
(license 664)
Expanded upon issue18509_early_media_v1.8_v3.patch to include
analog
and SS7 because of backporting requirements.
Tested by: wimpy, rmudgett
........
................
................
------------------------------------------------------------------------
http://svn.digium.com/view/asterisk?view=rev&revision=303772
Issue History
Date Modified Username Field Change
======================================================================
2011-01-25 11:58 svnbot Note Added: 0131033
======================================================================
More information about the asterisk-bugs
mailing list