Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Daily/Monthly download limit #99

Closed
boerngen-schmidt opened this issue Oct 20, 2015 · 10 comments

Comments

Projects
None yet
5 participants
@boerngen-schmidt
Copy link

commented Oct 20, 2015

Hello folks,

this is not a bug, but a feature request with a low priority.

What I have in mind is a setting where I can set how much MB/GB/TB NZBGet should download a day/week/months.

Why do I want to have such a feature. Well when I add lots of stuff to download, which I do not need instantly, it would be nice to spread the download of these items over time, since I might have stuff I want to download instantly. The Usenet-provider I use has a monthly limit. With such a feature I could control this limit better and if I want to I could force the download.

Maybe the limit could also be connected with a priority or a category.

@hugbug hugbug added the feature label Oct 21, 2015

@hugbug

This comment has been minimized.

Copy link
Member

commented Oct 21, 2015

Considering current prices for unlimited plans (which start from $5 per month) spending time on this feature isn't really worth it.

@war59312

This comment has been minimized.

Copy link
Contributor

commented Oct 21, 2015

Well, you do also have ISPs that limit bandwidth per month. Lame aholes! But none the less..

@anoma

This comment has been minimized.

Copy link

commented Oct 22, 2015

To be fair the "$5 per month" price is very USA-centric. There are still plenty of places in the world where you cannot for any price buy unlimited internet and others where it costs $500-$1800 per month.

Another factor to keep in mind is that many people use mobile broadband which can be very fast but is almost always capped.

I dont have an opinion on the feature itself just pointing out these use cases.

@hugbug

This comment has been minimized.

Copy link
Member

commented Oct 22, 2015

To be fair the "$5 per month" price is very USA-centric.

No, it's not. The topic starter was talking about Usenet provider.

I agree the download limits can be useful if the Internet provider sets such limits. I'm not sure if there are many NZBGet users who need the feature though.

Please everyone who needs the feature post to this thread.

@anoma

This comment has been minimized.

Copy link

commented Oct 22, 2015

Yes I was incorrect in the $5 quote but my use cases still apply. The reason I went this reply route so quickly was that until 18 months ago I was paying approximately 230 times more per GB in ISP charges than I am now.

That has changed for me so I do not need this feature.

@leeramsay

This comment has been minimized.

Copy link

commented Nov 28, 2015

I would hugely benefit from a monthly download limit feature, as I have a set gb limit per month. Capped internet is very common in Australia, and it's a feature that other popular nzb fetcher has.

@hugbug

This comment has been minimized.

Copy link
Member

commented Apr 8, 2016

A couple of questions to the feature request:

  • what is the quota period, does it always start at the first of the month at 0:00 local time and ends the last day of the month?
  • daily quotas (mentioned in the issue title) - is this something real?
  • we are talking about ISP quotas, not Usenet quotas, right? Therefore there is no need for per news-server settings.
  • what should happen when the quota limit is reached? I would do:
    • during downloading the quota is constantly monitored and the downloading is automatically paused with a message if the limit is reached.
    • if the user resumes downloading it will remain resumed until next program start.
    • on start the program checks if the limit is reached and pauses downloading again.
    • downloads with force-priority are downloaded regardless of pause state.
@leeramsay

This comment has been minimized.

Copy link

commented Apr 11, 2016

@hugbug

My thoughts inline..

  • what is the quota period, does it always start at the first of the month at 0:00 local time and ends the last day of the month?
    • ^^ Unfortunately not, my ISP, and several others I know of start your quota'd month on the day you signed up, so for example every month it might be the 9th day. This has been how other download applications I've used handle it, they simply ask for an integer between 1-31.

