2010-11-09 56 views
5

我想將MS Office通信器狀態指示器添加到我的Java應用程序(jsp)中。將MS Office通信器狀態指示器添加到JSP中

+1

如果您對以下答案感到滿意,是否可以將其標記爲已接受,以幫助其他人瀏覽這些問題?乾杯! – 2011-04-21 08:22:15

回答

7

如果你的目標是Windows平臺,最簡單的方法是做所有的客戶端。 只要客戶端運行IE,Office 2003或更高版本以及Communicator 2007或更高版本,就可以使用隨Office分發的ActiveX對象NameCtrl

下面的代碼應該讓你開始:

<script> 

var sipUri = "[email protected]"; 

var nameCtrl = new ActiveXObject('Name.NameCtrl.1'); 
if (nameCtrl.PresenceEnabled) 
{ 
    nameCtrl.OnStatusChange = onStatusChange; 
    nameCtrl.GetStatus(sipUri, "1"); 
} 


function onStatusChange(name, status, id) 
{ 
    // This function is fired when the contacts presence status changes. 
    // In a real world solution, you would want to update an image to reflect the users presence 
    alert(name + ", " + status + ", " + id); 
} 

function ShowOOUI() 
{ 
    nameCtrl.ShowOOUI(sipUri, 0, 15, 15); 
} 

function HideOOUI() 
{ 
    nameCtrl.HideOOUI(); 
} 

</script> 

<span onmouseover="ShowOOUI()" onmouseout="HideOOUI()" style="border-style:solid">Your Contact</span> 

對於現實世界的解決方案,你只需要實現的是,根據被返回的存在狀態變化(圖像即存在泡沫與每個用戶名稱一起顯示)以及圖像集合,以確保您可以將傳入狀態更改映射到相關圖像。