void ProcessData(Socket thisClient, byte[] _data) { string rData = Encoding.ASCII.GetString(_data); if (!string.IsNullOrWhiteSpace(rData) || !string.IsNullOrEmpty(rData)) { var package = SergIOPacket.Deserialize(rData); LOG(package.json); var data = SergIOData.Deserialize(package.json); LOG($"SERVER received {data.name}"); switch (package.packetType) { case TypeEvent.CONNECT: break; case TypeEvent.NEWCONNECTION: break; case TypeEvent.PONG: break; case TypeEvent.MESSAGE: CallCallback(data); if (!clients.Contains(thisClient)) { clients.Add(thisClient); } EmitPackage(package); break; case TypeEvent.DISCONNECT: EmitPackage(package); clients.Remove(thisClient); DisconnectClient(thisClient); break; } } else { LOG("The data received is empty"); } }