我应该为 Skype for Business 服务器应用程序使用 UCWA 或 UCMA 或另一个 API 吗?

Should I use UCWA or UCMA or another API for a Skype for Business Server Application?

Skype for Business 似乎有很多不同的 SDK/API。我很难破译哪一个适合服务器端 Bot 之类的应用程序,该应用程序可以将域特定信息传达给组织内的用户。例如,我们希望能够通过消息传递任务并执行基于状态的任务分配。这似乎是一个相当容易实现的目标,但实现这一目标的 REST 端点和文档在哪里。例如,假设我想创建一个可以促进此操作的小型控制台应用程序,您会推荐什么 API?

我觉得UCMA和UCWA都可以用。但是,考虑到您需要一个服务器应用程序,UCWA 似乎适合这种情况。以下是 SDK 的详细信息,您可以在此处找到代码示例: https://msdn.microsoft.com/en-us/library/office/mt650889(v=office.16).aspx

以下是 UCMA 和 UCWA 之间的主要区别:

  • UCMA is a .NET SDK that provides rich control over a Skype for Business server deployment. It enables applications to automatically route calls and messages, provide automatic responses (IVR or chat bots), record conversations etc. It can be used in a number of scenarios such as a 'contact center' application that distributes incoming calls to an available agent with the right skillset. UCMA applications are managed by running them on application servers that are activated 作为 Skype for Business 服务器部署的一部分。因此,UCMA 不适用于 Skype for Business Online (Office 365)。

  • UCWA is a RESTful Web API that acts on behalf of a single Skype for Business user. It enables applications to send and receive messages for that user, read presence for their contacts, etc. Typically it is used for interactive "line of business" applications that want to embed Skype for Business messaging/presence. It is also possible to create a 'technical account', that doesn't correspond to a real person, and use UCWA in 'headless' server applications but this approach currently has authentication and scalability limitations. UCWA applications have no deployment constraints since UCWA is a regular RESTful Web API. It is available for both Skype for Business Server (get started) and for Skype for Business Online (get started). The latter has slightly fewer capabilities 现在:- 例如,消息可以发送但不能接收 - 尽管这应该很快就会改变。