public async Task SendGroupNotification(string message, int roomId, string connectionId, ChatHubUser contextUser, ChatHubMessageType chatHubMessageType) { ChatHubMessage chatHubMessage = new ChatHubMessage() { ChatHubRoomId = roomId, ChatHubUserId = contextUser.UserId, User = contextUser, Content = message ?? string.Empty, Type = Enum.GetName(typeof(ChatHubMessageType), chatHubMessageType) }; this.chatHubRepository.AddChatHubMessage(chatHubMessage); ChatHubMessage chatHubMessageClientModel = this.chatHubService.CreateChatHubMessageClientModel(chatHubMessage); var connectionsIds = this.chatHubService.GetAllExceptConnectionIds(contextUser); await Clients.GroupExcept(roomId.ToString(), connectionsIds).SendAsync("AddMessage", chatHubMessageClientModel); }
public async Task SendClientNotification(string message, int roomId, string connectionId, ChatHubUser targetUser, ChatHubMessageType chatHubMessageType) { ChatHubMessage chatHubMessage = new ChatHubMessage() { ChatHubRoomId = roomId, ChatHubUserId = targetUser.UserId, User = targetUser, Content = message ?? string.Empty, Type = Enum.GetName(typeof(ChatHubMessageType), chatHubMessageType) }; this.chatHubRepository.AddChatHubMessage(chatHubMessage); ChatHubMessage chatHubMessageClientModel = this.chatHubService.CreateChatHubMessageClientModel(chatHubMessage); await Clients.Client(connectionId).SendAsync("AddMessage", chatHubMessageClientModel); }