2012-04-05 106 views
1

我試圖通過以下方法確認電子郵件地址是否爲有效的Lync用戶,但它沒有給出正確的結果。如何檢查電子郵件地址是否有效Lync用戶?

LyncClient client = LyncClient.GetClient(); 
Contact contact = client.ContactManager.GetContactByUri("[email protected]"); 

方法一:

if(contact.UnifiedCommunicationType == UnifiedCommunicationType.Enabled) 
{ 
} 
else if(contact.UnifiedCommunicationType == UnifiedCommunicationType.NotEnabled) 
{ 
} 
else if(contact.UnifiedCommunicationType == UnifiedCommunicationType.Unknown) 
{ 
} 

在這種方法中,我得到任何未知的隨機電子郵件地址和NotEnabled一個有效的Lync用戶。但是,Iam沒有得到「無效」。

方法2:

ContactType contact_type =       (ContactType)contact.GetContactInfomration(ContactInformationType.ContactType); 

if(contact_type == ContactType.Person) 
{ 
} 
else if(contact_type == ContactType.Invalid) 
{ 
} 
else if(contact_type == ContactType.Unknown) 
{ 
} 

在這種方法中,我得到 「人」 無論EMAILADDRESS的。因此,我不這樣做。

你能請教我如何做到這一點?

注意:我想要做的就是檢查傳入電子郵件的發件人Outlook中的 是否爲有效的lync用戶。

回答

1

最後,我發現,瞭解從電子郵件地址的Lync聯盟域的方式。

訣竅是與nslookup SRV記錄爲「_sipfederationtls._tcp.domainname」

請找C#代碼here

0

您是否嘗試過使用格式「sip:[email protected]」作爲電子郵件地址 - 因爲它正在對SIP地址進行查找,而不是電子郵件地址。

MSDN這裏有一個例子:http://msdn.microsoft.com/en-us/library/hh378561.aspx

+0

我後期的答覆遺憾,但加入 「SIP:」 來當我嘗試使用上述兩種方法時,電子郵件地址與結果沒有任何區別。有沒有辦法檢查SRV記錄?(我不確定) – Coder323 2012-04-10 01:44:42

相關問題