Skype for Business - Response group SIP headers

2019-08-10 08:05发布

问题:

We are running Skype For Business 2015 with EnterpriseVoice and want to allow calls coming through response group queues to be forwarded to mobile phones. We have developed a small app / service to facilitate that through replacement of SIP header names and values according to documentation in

http://blog.greenl.ee/2011/12/30/modifying-sip-headers-managed-sip-application-api/ http://blog.greenl.ee/2013/12/16/response-groups-call-forwarding/.

The replacement seems to work flawlessly, but Skype server still identifies the call as a ‘Team call’ and doesn’t perform simultaneous ring or forward. Our suspicion is that we replace wrong header details or just one of several needed for S4B to identify the call as a personal call.

Can anyone shed some light on Skype logic regarding this? Which headers control the Personal / Team call identification? What are correct Name / Value pairs to replace and with what?

There is already a similar post regarding this, but is't about Lync Enabling call forwarding for Lync response group

回答1:

You are talking about 2 different concepts here:

  1. Call forwarding control

As said by the linked question, Ms-Sensitivity or Ms-Target-Class headers are controll if call forwarding is disabled.

So if you want to disable call forwarding to any call, you can add either:

request.AllHeaders.Add(new Header(Header.StandardHeaderType.MSTargetClass, "Secondary"));

or

request.AllHeaders.Add(new Header("ms-sensitivity", "Private-no-diversion"));

and you will disable the call forwarding.

If you want to enable call forwarding, remove the headers (as per the Greenlee blog post).

  1. Lync Client Call presentation

This is controlled by the ms-retarget-reason parameter in the History-Info header.

For response group calls uses a value of acd.

Values that display Call For can be:

  • acd - Displays Call For and excepts the call to be transferred after call establised.
  • delegation - Displays Call For.

If you want to remove the Call For display you need to remove the History-Info headers.

The Transferred By display is controlled by the Referred-By header.

If you want to control the names display in the Call For or Transferred By display, you can't from the SIP message. The lync client looks up and displays the information from a lync contact from the sip address. If there is no lync contact, it will only display the sip address only.