[asterisk-bugs] [Asterisk 0017613]: After a blind transfer by the calling party the transferees peer cannot be dialed again within the same call

Asterisk Bug Tracker noreply at bugs.digium.com
Mon Nov 8 03:33:41 CST 2010


A NOTE has been added to this issue. 
====================================================================== 
https://issues.asterisk.org/view.php?id=17613 
====================================================================== 
Reported By:                ramonpeek
Assigned To:                
====================================================================== 
Project:                    Asterisk
Issue ID:                   17613
Category:                   Channels/General
Reproducibility:            always
Severity:                   minor
Priority:                   normal
Status:                     acknowledged
Asterisk Version:           1.4.33 
JIRA:                       SWP-1833 
Regression:                 No 
Reviewboard Link:            
SVN Branch (only for SVN checkouts, not tarball releases): N/A 
SVN Revision (number only!):  
Request Review:              
====================================================================== 
Date Submitted:             2010-07-09 05:38 CDT
Last Modified:              2010-11-08 03:33 CST
====================================================================== 
Summary:                    After a blind transfer by the calling party the
transferees peer cannot be dialed again within the same call
Description: 
After a blind transfer by the calling party the transferees peer cannot be
dialed again within the same call. This ONLY occurs when dialing through a
Local channel.

Asterisk will show this warning on the CLI>

[Jul  9 12:18:37] WARNING[27865]: app_dial.c:1296 dial_exec_full: Skipping
dialing interface 'SIP/401' again since it has already been dialed


NOTE: See steps to reproduce (in advanced view)
====================================================================== 

---------------------------------------------------------------------- 
 (0128684) kaii (reporter) - 2010-11-08 03:33
 https://issues.asterisk.org/view.php?id=17613#c128684 
---------------------------------------------------------------------- 
Another way to reproduce, it hit me while testing several internal call
scenarios:

simple dialplan:
exten => _XX,1(dial),Dial(SIP/${EXTEN})
exten => _XX,dial+101,Busy()

1. SIP/10 dials SIP/20:

    -- Executing [execute_call at macro-internanruf:7]
Dial("SIP/10-00000018", "SIP/20") in new stack
    -- Called 20
    -- SIP/20-00000019 is ringing

2. SIP/20 then sends a 302 redirect ("sip blind transfer") and targets
extension 30:

    -- Got SIP response 302 "Moved Temporarily" back from 10.0.0.149
    -- Now forwarding SIP/10-00000018 to 'Local/30 at internal' (thanks to
SIP/20-00000019)
     -- Executing [30 at internal] Dial("Local/30 at internal-1b8d,2", "SIP/30")
in 
    -- Called 30
    -- SIP/30-00000020 is ringing
    -- Local/30 at internal-1b8d,1 is ringing

3. SIP/30 now wants to redirect back to SIP/20 via 302 redirect and hits
the bug:

    -- Got SIP response 302 "Moved Temporarily" back from 10.0.0.150
    -- Now forwarding SIP/10-00000018 to 'Local/30 at internal' (thanks to
SIP/20-00000019)
     -- Executing [20 at internal] Dial("Local/20 at internal-1b8d,2", "SIP/20")
in new stack
[Nov  5 16:53:34] WARNING[27403] app_dial.c: Skipping dialing interface
'SIP/20' again since it has already been dialed

It seems, that in case of a SIP 302 "moved temporarily", the redirecting
peer (here: SIP/20) is (incorrectly) not removed from the list of dialed
interfaces.
after the 302 redirect the peer SIP/20 is "not_inuse" again and should be
able to receive this call again.

i quickly worked around this in my setup by disabling the check if a peer
is in the list of dialed_interfaces. i know this is not a general solution. 

Issue History 
Date Modified    Username       Field                    Change               
====================================================================== 
2010-11-08 03:33 kaii           Note Added: 0128684                          
======================================================================




More information about the asterisk-bugs mailing list