public async Task AddLastReadMessageAsync(AddLastReadMessageRequest request) { try { var member = await _memberService.GetMemberSummaryBySaasUserIdAsync(request.SaasUserId); var message = await _messageService.GetMessageByIdAsync(request.MessageId); await _messageService.AddLastReadMessageAsync(request); var messageOwner = await _memberService.GetMemberByIdAsync(message.Sender.Id); var members = new List <MemberSummary> { member, messageOwner }; await _messageNotificationHub.OnChangeLastReadMessage(members, message); } catch (NotFoundException ex) { _logger.Event(PropertyNames.EventId).With.Message("Exception: Message does not exist. MessageId: {messageId}", request.MessageId).Exception(ex).AsError(); throw new Exception(String.Format(LanguageResources.RoomMemberButNotExists, request.SaasUserId)); } }
public async Task <IActionResult> AddLastReadMessageAsync(Guid messageId, Guid channelId) { var userId = GetCurrentUserId(); await _messageService.AddLastReadMessageAsync(new AddLastReadMessageRequest(channelId, messageId, userId)); return(Ok()); }