On Thu, Aug 4, 2016 at 11:12 AM, Ryan Rittgarn <[email protected]> wrote:
> Hi Everyone, long time reader, first time poster in this particular > thread. I'm one of the holdouts still using chan_sip for day to day uses as > I have too many applications and implementations that rely on it. That > being said I think I have found a bug, but am not sure the best way to go > about isolating it to specific code changes, but I'd love to help any way I > can. > > We recently (today) just upgraded a test box from 13.4 to 13.10. We > process inbound calls through app_queue and then use one of our apps that > issues a redirect via AMI to direct the channel to a parking extension, or > more specifically an extension in dialplan that calls the Park() > application. Up until now our behavior was such that when an agent of the > queue parked the call, the agent's channel would be destroyed upon parking > (as expected) and the caller's channel would show bridged with app_park in > core show channels. Now as part of our application also keeps tabs on who > is on the phone via AMI events, we noticed that when a call comes in > through the queue, the original agent's channel stays up until caller is > done with the call and hangs up. We use the queues for our triage people, > and then pass through to support staff via picking up parked calls, so some > of these calls can be lengthy. Upon further investigation doing core show > channels I show that the original agent's channel still shows up, but I > cannot issue the channel request hangup command without error. It tab > completes and everything to the full channel, but when I hit enter, I get a > 'not found' message. > That agent channel hanging around sounds like a channel ref leak or something still has a reference to the channel that they won't let go until the call the agent channel was involved with hangs up. (You actually confirm this in your description.) I expect that the lingering channel has already been hung up since you got a channel not found when you tried to hang it up. The channel is still visible in the stasis channel cache because a reference to the channel still exists but the channel is actually hung up. I suspect that it is app_queue that has the lingering channel reference for its queue_log. Richard
-- _____________________________________________________________________ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- asterisk-dev mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-dev
