问题标签 [lync-2010]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1131 浏览

c# - 使用 UCMA 3.0 清除已发布的存在

我在受信任的应用程序端点中发布用户存在,但我也想在不再需要时清除此存在。

这样做是终止 UserEndpoint 实例的唯一选择吗?

我正在使用这个代码片段:

其中 user.Endpoint 是该用户的 UserEndpoint,而 user.categories 是 PresenceCategoryWithMetaData 对象的列表。

0 投票
1 回答
1677 浏览

c# - 发布 Lync 2010 用户状态未显示在用户 lync 客户端上

在受信任的应用程序端点中,我必须根据外部存在提供者发布用户状态,我可以这样做(稍后在外部源变为“空闲”时清除它们是一个不同的问题)

但问题是,如果我为用户 A 发布新状态,这不会反映在用户拥有的 Lync 客户端上,尽管其他人都会收到更新。

目前,我正在使用这段代码进行发布:

其中 user.categories 是:

这些类别正在地毯式轰炸存在状态,我只知道我做错了。不可能是这样的……乱七八糟的。

请耐心等待,我是 C#、.NET 和 UCMA 的新手,直到一个月前才接触过它。

0 投票
2 回答
884 浏览

lync-2010 - UCMA 3.0 API 会议错误:收到会议邀请或会议升级请求后无法加入其他会议

我们有一个基于 UCMA 3.0 的应用程序/机器人,可以将最终用户与专家相匹配。它将来自最终用户的传入一对一聊天请求迁移到多用户会议中,然后邀请专家参加由此产生的多用户会议。应用程序本身仍然是会议的参与者。在任何给定时间,我们的应用程序可能会代理多个此类会议,但每个最终用户只有一个。但是,一位专家可能同时参加多个会议。在我们的应用程序日志中,我们偶尔会看到以下异常。

Conference Migration conf call # 63809878 中的错误,地址:sip:xxxxxx@xxx.com;gruu;opaque=app:conf:focus:id:TQRREACE System.InvalidOperationException:收到会议邀请或会议升级请求后无法加入其他会议. 在 Microsoft.Rtc.Collaboration.ConferenceSession.VerifyAndGetConferenceAddress(String meetingUri, String parameterName) 在 Microsoft.Rtc.Collaboration.ConferenceSession.BeginJoinCommon(String meetingUri, ConferenceJoinOptions options, AsyncCallback userCallback, Object state) 在 Microsoft.Rtc.Collaboration.ConferenceSession.BeginJoin (字符串 ConferenceUri,ConferenceJoinOptions 选项,AsyncCallback userCallback,对象状态)在(字符串 A_0,字符串 A_1,字符串 A_2,布尔 A_3,布尔 A_4)

