private void AddUser(string ipPort, JoinPayload payload) { Logger.Info($"Client from '{ipPort}' wants to join chat server."); if (string.IsNullOrWhiteSpace(payload.Name) || string.IsNullOrWhiteSpace(payload.Color)) { Logger.Debug($"Client '{ipPort}' has no name or no color."); _server.DisconnectClient(ipPort, MessageStatus.Failure); return; } var user = new User { Id = Guid.NewGuid(), Name = payload.Name, Color = payload.Color, IpPort = ipPort }; var clientPayload = new JoinedPayload(user.Id, user.Name, user.Color); var clientPacket = new ClientPacket(ClientAction.Joined, clientPayload); SendToAllUsers(clientPacket); Users.Add(user); InvokeUserJoinEvent(user); }
private void AddUser(JoinedPayload payload) { var newUser = new User { Id = payload.UserId, Color = payload.Color, Name = payload.Name }; Users.Add(newUser); InvokeUserJoinEvent(newUser); }