private void OnMessageArrived(object sender, MessageEventArgs e)
 {
     uiThreadDispacher.Dispatch(() =>
         {
             opponentTypingController.HandleIncomingMessage();
             App.ConversationsViewModel.IsDirty = true;
             Messages.Add(MessageViewModelFactory.Create(e.Message));
             //if conversation is opened!
             MarkMessagesAsSeenAsync(new List<Message> { e.Message });
         });
 }
		async void OnMessageArrived (object sender, MessageEventArgs e)
		{
			await OnMessageArrived (e.Message);
		}