Hmm that could be a nice addon. It isnt that hard to build at all...
Now it can happen that an up/download is rather jumpy in speed so a full kick can be based upon avg speed. But then a user has to have done things already. So lets assume a byte amount upped/downloaded. Now this scheme is partly dodgy since someone can grab a bundle of nfo files and thus the speed will be inaccurate. But lets assume first it wouldnt be.
OnLogin-reset user BW in/out avg speed stats to 0
OnLogout-Remove user avg speeds stat
Onupload-add bytes to total amount and add time to total amount, since we have the speed from io and the size of the file we can easily say it took x seconds to down/up file of size y
OnDownload-similar as onupload
[pre]
STOR=if bytes grabbed>x and avg speed<y then disallow 'speed is too slow'
RETR=similar
APPE=similar (more tricky tho since the file already exists and this has a size).
In the scheduler:
Something similar....
|