Office communicator est le logiciel de gestion de communications unifiées signé Microsoft.
Ci-dessous, un exemple de code qui vous montre comment exploiter les Api Office Communicator pour obtenir des informations sur les personnes qui vous appel et les afficher sur la console.
A partir des informations sur le contact qui vous appel, on peut imaginer une infinité de possibilités :
- Ouvrir les mails de cette personne,
- Afficher l’historique des appels,
- Ouvrir une fiche dans un CRM,
- Etc...
class OCSHookUp { CommunicatorAPI.Messenger comm = null; static void Main(string[] args) { OCSHookUp hu = new OCSHookUp(); hu.InitEvents(); Console.ReadKey(); } public void InitEvents() { comm = new CommunicatorAPI.Messenger(); comm.OnIMWindowCreated += new CommunicatorAPI.DMessengerEvents_OnIMWindowCreatedEventHandler(comm_OnIMWindowCreated); comm.OnIMWindowDestroyed += new CommunicatorAPI.DMessengerEvents_OnIMWindowDestroyedEventHandler(comm_OnIMWindowDestroyed); } void comm_OnIMWindowCreated(object pIMWindow) { CommunicatorAPI.IMessengerConversationWndAdvanced stpIMWindow = pIMWindow as CommunicatorAPI.IMessengerConversationWndAdvanced; long Hwnd = (long)stpIMWindow.HWND; Console.WriteLine("Nouvelle fenêtre OCS crée : {0}", Hwnd); //Listing Frindly name of the caller. CommunicatorAPI.IMessengerContacts contactList = (CommunicatorAPI.IMessengerContacts)stpIMWindow.Contacts; StringBuilder sb = new StringBuilder(); foreach (CommunicatorAPI.IMessengerContact imc in contactList) { sb.Append(imc.FriendlyName); sb.Append(Environment.NewLine); } Console.WriteLine(sb.ToString()); } void comm_OnIMWindowDestroyed(object pIMWindow) { Console.WriteLine("Fenêtre détruite."); } }
Pour que cela fonctionne correctement, vous devrez ajouter une référence aux Dll suivantes :
Pour cela ajoutez une référence au fichier "C:\Program Files\Microsoft Office Communicator\communicator.exe"