Domanda

In un ambiente Win / IE con le giuste regolazioni si può sparare un file .exe.

Il seguente codice funziona benissimo al fuoco fino Microsoft Lync (il nuovo nome per 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>

Ma io non riesco a capire i parametri (o se è possibile) per creare un collegamento che avrebbe aperto il client Lync con la finestra della chat ad un altro utente aperto a disposizione. Fondamentalmente io so chi è disponibile e voglio essere in grado di creare (in HTML) un semplice link che avrebbe aperto una finestra di chat a quella persona (al di fuori di WPF o Silverlight o del costruito in controlli).

Qualcuno sa come regolare questa riga nel javascript per aprire una finestra di chat di Lync a un contatto specifico?

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

o se c'è un altro modo per aprire Lync in modalità chat tramite una sorta di scorciatoia?

Grazie in anticipo.

È stato utile?

Soluzione

A seconda delle esigenze, il più facile sarà quello di utilizzare l'esistente NameCtrl menù persona - questo è il menu a comparsa che viene visualizzato in SharePoint (e altre applicazioni web-based come Dynamics CRM) quando si passa sopra l'icona di utenti presenza. Questo menu consente di chiamare l'utente, avviare una nuova conversazione, ecc Avresti bisogno Ufficio installato sulla macchina è in esecuzione su in modo per farlo funzionare.

Per fare un esempio, provate questo su qualsiasi macchina client esegue Office 2007/2010 e IE. Passa il mouse sopra il testo "Il vostro contatto" per visualizzare il 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>

Altri suggerimenti

Se la risposta NameCtrl non soddisfa le vostre esigenze, si potrebbe provare la Lync SDK . Sarebbe piuttosto semplice per creare una DLL .NET che utilizza l'API di automazione per aprire una conversazione con un determinato utente.

Si sarebbe quindi bisogno di esporre questo tramite COM per assicurarsi che potrebbe essere chiamato da JavaScript. Anche in questo caso, piuttosto semplice utilizzando .NET di interoperabilità COM dispone.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top