Kann ich Office Communicator (Lync 2010) im Chat-Modus?
-
30-09-2019 - |
Frage
In einer Win / IE-Umgebung mit den richtigen Einstellungen können Sie eine EXE-Datei anwerfen.
Der folgende Code läuft gut auf Feuer Microsoft Lync (der neue Name für Office Communicator).
...
<a href="#" onclick="fnShellExecute();">start chat</a>
</body>
</html>
<script type="text/javascript">
function fnShellExecute()
{
var objShell = new ActiveXObject("shell.Application");
objShell.ShellExecute("communicator.exe", "", "C:\Program Files (x86)\Microsoft Lync", "open", 10);
}
</script>
Aber ich kann die Parameter nicht funktioniert (oder wenn es möglich ist), um eine Verknüpfung zu erstellen, die den Lync-Client mit der Chat-Box auf einem anderen verfügbaren Benutzer geöffnet öffnen würden. Im Grunde weiß ich, wer verfügbar ist, und ich möchte in der Lage sein zu erstellen (in HTML) einen einfachen Link, der ein Chat-Fenster zu dieser Person (außerhalb von WPF oder Silverlight oder einer der in Kontrollen gebaut) öffnen würde.
Wer weiß, wie diese Zeile in der Javascript einzustellen, um ein Lync-Chat-Fenster auf einen bestimmten Kontakt zu öffnen?
objShell.ShellExecute("communicator.exe", "", "C:\Program Files (x86)\Microsoft Lync", "open", 10);
Oder wenn es eine andere Art und Weise Lync im Chat-Modus über eine Art von Verknüpfung zu öffnen?
Vielen Dank im Voraus.
Lösung
Je nach Bedarf wird die einfachste der bestehenden NameCtrl persona Menü - das ist das Pop-up-Menü, das in Sharepoint (und anderen Web-basierten Anwendungen wie Dynamics CRM), wenn die Maus über ein Benutzer Anwesenheitssymbol angezeigt wird. In diesem Menü kann Ihnen den Benutzer rufen, ein neues Gespräch starten usw. Sie müssen Office auf dem Rechner installieren Sie auf, dafür zu arbeiten, um ausgeführt werden.
Als Beispiel versuchen, diese auf jedem Client-Rechner Office-2007/2010 und IE ausgeführt wird. Hover über den Text „Ihr Kontakt“ das Persona-Menü zu sehen:
<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>
Andere Tipps
Wenn die NameCtrl Antwort nicht Ihren Anforderungen entsprechen, können Sie die Lync SDK . Es wäre ziemlich einfach sein, um einen .NET-DLL zu erstellen, die die Automation API verwendet, ein Gespräch mit einem bestimmten Benutzer zu öffnen.
Sie würden dann müssen diese belichten über COM zu gewährleisten, ist es von JavaScript aufgerufen werden könnte. Auch hier ist ziemlich einfach mit .NET COM Interop bietet.