如何在lync sdk c#中获取客户的联系方式

How to get client's contact details in lync sdk c#

哪个对象有客户联系信息,如办公室、公司、IM 等。在 Lync SDK 2013 中?我想知道用户(客户)的 location/address 信息。

用户 location/office 信息可以从联系人对象中获取,如下所示:

LyncClient lyncClient = LyncClient.GetClient();
Contact contact = lyncClient.ContactManager.GetContactByUri("sip:contact@organization.com");
String officeLocation = contact.GetContactInformation(ContactInformationType.Office).ToString();

可以使用联系人信息类型个人备注、公司、地点、部门等获取更多信息

除了 Kannan 的回答之外,从联系人那里获取 phone 号码是不同的,需要做更多的工作。操作方法如下:

LyncClient lyncClient = LyncClient.GetClient();
Contact contact = lyncClient.ContactManager.GetContactByUri("sip:contact@organization.com");

List<object> endPoints = new List<object>();
var telephoneNumber = (List<object>)contact.GetContactInformation(ContactInformationType.ContactEndpoints);
endPoints = telephoneNumber.Where<object>(N => ((ContactEndpoint)N).Type == ContactEndpointType.HomePhone || ((ContactEndpoint)N).Type == ContactEndpointType.MobilePhone || ((ContactEndpoint)N).Type == ContactEndpointType.OtherPhone || ((ContactEndpoint)N).Type == ContactEndpointType.WorkPhone).ToList<object>();

foreach (var endPoint in endPoints)
{
    //((ContactEndpoint)endPoint).DisplayName.ToString(); //This is the phone number in string format
}