2010-11-09 3 views
5

Я хочу добавить индикатор присутствия коммуникатора MS Office в свое приложение Java (jsp).Добавить индикатор присутствия коммуникатора MS Office в JSP

+1

Если вы удовлетворены приведенным ниже ответом, можете ли вы пометить его как «Принято», чтобы помочь кому-либо еще заняться этими вопросами? Ура! –

ответ

7

Если вы ориентируетесь на платформу Windows, самый простой способ - сделать все на стороне клиента. До тех пор, пока клиенты работают под управлением IE, Office 2003 или выше и Communicator 2007 или выше, вы можете использовать объект ActiveX , который распространяется вместе с Office.

Следующий код должен получить вы начали:

<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> 

Для реального мира решения, вам необходимо реализовать изображение, которое изменяется в зависимости от состояния присутствия, который получает возвращается (т.е. наличие пузырь отображение рядом с именем каждого пользователя) и сборник sip uris для изображений, чтобы вы могли сопоставить изменение входящего статуса с соответствующим изображением.