[asterisk-bugs] [Asterisk 0011246]: Answering local channel does not remove it from call path

noreply at bugs.digium.com noreply at bugs.digium.com
Mon Nov 19 08:34:51 CST 2007


A NOTE has been added to this issue. 
====================================================================== 
http://bugs.digium.com/view.php?id=11246 
====================================================================== 
Reported By:                jon
Assigned To:                
====================================================================== 
Project:                    Asterisk
Issue ID:                   11246
Category:                   Channels/chan_local
Reproducibility:            always
Severity:                   minor
Priority:                   normal
Status:                     new
Asterisk Version:           1.4.13  
SVN Branch (only for SVN checkouts, not tarball releases): N/A  
SVN Revision (number only!):  
Disclaimer on File?:        N/A 
Request Review:              
====================================================================== 
Date Submitted:             11-14-2007 12:57 CST
Last Modified:              11-19-2007 08:34 CST
====================================================================== 
Summary:                    Answering local channel does not remove it from call
path
Description: 
An Answer() doesn't remove local channel from call path but the Wait(.1)
does...

exten => s,10(called),NoOp(Called Party...)                               
      
exten => s,11,Answer() ; get rid of that pesky local channel
exten => s,12,NoOp(${PARKINGEXTEN})
exten => s,13,Wait(.1) ; go away local channel!
exten => s,14,NoOp(${PARKINGEXTEN})


    -- Executing [s at elephant-support2:10]
NoOp("Local/support at elephant-support2-9ad7,1", "Called Party...") in new
stack
    -- Executing [s at elephant-support2:11]
Answer("Local/support at elephant-support2-9ad7,1", "") in new stack
    -- Executing [s at elephant-support2:12]
NoOp("Local/support at elephant-support2-9ad7,1", "") in new stack
    -- Executing [s at elephant-support2:13]
Wait("Local/support at elephant-support2-9ad7,1", ".1") in new stack
  == Spawn extension (parkedcalls, 700, 1) exited non-zero on
'Local/700 at parkedcalls-abe4,2'
  == Spawn extension (elephant-support2, support, 1) exited non-zero on
'Local/support at elephant-support2-9ad7,2'
    -- Executing [h at elephant-support2:1]
NoOp("Local/support at elephant-support2-9ad7,2", "Channel Hangup:
Local/support at elephant-support2-9ad7,2") in new stack
    -- Executing [s at elephant-support2:14] NoOp("SIP/jon-084024d8", "700")
in new stack

====================================================================== 

---------------------------------------------------------------------- 
 file - 11-19-07 08:34  
---------------------------------------------------------------------- 
This is because at least 1 frame of anything must be processed for the
masquerade operation to happen. When you call Wait() it reads and drops the
frames, so 1 frame gets handled. I can't think of any way to overcome this
I fear. 

Issue History 
Date Modified   Username       Field                    Change               
====================================================================== 
11-19-07 08:34  file           Note Added: 0073925                          
======================================================================




More information about the asterisk-bugs mailing list