public void SendMessage(Interlocutor interlocutor, Message message) { var outMessage = new agsXMPP.protocol.client.Message(); outMessage.To = XmppIdConverter.Convert(interlocutor.Id); outMessage.Body = message.Body; outMessage.Type = agsXMPP.protocol.client.MessageType.chat; _connection.Send(outMessage); message.From = Client.Id; message.To = interlocutor.Id; message.Date = DateTime.Now; interlocutor.History.Add(message); }
private void OnMessage(object sender, agsXMPP.protocol.client.Message msg) { var interlocutor = _client.Contacts.SingleOrDefault(contact => contact.Id == XmppIdConverter.Convert(msg.From)); if (interlocutor == null || string.IsNullOrEmpty(msg.Body)) { return; } interlocutor.History.Add(new Message { Body = msg.Body, Date = DateTime.Now, From = interlocutor.Id, To = Client.Id, Type = interlocutor.ImName == RESOURCE_NAME ? MessageType.Xaml : MessageType.Text }); interlocutor.HasUnreadMessages = true; }