[asterisk-dev] [Code Review] 3913: chan_pjsip: Attended transfer does not update connected line name.

Joshua Colp reviewboard at asterisk.org
Mon Aug 18 12:41:11 CDT 2014


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviewboard.asterisk.org/r/3913/#review13104
-----------------------------------------------------------

Ship it!


Ship It!

- Joshua Colp


On Aug. 15, 2014, 1:55 a.m., rmudgett wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviewboard.asterisk.org/r/3913/
> -----------------------------------------------------------
> 
> (Updated Aug. 15, 2014, 1:55 a.m.)
> 
> 
> Review request for Asterisk Developers.
> 
> 
> Bugs: AFS-98
>     https://issues.asterisk.org/jira/browse/AFS-98
> 
> 
> Repository: Asterisk
> 
> 
> Description
> -------
> 
> A calls B
> B SIP attended transfers to C
> C answers, B and C can see each other's connected line information
> B completes the transfer
> A has number but no name connected line information about C while C has the full information about A
> 
> I examined the incoming and outgoing party id information handling of chan_pjsip and found several issues:
> 
> * Fixed ast_sip_session_create_outgoing() not setting up the configured endpoint id as the new channel's caller id.  This is why party A got default connected line information.
> 
> * Made update_initial_connected_line() use the channel's CALLERID(id) information.  The core, app_dial, or predial routine may have filled in or changed the endpoint caller id information.
> 
> * Fixed chan_pjsip_new() not setting the full party id information available on the caller id and ANI party id.  This includes the configured callerid_tag string and other party id fields.
> 
> * Fixed accessing channel party id information without the channel lock held.
> 
> * Fixed using the effective connected line id without doing a deep copy outside of holding the channel lock.  Shallow copy string pointers can become stale if the channel lock is not held.
> 
> * Made queue_connected_line_update() also update the channel's CALLERID(id) information.  Moving the channel to another bridge would need the information there for the new bridge peer.
> 
> * Fixed off nominal memory leak in update_incoming_connected_line().
> 
> * Added callerid_tag string to party id information from enabled trust_inbound endpoint in caller_id_incoming_request().
> 
> 
> Diffs
> -----
> 
>   /branches/13/res/res_pjsip_session.c 421122 
>   /branches/13/res/res_pjsip_caller_id.c 421122 
>   /branches/13/channels/chan_pjsip.c 421122 
> 
> Diff: https://reviewboard.asterisk.org/r/3913/diff/
> 
> 
> Testing
> -------
> 
> Attended transfer gives correct party id information to all parties involved.
> Blind transfer gives correct party id information to all parties involved.
> 
> 
> Thanks,
> 
> rmudgett
> 
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.digium.com/pipermail/asterisk-dev/attachments/20140818/94802d11/attachment.html>


More information about the asterisk-dev mailing list