首页 文章

Skype for Business 2016没有客户端SDK

提问于
浏览
7

我已更新到Skype for Business 2016(Office 2016),我正在开发的桌面应用程序与Lync客户端集成,已经开始抛出异常 .

我猜测SDK版本15.0.4481.100与Skype for Business版本16.0.42.66.1003不兼容,但我找不到比Lync 2013 SDK(2014-03-17)更新的SDK .

Skype for Business 2016的桌面客户端开发是否不像2013年那样受支持?
例外:

Unable to cast COM object of type 'System.__ComObject' to interface type
'Microsoft.Office.Uc.IAudioDevice2'. This operation failed because the QueryInterface call
on the COM component for the interface with IID '{86B3E5FE-4635-4C1E-A725-C80B71D04984}'
failed due to the following error: No such interface supported
(Exception from HRESULT: 0x80004002 (E_NOINTERFACE)).

更新

LyncClient.GetClient( sideBySide ).DeviceManager.AudioDevices

当我遍历音频设备时会发生异常 . 使用嵌入式(UI Supressed)S4B客户端启动和接受呼叫时,sideByside不会 . 我原来问题的答案似乎是肯定的,但并不完全!

3 回答

  • 4

    Lync Client SDK 2013应支持Skype for Business 2016.尚未公布新的客户端SDK .

  • 0

    您可以使用ILyncClient“内部对象”(来自Microsoft.Office.Uc)来解决此问题

    例如:

    static bool SetClientAudioDevice(LyncClient client, string name)
        {
            var innerClient = (ILyncClient)client.InnerObject;
            var deviceManager = innerClient.DeviceManager;
    
            Console.WriteLine("Current audio device: [{0}]", client.DeviceManager.ActiveAudioDevice.Name);
            Console.WriteLine("Lync Client Audio Devices List:");
            var ok = false;
            foreach (var device in deviceManager.AudioDevices.OfType<Microsoft.Office.Uc.AudioDevice>())
            {
                Console.WriteLine("    AudioDevice: [{0}], Active[{1}], ID[{2}], IsCertified[{3}], Priority[{4}], Type[{5}]", device.Name, device.IsActive, device.Id, device.IsCertified, device.Priority, device.Type);
    
                if (device.Name.IndexOf(name, StringComparison.InvariantCultureIgnoreCase) >= 0)
                {
                    Console.WriteLine("        Setting active device!");
                    deviceManager.ActiveAudioDevice = device;
                    ok = true;
                }
            }
            return ok;
        }
    
  • 4

    与Ankit提到的一样,2013 SDK也适用于Skype for Business 2016 .

    要绕过安装限制("Microsoft Lync 2013 not found"),请使用Jon Gallant的建议:http://blog.jongallant.com/2016/08/solution-lync-2013-not-found/

    也就是说,解压缩lyncsdk.exe并手动安装相应的MSI(x86或x64) .

相关问题