Skype for Business - 响应组SIP标头

时间:2015-12-02 09:38:03

标签: sip skype skype-for-business

我们正在使用EnterpriseVoice运行Skype For Business 2015,并希望允许通过响应组队列的呼叫转发到移动电话。 我们已根据

中的文档开发了一个小型应用程序/服务,以便通过替换SIP标头名称和值来实现这一点

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/

替换似乎完美无缺,但Skype服务器仍将该呼叫识别为“团队呼叫”,并且不会同时执行响铃或转发。 我们怀疑是我们更换了错误的标题详细信息,或者仅仅是S4B将呼叫识别为个人呼叫所需的其中一个。

任何人都可以对Skype逻辑有所了解吗? 哪些标题控制个人/团队呼叫识别? 什么是正确的名称/值对要替换和用什么?

关于这一点,已经有类似的帖子,但是关于Lync Enabling call forwarding for Lync response group

1 个答案:

答案 0 :(得分:1)

你在这里谈论两个不同的概念:

  1. 呼叫前转控制
  2. 如链接问题所述,如果禁用呼叫转接,则 public class MapActivity extends AppCompatActivity { final private int MIN_ZOOM_LEVEL = 0; final private int MAX_ZOOM_LEVEL = 14; final private int TILE_SIZE = 256; final private String IMAGE_EXTENSION = ".jpg"; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar); setSupportActionBar(toolbar); CustomTileSource tileSource = new CustomTileSource ("Default", MIN_ZOOM_LEVEL, MAX_ZOOM_LEVEL, TILE_SIZE, IMAGE_EXTENSION, CustomTileSource.TILE_URL); final MapView mapView = (MapView) findViewById(R.id.mapview); mapView.setTileSource(tileSource); // mapView.setTileSource(TileSourceFactory.MAPNIK); mapView.setUseDataConnection(false); // keeps the mapView from loading online tiles using network connection. } } public class CustomTileSource extends OnlineTileSourceBase { public static String[] TILE_URL = {"my_url"}; public CustomTileSource (String aName, int aZoomMinLevel, int aZoomMaxLevel, int aTileSizePixels, String aImageFilenameEnding, String[] urlArray) { super( aName, aZoomMinLevel, aZoomMaxLevel, aTileSizePixels, aImageFilenameEnding, urlArray); } // returns the url for each tile, depending on zoom level // this is where I changed the return statement to take the first url from the string array of urls @Override public String getTileURLString(MapTile aTile) { return TILE_URL[0] + aTile.getX() + "+" + aTile.getY() + "+" + aTile.getZoomLevel(); } } Ms-Sensitivity标头可以控制。

    因此,如果要禁用任何呼叫的呼叫转移,您可以添加:

    Ms-Target-Class

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

    您将禁用呼叫转移。

    如果您要启用呼叫转移,请删除标题(根据Greenlee博客post)。

    1. Lync客户端呼叫演示
    2. 这由History-Info标题中的request.AllHeaders.Add(new Header("ms-sensitivity", "Private-no-diversion")); 参数控制。

      对于响应组调用,使用值ms-retarget-reason

      显示acd的值可以是:

      • Call For - 显示acd并排除呼叫建立后转接的电话。
      • Call For - 显示delegation

      如果您要删除Call For显示,则需要删除Call For标题。

      History-Info显示由Transferred By标题控制。

      如果要控制Referred-ByCall For显示中显示的名称,则无法从SIP消息中进行控制。 lync客户端查找并显示来自SIP地址的lync联系人的信息。如果没有lync联系,它将仅显示sip地址。