I guess the other thing to bare in mind is if someone has a 200gb per month quota, generally they won't want to spend 100% on downloading from usenet. They will likely set a 150gb quota within their primary download app, so complete technical accuracy isn't paramount, mainly that it's going to consume within the ballpark of what you expect it to do.

  • daily quotas (mentioned in the issue title) - is this something real?
    • ^^ The only place I can think of daily quotas existing is for 3G/4G services, and hotels. That doesn't apply to me, I guess it's possible that people require it.
  • we are talking about ISP quotas, not Usenet quotas, right? Therefore there is no need for per news-server settings.
    • ^^ In my case, yes. Most applications are just considering download quotas for the application, not per "source".
  • what should happen when the quota limit is reached? I would do:
    • ^^ What you've laid out sounds fine, I've seen other apps with as basic functionality as to force pause, and have a "reset quota for this month" button, which is not exactly desirable.
      I think pausing everything with allowing force-priority to override the pause is sufficient.

hugbug added a commit that referenced this issue Apr 12, 2016

#99: download volume quota
- new options “MonthlyQuota”, “QuotaStartDay”, “DailyQuota”;
- downloading is paused when quota is reached;
- new fields in RPC-method “status”: MonthSizeLo, MonthSizeHi,
MonthSizeMB, DaySizeLo, DaySizeHi, DaySizeMB. MonthSizes are related to
current billing month taking option “QuotaStartDay” into account;
- download volume for “this month” shown in web-interface in statistics
dialog shows data for current billing month (taking option
“QuotaStartDay” into account);
- scheduler task “UnpauseDownload” is ignored if the download was
paused due to quota.
@hugbug

This comment has been minimized.

Copy link
Member

commented Apr 12, 2016

Implemented quota management.

Who wanna test it? Send me a note to nzbget@gmail.com with the info about your OS and CPU and I'll send the development version.

I have some concerns about the behavior when the quota limit is reached (pause downloading). I'll write up later.

hugbug added a commit that referenced this issue Apr 13, 2016

#99: indication of reached quota in web-interface
 - remaining time is shown in orange when the quota is reached;
 - dialog “statistics and status” may show extra row “Download quota:
reached”.

hugbug added a commit that referenced this issue Apr 15, 2016

#99: separate quota reached flag
 - using separate “quota reached”-flag instead of changing global pause
state;
 - new field “QuotaReached” in RPC-method “Status”.
@hugbug

This comment has been minimized.

Copy link
Member

commented Apr 15, 2016

Update

Instead of interfering with global pause state the quota management now uses a separate quota reached-status.

When the quota reached-status is set the downloading is stopped (as if the pause state were active). Downloads with force-priority are still processed.

This has many advantages:

  • user cannot accidentally resume downloads and must knowingly use force-priority;
  • the download is automatically resumed when the quota status is lifted on the start of the next billing month or day. Especially useful with daily quotas;
  • no interferences with scheduler pause/resume tasks.

@hugbug hugbug closed this Apr 15, 2016

@hugbug hugbug added this to the v17.0 milestone Apr 15, 2016

hugbug added a commit that referenced this issue Oct 9, 2017

#99: download volume quota
- new options “MonthlyQuota”, “QuotaStartDay”, “DailyQuota”;
- downloading is paused when quota is reached;
- new fields in RPC-method “status”: MonthSizeLo, MonthSizeHi,
MonthSizeMB, DaySizeLo, DaySizeHi, DaySizeMB. MonthSizes are related to
current billing month taking option “QuotaStartDay” into account;
- download volume for “this month” shown in web-interface in statistics
dialog shows data for current billing month (taking option
“QuotaStartDay” into account);
- scheduler task “UnpauseDownload” is ignored if the download was
paused due to quota.

hugbug added a commit that referenced this issue Oct 9, 2017

#99: indication of reached quota in web-interface
 - remaining time is shown in orange when the quota is reached;
 - dialog “statistics and status” may show extra row “Download quota:
reached”.

hugbug added a commit that referenced this issue Oct 9, 2017

#99: separate quota reached flag
 - using separate “quota reached”-flag instead of changing global pause
state;
 - new field “QuotaReached” in RPC-method “Status”.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.