[asterisk-dev] [Code Review] Issues with DTMF triggered attended transfers.
rmudgett
reviewboard at asterisk.org
Fri Jan 14 20:09:44 CST 2011
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviewboard.asterisk.org/r/1047/
-----------------------------------------------------------
(Updated 2011-01-14 20:09:44.487918)
Review request for Asterisk Developers and Russell Bryant.
Changes
-------
Fixed inverted logic with transferee_hangup.
Fixed double hangup dealing with check_compat().
Summary
-------
Issue 17999
1) A calls B. B answers.
2) B using DTMF dial *2 (code in features.conf for attended transfer).
3) A hears MOH. B dial number C
4) C ringing. A hears MOH.
5) B hangup. A still hears MOH. C ringing.
5) A hangup. C still ringing until "atxfernoanswertimeout" expires.
Problem: When A and B hangup C is still ringing.
Issue 18395
SIP call limit of B is 1
1. A call B, B answered
2. B *2(atxfer) call C, C ringing (no answer)
3. B hangup
4. C cancel call
5. Call to B fails because B has reached its call limit.
Because B reached its call limit, it cannot do anything until the transfer it started completes.
Issue 17273
Same scenario as issue 18395 but party B is an FXS port.
Party B cannot do anything until the transfer it started completes. If B goes back off hook before C answers, B hears ringback instead of the expected dialtone.
This addresses bugs 17273, 17999 and 18395.
https://issues.asterisk.org/view.php?id=17273
https://issues.asterisk.org/view.php?id=17999
https://issues.asterisk.org/view.php?id=18395
Diffs (updated)
-----
/branches/1.6.2/main/features.c 302003
Diff: https://reviewboard.asterisk.org/r/1047/diff
Testing
-------
Party A - transferee
Party B - transferer
Party C - target of transfer
A and B are connected (It does not matter who called whom for these tests.)
B requests attended transfer feature by dialing *2 feature.
B fails to dial party C (Check A & B audio)
B dials wrong number (Check A & B audio)
B cancels call to party C with '*' (Check A & B audio)
C is the parking extension (Outside the scope of this patch)
C does not answer before timeout (Check A & B audio)
C is busy (Check A & B audio)
A hangs up before C answers (Check if A is completely released)
(If A is an analog port it is dead until the user
configured xferfailsound completes playing.)
(Test case is issue 17273 and issue 18395 related)
C answers before B hangup (Attended transfer)
A still online
C hangs up first (Check A & B audio)
B hangs up first (Check A & C audio)
A hangs up (Check if A is completely released)
(If A is an analog port it is dead until B or C hangs up)
(Test case is issue 17273 and issue 18395 related)
C hangs up first (Check B audio)
B hangs up first (Check C audio)
B hangs up before C answers (Blonde transfer) (Check if B is completely released)
(Test case is issue 17273 and issue 18395)
A hangs up (C should quit ringing immediately)
(Test case is issue 17999)
C answers (Check A & C audio)
C does not answer before timeout
A hangs up when B redialed (B should quit ringing immediately)
(Test case is issue 17999 related)
B answers recall (Check A & B audio)
A hangs up when sleeping before redialing C (A should be released immediately)
(Test case is issue 17999 related)
A hangs up when C redialed (C should quit ringing immediately)
(Test case is issue 17999 related)
C answers recall (Check A & C audio)
Noone answers (Check A audio)
Tests passed with exceptions noted.
Thanks,
rmudgett
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.digium.com/pipermail/asterisk-dev/attachments/20110115/62f436f9/attachment.htm>
More information about the asterisk-dev
mailing list