2017-08-10 41 views
1

我是Lync开发人员的新手。我有一个简单的要求,即可获取发布到我的API的所有Lync呼叫的状态,这些呼叫在Lync Server上正在进行。总之,我需要事件挂钩的电话。获取UCMA中所有呼叫的状态 - Skype

我看到UCMA通常用于路由IVR后的电话,所以我认为让所有的呼叫公正地位的不应该是一个问题,但找不到它周围的任何文件。我还研究了可信应用程序API,但找不到任何可以让我挂接所有呼叫状态的服务。

如果这些状况可以从Skype客户端发送,这将是罚款,以及,但我并不需要使用客户端SDK在我的代码,我只是想为来电一些事件挂钩。

请让我知道这是否可能。

+0

您是否正在创建在Lync服务器应用程序池中运行的“可信应用程序”?如果是这样,UCMA是您唯一的选择。如果您要创建在您自己的服务器上运行并与Skype for Business服务器或Skype for Business Online进行交互的应用程序,则可以使用UCWA(https://msdn.microsoft.com/zh-cn/skype/ucwa/unifiedcommunicationswebapi2_0)API –

回答

0

首先,我们需要确定这些东西是什么:

UCMA:SIP终端库为Lync。即它允许你提供一个可以结束呼叫的“端点”。对于特定的终端,您将获得sip呼叫事件,如来电,已接电话(仅在您的终端上)等。

Lync客户端:用于Lync客户端的远程控制库。即它用于控制正在运行的Lync Client。

所以,如果你想跟踪由UCMA端点正在处理之间的呼叫,那么你需要处理来电,并跟踪他们,那么是的,使用正常的呼叫处理处理呼叫和跟踪它们。

如果您想跟踪仅处理特定Lync客户端的呼叫,那么您可以使用Lync Client API来跟踪它们。当来电和来电时,很容易就可以与对话管理员联系并获得相关事件。

如果您希望跟踪特定Lync用户(或多个用户)的所有实时呼叫,当它真的很难实现时。您需要编写一个Lync Server SDK应用程序,该应用程序在用户所在的所有FrontEnd服务器上作为SIP代理运行。为了做到这一点,你对SIP的理解需要非常好。此外它不能移动到Office365。您可以进行“简单”跟踪,但您会遇到很多情况,例如有一些用户误会您的电话(例如直接拨打DDI电话),或者拨打非实际用户的用户(会议呼叫由用户例如)。我想你也可以使用Skype SDN (Software Defined Networking) API。我从来没有使用这个API,所以我不知道它是如何参与的。

如果你只是想知道为Lync用户的通话清单,他们并不需要“活”的,那么你可以使用呼叫详细记录(CDR)数据库他们发生后跟踪服务。

这些都是我在Lync/Skype for Business中所了解的所有选项。