[asterisk-dev] UNHOLD the other channel in a bridge when swapping is completed

Joshua C. Colp jcolp at sangoma.com
Sun Dec 13 04:22:24 CST 2020


On Sun, Dec 13, 2020 at 1:57 AM Ahmed Fouad <afouad at gmail.com> wrote:

> Hi,
>
> I've a situation with remote attended transfer and like to solve it by
> putting the 2nd channel in the bridge in UNHOLD state when swapping is
> completed.
> I started debugging the code with res_pjsip_refer.c: INVITE with Replaces
> being attempted.
>
> I'm running Asterisk certified/16.8-cert3
>
> [Dec 12 12:03:20] DEBUG[10736] res_pjsip_refer.c: INVITE with Replaces
> being attempted.  'PJSIP/XXXX-00000011' --> 'PJSIP/XXXX-0000000e'
> [Dec 12 12:03:20] DEBUG[14235] bridge_channel.c: Bridge
> 883a1d4a-580d-470d-8448-90b2a03b637b: 0x7f305403c998(PJSIP/XXXX-00000011)
> is joining
> [Dec 12 12:03:20] DEBUG[14235] bridge_channel.c: Bridge
> 883a1d4a-580d-470d-8448-90b2a03b637b: pushing
> 0x7f305403c998(PJSIP/XXXX-00000011) by swapping with
> 0x7f305408bea8(PJSIP/XXXX-0000000e)
> [Dec 12 12:03:20] DEBUG[14235] bridge_channel.c: Setting
> 0x7f305408bea8(PJSIP/XXXX-0000000e) state from:0 to:2
> [Dec 12 12:03:20] DEBUG[14235] bridge_channel.c: Bridge
> 883a1d4a-580d-470d-8448-90b2a03b637b: pulling
> 0x7f305408bea8(PJSIP/XXXX-0000000e)
> [Dec 12 12:03:20] VERBOSE[14235] bridge_channel.c: Channel
> PJSIP/XXXX-0000000e left 'simple_bridge' basic-bridge
> <883a1d4a-580d-470d-8448-90b2a03b637b>
> [Dec 12 12:03:20] DEBUG[14235] bridge_channel.c: Bridge
> 883a1d4a-580d-470d-8448-90b2a03b637b: 0x7f305408bea8(PJSIP/XXXX-0000000e)
> is leaving simple_bridge technology
> [Dec 12 12:03:20] VERBOSE[14235] bridge_channel.c: Channel
> PJSIP/XXXX-00000011 swapped with PJSIP/XXXX-0000000e into 'simple_bridge'
> basic-bridge <883a1d4a-580d-470d-8448-90b2a03b637b>
> [Dec 12 12:03:20] DEBUG[14235] bridge_native_rtp.c: Bridge
> '883a1d4a-580d-470d-8448-90b2a03b637b'.  Checking compatability for
> channels '*PJSIP/pstn-0000000f*' and 'PJSIP/XXXX-00000011'
>
> In this step I'd like to make sure that the other channel
> *PJSIP/pstn-0000000f* in the bridge is off hold or put it off-hold.
>
> How can I accomplish it
> ?
>

I believe such things should already happen[1], but if I recall you posted
on the community forum about other code modifications[2]. Have you done
changes in the SDP side? Otherwise you'd need to show exactly what is
happening.

[1]
https://github.com/asterisk/asterisk/blob/certified/16.8/main/bridge.c#L4779
[2]
https://community.asterisk.org/t/chan-pjsip-add-support-for-passing-hold-and-unhold-requests-through/86738

-- 
Joshua C. Colp
Asterisk Technical Lead
Sangoma Technologies
Check us out at www.sangoma.com and www.asterisk.org
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.digium.com/pipermail/asterisk-dev/attachments/20201213/cea31ca7/attachment.html>


More information about the asterisk-dev mailing list