[asterisk-dev] Detecting B-leg channels
Nikša Baldun
it at voxdiversa.hr
Tue Aug 24 14:15:28 CDT 2021
Yes, I suspected as much. I've seen that app_dial keeps a list of
outbound channels, but doesn't store it anywhere. So that's a dead end,
pretty much.
On 24. 08. 2021. 20:45, George Joseph wrote:
>
>
> On Tue, Aug 24, 2021 at 12:20 PM Nikša Baldun <it at voxdiversa.hr
> <mailto:it at voxdiversa.hr>> wrote:
>
> I have checked it, and that led me to bridge.c. Perhaps I wasn't
> clear enough. These are the channels involved in attended transfer:
>
> (transferee) <> (transferer1) (transferer2) <> (transfer target)
>
> Transferee and transfer target are not readily available in
> res_pjsip_refer.c, but I can get them in bridge.c, as long as both
> calls are bridged. But transfer target may be in ringing state,
> and in that case there is no bridge whose members I can check.
> Also, there could be multiple ringing channels. So in that case, I
> need a way to get all ringing channels which belong to
> transferrer2 channel. I was wondering if there is an existing
> method for that, or do I have to devise my own.
>
> The only idea which comes to mind is to iterate over all channels
> in the system and compare their LinkedId to transferer2 UniqueId.
>
> Please don't do that. :)
>
> So, Alice (transferee) is on an existing call (channel transferer1),
> she transfers to Bob (transfer target), Asterisk sets up channel
> transferer2 to call Bob and Bob is ringing but hasn't answered yet.
> Right? Optionally, Alice transfers to a "ring group" which causes
> Asterisk to create multiple outbound channels, correct? The only
> place I can think of that knows about this is app_dial.
>
> On 24. 08. 2021. 19:38, George Joseph wrote:
>>
>>
>> On Tue, Aug 24, 2021 at 11:22 AM Nikša Baldun <it at voxdiversa.hr
>> <mailto:it at voxdiversa.hr>> wrote:
>>
>> Hello,
>>
>> I am using chan_pjsip.
>>
>> Check res_pjsip_refer.c you may be able to intercept both
>> channels there.
>>
>> On 24. 08. 2021. 18:55, George Joseph wrote:
>>>
>>>
>>> On Mon, Aug 23, 2021 at 4:29 AM Nikša Baldun
>>> <it at voxdiversa.hr <mailto:it at voxdiversa.hr>> wrote:
>>>
>>> Hello,
>>>
>>> I am trying to modify bridge.c (function
>>> ast_bridge_transfer_attended)
>>> in order to send channels involved in SIP attended
>>> transfer to the
>>> dialplan. If both transferee and transfer target are
>>> bridged, that is
>>> relatively easy. However, if transfer target is ringing,
>>> I don't know
>>> how to find B-leg channels (there could be multiple, I
>>> suppose). So the
>>> question is, having a reference to A-leg channel, how to
>>> obtain a list
>>> of B-leg channels?
>>>
>>> Best regards,
>>>
>>>
>>> Which channel driver are you using?
>>>
>>>
>>> --
>>> _____________________________________________________________________
>>> -- Bandwidth and Colocation Provided by
>>> http://www.api-digital.com <http://www.api-digital.com> --
>>>
>>> asterisk-dev mailing list
>>> To UNSUBSCRIBE or update options visit:
>>> http://lists.digium.com/mailman/listinfo/asterisk-dev
>>> <http://lists.digium.com/mailman/listinfo/asterisk-dev>
>>>
>>>
>> --
>> _____________________________________________________________________
>> -- Bandwidth and Colocation Provided by
>> http://www.api-digital.com <http://www.api-digital.com> --
>>
>> asterisk-dev mailing list
>> To UNSUBSCRIBE or update options visit:
>> http://lists.digium.com/mailman/listinfo/asterisk-dev
>> <http://lists.digium.com/mailman/listinfo/asterisk-dev>
>>
>>
> --
> _____________________________________________________________________
> -- Bandwidth and Colocation Provided by http://www.api-digital.com
> <http://www.api-digital.com> --
>
> asterisk-dev mailing list
> To UNSUBSCRIBE or update options visit:
> http://lists.digium.com/mailman/listinfo/asterisk-dev
> <http://lists.digium.com/mailman/listinfo/asterisk-dev>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.digium.com/pipermail/asterisk-dev/attachments/20210824/2347a665/attachment-0001.html>
More information about the asterisk-dev
mailing list