private void CreateAdHohConf(string user1Uri, string user2uri, string subject) { Exception exception = null;

请建议优先考虑可能存在的问题。

0 投票
3 回答
1668 浏览

sdk - 使用 Lync 2010 SDK 创建会议

我知道当 Lync 也安装在计算机上时,我们可以使用 Outlook 创建电话会议。我假设这个插件使用了 Lync SDK。

我应该在哪里查看 SDK 才能创建电话会议,然后检索它的 URL 和其余元数据(使用 Lync 客户端)?

编辑:

我设法创建了新的对话(使用自动化),但我找不到任何方法来创建会议或将对话转换为会议。我注意到有一些会议属性,比如 URI,但它们从未设置过。

0 投票
1 回答
857 浏览

video - 我可以使用 UCMA 3.0 以编程方式建立视频通话吗?

使用 UCMA 3.0 进行视频会议是否可行?

0 投票
1 回答
1272 浏览

c# - Lync 2010 SDK:如何获取用户的语音邮件 URI?

我正在编写一个简单的 C# 应用程序来应答 Lync 呼叫并根据数据库值将其转发到另一个电话号码。这完美无缺。但是,有时我想将呼叫转接到用户的语音信箱。我不知道如何获取语音信箱的 URI :(

假设我在 ConversationAdded 事件的处理程序中。我试过这个:

还:

UC 语音信箱已设置并正常工作。我不确定该术语究竟是什么,但它由 Exchange 处理,并且邮件出现在我的收件箱中。如果我只是让电话响起,它最终会出现在语音邮件中,但我的应用程序知道它应该立即发送到那里,所以我想立即转发它。

0 投票
1 回答
665 浏览

c# - 如何在被 Lync Client API 2010 拒绝后接受传入的视频呼叫?

我正在使用 Lync Client API 2010 实现一个应用程序,该应用程序将允许用户通过它而不是通过 Lync 客户端窗口接受/拒绝 IM/音频/视频 Lync 对话。在大多数情况下,我可以让应用程序按预期工作,但以下情况除外:

  1. 假设账户 LyncA 使用账户 LyncB 发起音频通话
  2. 我的应用程序(安装在运行 LyncB 帐户的 PC 上)通过 ConversationAdded 事件检测到在 LyncB 帐户上创建了一个新的 lync 对话。
  3. 单击我的应用程序上的接受按钮以接受来自 LyncA 的呼叫(然后我的应用程序将调用 AudioVideoModality 的 BeginConnect)。一切都按预期工作。LyncB 接受来自 LyncA 的音频呼叫。
  4. LyncA 单击 Lync 窗口上的视频按钮以将视频添加到对话中。
  5. LyncB 检测到并自动显示视频窗口,无需任何用户交互,视频通道开始传输。
  6. 现在,单击 LyncB 的 Lync 窗口上的结束视频按钮以结束从 LyncA 传输的视频。视频停止,但音频通话仍在继续。
  7. 现在,LyncA 再次单击 Lync 窗口上的视频按钮以将视频添加回对话中。
  8. 这时,LyncB 会弹出一个“Accept/Decline”消息框,询问用户是否允许接受或拒绝视频传输。我的应用程序通过 AudioVideoModality 的事件 ActionAvailabilityChanged 检测到这一点。但是,我的应用程序此时无法使用 Lync API 2010 接受视频传输。我已经尝试了 AudioVideoModality 中的 Accept 方法以及 BeginConnect 方法。还尝试了 AudioVideoModality 中 VideoChannel 的 BeginStart,但仍然无法接受传入的视频传输。在调用 BeginConnect 方法时,它抛出了 UnauthorizedAccessException 异常。

有没有其他人在这里遇到同样的问题?如果您能为我提供一些解决此问题的提示,我们将不胜感激。

谢谢。

0 投票
1 回答
1174 浏览

lync - 用于 Lync 的 UCC API

我需要允许我更改 Lync voip 中的呼叫转移的软件。不存在这样的软件(除了微软自己的客户端),所以我需要自己编写。我有 Visual Studio 2010,但不清楚需要安装哪些 SDK...安装。

我需要从哪里开始?

另外,我一直在研究 UccApi.dll。那里有一个单独的功能可以设置呼叫转移吗?是否有可能只用几个参数运行dll32,并回避将蹩脚的控制台应用程序拼凑在一起的需要?

0 投票
1 回答
857 浏览

c# - Lync:成功调用 BeginStart 后,AVModality.VideoChannel 的 VideoWindows 为空(COMException HRESULT:0x80029C4A TYPE_E_CANTLOADLIBRARY)

我们目前正在尝试将 Lync 通信 (Lync SDK 2010) 合并到我们的应用程序中,但我们遇到了's的VideoWindows( CaptureVideoWindow, RenderVideoWindow) 的问题:它们始终为空,即使在成功调用. 连接肯定建立了。我们可以谈。我们自己的视频显示在远程 Lync 客户端中。是。从到到。AVModalityVideoChannelBeginStartAVModalityStateConnectedVideoChannelStateConnectingReceiveSend

我们何时以及如何尝试访问它们并不重要:直接在 之后BeginStart,在AsyncCallbackBeginStart,响应各种状态变化或响应外部触发(用户点击事件);在主/UI线程或事件/回调线程中。两个视频窗口始终为空。

在示例应用程序“%PROGRAMFILES%\Microsoft Lync\SDK\Samples\AudioVideoConversation”中,一切都按预期工作:一旦BeginStart完成,我们就可以访问非空视频窗口。在我们的小型独立原型项目中,它也可以工作。但在我们的实际应用中,它没有。

我们已经仔细检查了所有内容,对于可能导致此问题的原因我们真的已经没有想法了。

任何想法,任何提示?我们应该注意什么?

(链接到相应的 MSDN 论坛主题)

更新(2012 年 7 月 4 日,欧洲中部时间 15:46):

当我们查看 VideoChannel 的成员时,我们发现“Microsoft.Office.Uc”内部发生了 COMException:加载 DLL 时出错,HRESULT:0x80029C4A (TYPE_E_CANTLOADLIBRARY)。附加截图中的更多细节。

显示异常的调试会话的屏幕截图

我们对此错误进行了一些研究,但没有发现任何对我们有用的东西。任何想法是什么导致异常?

更新(2012 年 7 月 9 日,欧洲中部时间 16:43):

我们做了一些进一步的测试......

我们的软件由一个主应用程序和许多通过MEF加载的类似插件的“应用程序”组成。我们创建了一个进行视频通话的最小测试应用程序:视频窗口不起作用(如预期的那样)。但是,当我们采用相同的代码并在我们的架构之外创建一个单独的解决方案时,它确实起作用了。所以,这是环境的问题,而不是代码的问题。

起初,我们怀疑 MEF 可能是问题所在。因此,我们将 lync 代码侵入到我们的主应用程序中 - 绕过了整个应用程序架构。还是行不通。

然后我们一点一点地切掉我们的整个系统,直到我们最终达到它确实可以工作的地步。经过几次错误的跟踪,我们终于找到了罪魁祸首...... Quartz.NET

出于某种奇怪的原因,仅仅存在对 Quartz.dll v.1.0.3.3 的程序集引用,即使没有一行 Quartz 代码,也会导致视频窗口无法工作。难以置信,但它是 100% 可重现的:如果我们采用前面提到的测试解决方案,除了添加参考之外什么都不做,它就会停止工作。

知道这样的事情怎么可能吗?

0 投票
1 回答
3670 浏览

c# - Lync sdk 自动拨号

我刚开始使用 SDK 使用 Lync API。是否可以使用手机号码呼叫不在联系人列表中的人?这是我的代码(我为此使用自动化):

如果+1 (111) 1111111我的联系人列表中存在有电话的用户,它可以正常工作,但如果用户不存在或者它是我自己的电话号码,那么我无法拨打电话。我没有打电话,而是看到弹出窗口“转接电话”,它允许我从我的联系人列表中手动选择一个人来打电话。

有什么解决办法吗?我只想像使用 MS Lync 桌面客户端一样拨打任何电话号码。