Summary: | ASTERISK-10765: Answering local channel does not remove it from call path | ||
Reporter: | Jon Webster (jon) | Labels: | |
Date Opened: | 2007-11-14 12:57:33.000-0600 | Date Closed: | 2007-11-19 09:24:51.000-0600 |
Priority: | Minor | Regression? | No |
Status: | Closed/Complete | Components: | Channels/chan_local |
Versions: | Frequency of Occurrence | ||
Related Issues: | |||
Environment: | Attachments: | ||
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@elephant-support2:10] NoOp("Local/support@elephant-support2-9ad7,1", "Called Party...") in new stack -- Executing [s@elephant-support2:11] Answer("Local/support@elephant-support2-9ad7,1", "") in new stack -- Executing [s@elephant-support2:12] NoOp("Local/support@elephant-support2-9ad7,1", "") in new stack -- Executing [s@elephant-support2:13] Wait("Local/support@elephant-support2-9ad7,1", ".1") in new stack == Spawn extension (parkedcalls, 700, 1) exited non-zero on 'Local/700@parkedcalls-abe4,2' == Spawn extension (elephant-support2, support, 1) exited non-zero on 'Local/support@elephant-support2-9ad7,2' -- Executing [h@elephant-support2:1] NoOp("Local/support@elephant-support2-9ad7,2", "Channel Hangup: Local/support@elephant-support2-9ad7,2") in new stack -- Executing [s@elephant-support2:14] NoOp("SIP/jon-084024d8", "700") in new stack ****** ADDITIONAL INFORMATION ****** doc/localchannel.txt: If you do not have the "no release" feature set, then as soon as the destination (inside of the Local channel) answers the line, the variables and dial plan will revert back to that of the original call, and the Local channel will become a zombie and be removed from the active channels list. | ||
Comments: | By: Joshua C. Colp (jcolp) 2007-11-19 08:34:51.000-0600 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. By: Digium Subversion (svnbot) 2007-11-19 09:21:55.000-0600 Repository: asterisk Revision: 89416 U branches/1.4/doc/localchannel.txt ------------------------------------------------------------------------ r89416 | file | 2007-11-19 09:21:54 -0600 (Mon, 19 Nov 2007) | 4 lines Clarify documentation a bit, include that a frame has to pass through the core in order for the Local channel optimization to happen. (closes issue ASTERISK-10765) Reported by: jon ------------------------------------------------------------------------ By: Digium Subversion (svnbot) 2007-11-19 09:24:51.000-0600 Repository: asterisk Revision: 89417 _U trunk/ U trunk/doc/tex/localchannel.tex ------------------------------------------------------------------------ r89417 | file | 2007-11-19 09:24:50 -0600 (Mon, 19 Nov 2007) | 12 lines Merged revisions 89416 via svnmerge from https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r89416 | file | 2007-11-19 11:24:12 -0400 (Mon, 19 Nov 2007) | 4 lines Clarify documentation a bit, include that a frame has to pass through the core in order for the Local channel optimization to happen. (closes issue ASTERISK-10765) Reported by: jon ........ ------------------------------------------------------------------------ |