在ASP.NET页面中集成Microsoft Office Communicator 2007
-
09-10-2019 - |
题
我正在使用ASP.NET和C#为我的公司的Intranet进行网站构建。因此,可以将Microsoft Office Communicator 2007集成在ASP.NET页面中。即该网站应该能够提供所有联系人的当前状态(可用,忙碌,离线),当用户单击用户名时,聊天窗口应打开。
其他提示
假设客户端计算机正在运行Communicator,Office和IE,到目前为止,最简单的方法是使用 namectrl 在客户端脚本中 - 下面的示例应给出基本概念。就功能而言,这也将为您提供最大的爆炸。悬停在“您的联系人”文本上,以查看弹出的角色菜单。
对于真实世界的解决方案,您只需要实现一个图像,该图像取决于返回的存在状态(例如,在每个用户名称并肩显示的存在泡沫)和sip uris的集合到图像,以确保您可以将传入状态更改映射到相关图像。
值得一提的是,另一个答案中提到的AJAX/CWA解决方案很可能无法与Lync Server一起使用(我相信Communicator Web访问已不再使用),因此,如果您的公司升级到Lync,则需要更改解决方案。我已经测试了下面的解决方案,并且可以与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>
不隶属于 StackOverflow