[asterisk-dev] Update caller information on SIP REFER

Gunnar linux at nowin.de
Fri Aug 26 07:35:57 CDT 2011


When doing an attended transfer with function keys on phones (SIP
REFER) and not using Asterisk functions for attended transfer the
caller information doesn't get updated. This has been discussed on
many places, but I want to start again (cause it seems trivial to me).

A calls B
B put A on hold
B calls C
B connects A and C with SIP REFER

Result: A and C have the caller information of B on the display.

There is a function update_connectedline in chan_sip.c. It calls
function add_rpid on a successful transfer. So A and C get's an invite
with "Remote-Party-ID" header.
For testing I modified add_rpid function so it adds an additional
"P-Asserted-Identity" header after adding "Remote-Party-ID". After
this change I see on phone A the caller information of C and on phone
C the caller information of A! Tested with snom and Aastra phone.
Trivial change, but a bad hack I think. Every time a "Remote-Party-ID"
is added I have the "P-Asserted-Identity". Maybe not the best
behaviour in all situations ...
I'm not a big programmer in Asterisk, but my point of view is this:
Change function update_connectedline and set a flag. In function
add_rpid check this flag. If set add additional "P-Asserted-Identity"
header. 

Anyone? Suggestions?


Regards,
Gunnar




More information about the asterisk-dev mailing list