【发布时间】:2016-07-04 09:02:33
【问题描述】:
我是 Lync 集成和开发的新手。
我正在尝试编写一项功能,以允许现有桌面 WPF 业务线应用程序与运行该应用程序的本地 Intranet 上的另一个用户启动 Lync 对话。
我面临的困难是应用程序不会预先知道用户 PC 上安装了哪个版本的 Lync 客户端。该应用程序部署在各种组织中,因此无法对客户端或服务器端版本做出假设。
在此阶段,应用程序将尝试使用快捷方式 SIP 启动它可以在 PC 上找到的任何版本的 Lync 可执行文件,如下所示: https://technet.microsoft.com/en-us/library/gg398376(v=ocs.14).aspx
“您可以使用命令行参数快速启动 Microsoft Lync”
我也在考虑 UCMA(服务器端)API,尽管我担心我将不得不再次担心正在运行的服务器版本。
有没有更好的“与版本无关”的方法?
客户端SDK的每个版本似乎都与以前的版本不兼容。这意味着我需要首先检测安装的 Lync 版本;然后使用适当的 SDK。这也意味着分发多个 Lync SDK 副本;并且还可能意味着需要在后续版本的 Lync 发布时创建应用程序的新版本。
我确实注意到可能有一个服务器端 API (UCMA),我可以在不同版本的 Lync/OCS/Skype for Business 中使用它,尽管有人提到这个 API 更“先进”并且是“应该避免”。
我读过的一些书:
what are difference between "Lync Server 2010 SDK" / "UCMA 3.0 SDK" / and UCC API?
http://blog.thoughtstuff.co.uk/2014/07/lync-development-picking-the-right-api/
Which Lync SDK? Send IMs from managed code
任何人都可以分享关于这个问题的任何想法,我错过了什么吗?
理想情况下,我想要某种抽象层,我可以在其中调用一个方法来开始对话,而不用担心 PC 上安装了什么客户端或服务器上安装了什么版本。我意识到这可能是一个不切实际的期望!
我尝试过在 Lync 标签上搜索 SO;如果这是一个重复的问题,对不起!
【问题讨论】:
-
现在我决定以 Lync 2010 客户端 SDK 为目标,但仍然希望有任何意见
-
听起来您正在尝试将 LOB 应用程序的用户与支持或外部用户联系起来。一般建议是考虑 UCMA,因为它可以在 Lync 2010、2013 等中使用,您可以考虑将其用作 LOB 用户和支持用户之间的中间人,但这需要在服务器端安装 UCMA 应用程序.
-
感谢 @ShelbyZ - 它位于 Active Directory 林中排列的一组组织内的用户之间 - 多个域和多个版本的 Lync 安装在不同的位置
-
我想你可以从几个方面来看待它。如果所有用户/域/等之间存在联合,那么您可以找到一台服务器并部署 UCMA 应用程序,因为它将像 Lync/Skype for Business 用户一样工作,并且能够与参与联合的任何人交谈(只需要 1 个部署)。如果用户/域/等之间没有或有限的联合,那么您将受到部署 N 次的摆布(其中 N 是接触所有用户所需的最小数量)。
-
在无/受限联合方案中,是否仍然可以在给定多个 UCMA 服务器端部署的情况下跨域传播用户之间的对话?
标签: wpf lync skype-for-business ucma ucwa