Bonjour,

Je voudrais dévelloper une application windows qui lance un appel sur la plateforme Lync et agit en fonction des messages reçu dans le chat.
La partie appel et envoi de IM (instant message) ne posent pas de problème, par contre impossible de recevoir le moindre message (l'évenement ne s'active pas) et donc impossible de l'interpreter.
J'ai pourtant simplement copier coller l'example de MSDN...

Quelqu'un pour m'aider ?
D'avance merci !

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
 
 
    public class AppelLync
    {
        public static Conversation _Conversation;
        public static LyncClient _LyncClient;
        public Contact _Contact;
        //self participant's AvModality
        private AVModality avModality;
        //self participant's channels
        private VideoChannel videoChannel;
 
        public AppelLync(string contact)
        {
            bool Sortir = false;
            _LyncClient = LyncClient.GetClient(); //Utilise l'user connecté sur l'ordinateur
 
                _Conversation = _LyncClient.ConversationManager.AddConversation(); // Crée la conversation
                _Contact = _LyncClient.ContactManager.GetContactByUri(contact); // Crée le contact
                _Conversation.AddParticipant(_Contact); //Ajoute le contact à la conversation
                avModality = (AVModality)_Conversation.Modalities[ModalityTypes.AudioVideo];
                videoChannel = avModality.VideoChannel;
                videoChannel.BeginStart(null, null); //Démare la conversation audio et vidéo. Elle ne s'arrêtera que lorsque le contact racrochera.
                ((InstantMessageModality)_Conversation.Modalities[ModalityTypes.InstantMessage]).BeginSendMessage("Tapé V pour faire quelquechose", null, null);
 
 
            if (_Conversation.Modalities.ContainsKey(ModalityTypes.InstantMessage))
            {
                ((InstantMessageModality)_Conversation.Modalities[ModalityTypes.InstantMessage]).InstantMessageReceived += myInstantMessageModality_MessageReceived;
            }
        }
 
        void myInstantMessageModality_MessageReceived(Object source, MessageSentEventArgs data)
        {
            IDictionary<InstantMessageContentType, string> messageFormatProperty = data.Contents;
            if (messageFormatProperty.ContainsKey(InstantMessageContentType.PlainText))
            {
                string outVal = string.Empty;
                string Sender = (string)((InstantMessageModality)source).Participant.Contact.GetContactInformation(ContactInformationType.DisplayName);
                if (messageFormatProperty.TryGetValue(InstantMessageContentType.PlainText, out outVal))
                {
                    //outVal will be an empty string if the received message contains only an image.
                    Faire quelque chose
                    //invoke delegate that sets text property of a form browser control with outVal
                }
            }
        }
    }