public async Task SaveMessageAsync(ChatMessageInputModel input) { var message = this.mapper.Map <Message>(input); await this.messageRepository.AddAsync(message); await this.messageRepository.SaveChangesAsync(); }
public async Task Send(ChatMessageInputModel input) { var user = this.userManager.GetUserAsync(this.Context.User).Result; input.SentById = user.Id; var msgLogTime = DateTime.UtcNow; var localTime = msgLogTime.ToLocalTime().ToShortTimeString(); var username = user.Name; await this.chatService.SaveMessageAsync(input); await this.Clients.All.SendAsync( "NewMessage", new MessageResponseModel { SendByName = username, Text = input.Content, Time = localTime }); }