Domanda

Sto lavorando su una build sito web utilizzando ASP.NET e C # per intranet.So della mia azienda è possibile integrare il Microsoft Office Communicator 2007 nella pagina ASP.NET. vale a dire il sito dovrebbe essere in grado di fornire lo stato corrente (avalible, occupato, offline) di tutti i contatti e quando un utente fa clic sul nome utente, la finestra di chat dovrebbe aprire.

Altri suggerimenti

Supponendo che la macchina client è in esecuzione Communicator, Office e IE, di gran lunga il modo più semplice è quello di utilizzare il NameCtrl nello script lato client - l'esempio seguente dovrebbe dà i concetti di base. Questo vi darà anche il maggior successo-per-dollaro in termini di funzionalità. Passa il mouse sopra il testo "Il vostro contatto" per visualizzare il menu pop-up persona.

Per una soluzione mondo reale, si sarebbe solo bisogno di implementare un'immagine che cambia a seconda dello stato presenza che viene restituito (cioè una bolla presenza alla visualizzazione a fianco di ogni nome utenti), e una collezione di SIP URI alle immagini, al fine di garantire è possibile mappare un cambiamento di stato in arrivo per l'immagine in questione.

E 'importante tenere a mente che la soluzione Ajax / CWA di cui l'altra risposta sarà molto probabilmente non lavoro con Lync Server (credo Communicator Web Access non è più) così avresti bisogno di cambiare la soluzione, se i tuoi aggiornamenti azienda a Lync. Ho provato la soluzione qui di seguito, e funziona con il Lync Server RC.

<script>

var sipUri = "your.contact@your.domain.com";

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>
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top