Question

Dans un environnement Windows / IE avec les bons réglages, vous pouvez lancer un fichier .exe.

Le code suivant fonctionne très bien au feu jusqu'à Microsoft Lync (le nouveau nom pour 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>

Mais je ne peux pas travailler les paramètres (ou s'il est possible) pour créer un raccourci qui ouvrirait le client Lync avec la boîte de chat à un autre open utilisateur disponible. En fait, je sais qui est disponible et je veux être en mesure de créer (en HTML) un lien simple qui ouvrirait une fenêtre de chat à cette personne (en dehors de WPF ou Silverlight ou tout intégré dans les contrôles).

Est-ce que quelqu'un sait comment régler cette ligne dans le javascript pour ouvrir une fenêtre de chat Lync à un contact spécifié?

objShell.ShellExecute("communicator.exe", "", "C:\Program Files (x86)\Microsoft Lync", "open", 10);

Ou s'il y a une autre façon d'ouvrir Lync en mode conversation via une sorte de raccourci?

Je vous remercie à l'avance.

Était-ce utile?

La solution

En fonction de vos besoins, le plus facile est d'utiliser l'existant NameCtrl menu persona - c'est le menu contextuel qui obtient affiché dans SharePoint (et d'autres applications basées sur le Web comme Dynamics CRM) en vol stationnaire sur une icône de présence des utilisateurs. Ce menu vous permet d'appeler l'utilisateur, démarrer une conversation, etc. Vous auriez besoin d'Office est installé sur la machine que vous utilisez dans l'ordre pour que cela fonctionne.

À titre d'exemple, essayez ceci sur une machine cliente exécutant Office 2007/2010 et IE. Survoler la « Votre contact » texte pour voir le menu Persona:

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

Autres conseils

Si la réponse NameCtrl ne répond pas à vos besoins, vous pouvez essayer le Lync SDK . Il serait assez simple de créer une DLL .NET qui utilise l'API d'automatisation pour ouvrir une conversation avec un utilisateur donné.

Il vous faudrait alors d'exposer ce via COM pour s'assurer qu'il pourrait être appelé à partir de JavaScript. Encore une fois, assez simple en utilisant COM dispose d'Interop de .NET.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top