如果网站在服务器上,Lync在本地用户环境上,我如何获得Lync客户端工作?

本文关键字:Lync 何获得 客户端 工作 服务器 网站 如果 用户 环境 | 更新日期: 2023-09-27 18:18:40

我正在尝试启动Lync会话,该会话似乎正在我的本地环境中工作,这也是安装Microsoft Lync的地方。现在,当我尝试将这段代码移动到托管在服务器上的网站上,然后尝试从我的本地计算机在浏览器上运行这段代码时,它不会运行。我得到错误,"microsoft.Lync.Model.clientNotFoundException"。我猜这是因为它在服务器上寻找Lync客户端,而不是在用户的本地计算机上?如何让它在用户的计算机上查找客户端?谢谢!

using System;
using System.Collections.Generic;
using System.Text;
using Microsoft.Lync.Model.Extensibility;
using Microsoft.Lync.Model;
namespace PlusLyncDial
{
    public class LyncDial
    {        
        public static void DialNumber(string number)
        {
            number = number.Trim();
            if(number[0]!='1')
            {
                number = "1" + number;
            }
            List<string> participants = new List<string>();
            participants.Add("tel:+" + number);
            LyncClient.GetClient();
            // Start the conversation.
            LyncClient.GetAutomation().BeginStartConversation(
                AutomationModalities.Audio,
                participants,
                null,
                (ar) =>
                {
                    try
                    {
                        ConversationWindow newWindow = LyncClient.GetAutomation().EndStartConversation(ar);
                    }
                    catch { }
                },
                null);
        }
    }  
}

如果网站在服务器上,Lync在本地用户环境上,我如何获得Lync客户端工作?

无法从服务器控制用户的Lync客户端。如果您想让用户的客户端发起呼叫,创建一个带有tel:前缀的超链接:

<a href="tel:+9900032etc">Click to call</a>

当用户单击此链接时,浏览器调用电话链接的处理程序,该处理程序应该是用户的Lync客户端(或skype,或当用户使用移动电话浏览时的移动电话)。

正如威廉指出的那样,你不能直接从另一台机器影响Lync客户端。如果您想代表用户发起呼叫,您可以使用基于UCMA的(基于服务器的)应用程序来创建呼叫并酌情添加参与者。

UCMA SDK可从http://www.microsoft.com/en-us/download/details.aspx?id=10566