Example #1
0
        public async Task <List <MessageListResponse> > GetMessageThread(int userId, int recipientId)
        {
            if (userId != _userAccessor.getCurrentUserId())
            {
                throw new RestException(HttpStatusCode.Forbidden);
            }

            var messages = await _repo.GetMessageThread(userId, recipientId);

            return(_mapper.Map <List <MessageListResponse> >(messages));
        }
        public async Task <IActionResult> GetMessageThread(int userId, int recipientId)
        {
            if (userId != int.Parse(User.FindFirst(ClaimTypes.NameIdentifier).Value))
            {
                return(Unauthorized());
            }

            var messagesFromRepo = await _messageRepo.GetMessageThread(userId, recipientId);

            var messageThread = _mapper.Map <IEnumerable <MessageToReturnDto> >(messagesFromRepo);

            return(Ok(messageThread));
        }
Example #3
0
        public override async Task OnConnectedAsync()
        {
            var httpContext = Context.GetHttpContext();
            var otherUser   = httpContext.Request.Query["user"].ToString();
            var groupName   = GetGroupName(Context.User.GetUsername(), otherUser);
            await Groups.AddToGroupAsync(Context.ConnectionId, groupName);

            var group = await AddToGroup(groupName);

            await Clients.Group(groupName).SendAsync("UpdatedGroup", group);

            var messages = await messageRepository.
                           GetMessageThread(Context.User.GetUsername(), otherUser);

            await Clients.Caller.SendAsync("ReceiveMessageThread", messages);
        }
Example #4
0
        public async Task <ActionResult <IEnumerable <MessageDTO> > > GetMessageThread(string recipientUsername)
        {
            var messages = await _messageRepository.GetMessageThread(User.GetUsername(), recipientUsername);

            return(Ok(messages));
        }
Example #5
0
        public async Task <ActionResult <IEnumerable <MessageDto> > > GetMessageThread(string username)
        {
            var currentUsername = User.GetUserName();

            return(Ok(await _messagesRepository.GetMessageThread(currentUsername, username)));
        }
        public async Task <ActionResult <IEnumerable <AppUserMessagesResponse> > > GetMessagesThread(string userName)
        {
            var currentUserName = User.GetUserName();

            return(Ok(await _messagesRepository.GetMessageThread(currentUserName, userName).ConfigureAwait(false)));
        }
Example #7
0
 public async Task <IEnumerable <Message> > GetMessageThread(int userId, int recipientId)
 {
     return(await _messagesRepo.GetMessageThread(userId, recipientId));
 }