Update CallerID after attended transfer

Example, Incoming external call (party A) is answered by party B (normal sip phone). If party B makes an attended transfer to an WebRTC extension (party C) you see the CallerID from party B in WebRTC. After Party B completed the transfer the CallerID in WebRTC is not updated to party A. Normal Yealink sip phones update the CallerID offered by the PAI Header, it would be nice if the WebRTC clients do the same.

1 Like

It seems that Asterisk doesn’t notify when a session is replaced (attended transfer), please see the following post: Asterix and sip "replaces" header support - #9 by balzor - Asterisk Support - Asterisk Community

In our tests, when completing a transfer, asterisk does not always send a reinvite with the updated Remote Identity/P-Asserted-Identity,

Could you please confirm?

We too have had the same feedback re vitxi and now it seems as of the version 4 vitalpbx migration the same behavior is now happening also with the Polycom VVX desk phones with internal attended transfers. Whereas before the migration to V4, when doing an attended transfer on the Polycom VVX desk phones, once the call was announced and transferred to an internal extensions in V3, the caller ID of the incoming external call was then sent to the extension that the call was transferred to (not the caller ID of the extension transferring the call). Basically when the transfer was completed, the caller ID would update with the external calls caller ID info on the receiving extension. This no longer occurs.

Has anyone else found this change with their desk phones such as the yealink phones mentioned in the thread by mvdvorm? Is there any way to get this function to work again?

I haven’t tested it with attended transfers but I was having the issue of parked calls not getting the original caller id whenever you picked them up, you where just getting the park slot as the caller id. The issue was that on v3 the updates where automatic if you had the pones properly set to use the PAI or RPID but now in v4 it wasn’t working for systems migrated to this new version.

What you need to do to get the previous behavior is enable the SEND CONNECTED LINE option of the default PJSIP device profile. That allows the Caller ID to update while on a call, at least for the parked calls.

1 Like

yup that was it! I enabled this setting and now the caller ID is passing through after the attended transfer! Thank you for your response. Appreciated.

2 Likes

Hello! I wanted to make a note here that this feature wasn’t working out of the box on Yealink T57W and T58W upon an attended transfer, the CID was not properly updating even with “send connected lines” enabled in the device profile.

I found a post online that explained the setting account.x.cid_source = must be set to 6 for this to work. So I edited my template under custom tab as follows and it worked:

account.{{ $loop->iteration }}.cid_source = 6

@russgreco For deskphones (practically all brands) they usually default to getting the caller id directly from the FROM header, so you always have to modify this value in the templates to choose what you want the caller id source to be, this wasn’t mentioned in the post as it was a WebRTC post.

For yealink you get to decide the option you prefer other options other than , also work it really just depends on what the system is sending. Here are the options for yealink and a screenshot from their docs directly

0-FROM
1-PAI
2-PAI-FROM
3-PRID-PAI-FROM
4-PAI-RPID-FROM
5-RPID-FROM
6-PREFERENCE

1 Like