When transferring, Local channels(/n) do not released

Hi,

We have next problem in Asterisk 13, version 13.4.0, related with local channels:

extension 8497-100 calls 8497-345 (PBX internal call as Local/8497-345@ctx_Dentrada2/nbm)
or a call enters in a queue with a member which interface is Local/8497-345@ctx_Dentrada2/nbm, as well

A local channel is generated when enters ctx_Dentrada2 context where a dial to 8497-345 extension is done, all extensions are registered in a proxy server
extension 8497-345 transfers the call to 8497-80 extension, connecting with 8497-100 and hangig up 8497-345

The following local channels will not disappear:

Local/8497-345@ctx_Dentrada2-00000002;1
Local/8497-345@ctx_Dentrada2-00000002;2

By keeping these channels, we can not properly manage the status of members in queues, as after
transferring still appear as ‘inuse’ and this member does not ring until the transferred call hangs up.
In Asterisk 1.8.25 this does not happen, and these two channels are released when transferring.

We need ‘/n’ modifier in local channels just for manage member state in queues.

channels list after transferring in an internal call 100–>345----tranfer---->80:

SIP/8497-100-00000006
Local/8497-345@ctx_Dentrada2-00000002;1
Local/8497-345@ctx_Dentrada2-00000002;2
Local/8497-80@ctx_Dentrada2-00000003;1
Local/8497-80@ctx_Dentrada2-00000003;2
SIP/proxy1.invoxcontact.com-0000000b (extension 80 registered in proxy)

Any ideas on how to fix this?

Thank you…

Intended behaviour.

(However, if you are doing a features transfer, the Dial from the Local channel could disable transfers, so that the DTMF propagates back down the local channel.)

The issue refers to sip transfers, not featured…
We found a possible solution thanks to AMI command ‘LocalOptimizeAway’.
Useful in this case, where queue members are Local(/n) and we do not use stateinterface.
Calling manager on hangup attended transfer and releasing local channels…then queue member passes ‘not in use’.

Thanks

Hello
I have the same problem. Can you explain how you used the LocalOptimizeAway ?
thank you and regards
Philippe RITTER