Интегрировать Microsoft Office Communicator 2007 на странице ASP.NET

StackOverflow https://stackoverflow.com/questions/3984514

  •  09-10-2019
  •  | 
  •  

Вопрос

Я работаю над сборкой веб -сайта, используя ASP.NET и C# для Intranet. Так можно интегрировать Microsoft Office Communicator 2007 на странице ASP.NET. т.е. сайт должен иметь возможность обеспечить текущее состояние (доступное, занятое, офлайн) всех контактов, и когда пользователь нажимает на имя пользователя, окно чата должно открыться.

Это было полезно?

Другие советы

Предполагая, что клиентская машина запускает Communicator, Office и IE, безусловно, самый простой способ - использовать Namectrl В скрипте на стороне клиента - пример ниже должен привести основные концепции. Это также даст вам наибольшее количество взрыва с точки зрения функциональности. Наведите текст «Ваш контакт», чтобы увидеть всплывающее меню Persona.

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

Стоит иметь в виду, что решение AJAX/CWA, упомянутое в другом ответе, скорее всего, не будет работать с Lync Server (я считаю, что веб -доступ Communicator больше нет), поэтому вам нужно изменить решение, если ваша компания обновится до Lync. Я проверил решение ниже, и оно работает с RC Lync Server.

<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>
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top