Skip to content

Bandwidth And Schedules

Three controls shape how much Weaver pulls and when. A speed limit caps the rate. The ISP bandwidth cap and per-server quotas cap bytes per window. Schedules change the first two on a clock.

The global speed limit is a rate ceiling for all downloads. Set it from the queue header for an immediate change, or in Settings → General → Speed Limit with Apply Now and Reset to Unlimited. WEAVER_MAX_DOWNLOAD_SPEED seeds it on first start.

Each server can carry its own limit under Servers. The lower of the two applies to that server.

For a metered connection, Settings → ISP Bandwidth Cap tracks a byte allowance per window and stops dispatching new downloads when it is spent. Configure:

  • Enable ISP cap and a Window of daily, weekly, or monthly.
  • The Limit in bytes.
  • Reset Time, plus Reset Weekday for weekly windows or Billing Day for monthly ones. Days past the end of a short month use its last day.

The page shows the current window’s used, remaining, limit, and next reset, in the server’s timezone. Set TZ in Docker so windows match your billing cycle. When the cap is reached the queue shows ISP cap and jobs hold position until the reset. Already-running repair, extraction, and scripts continue.

Per-server quotas are the same mechanism scoped to one provider. Use the ISP cap for your connection and quotas for block accounts.

Settings → Schedules holds recurring rules. Each has a Label, a Time in the server’s local time, a set of Days with none checked meaning every day, and an Action:

ActionEffect
PauseGlobal pause, the same as Pause All
ResumeClears the global pause
Speed LimitSets the global speed limit, 0 for unlimited
Pause Watch Folder ScanningStops automatic watch folder imports
Resume Watch Folder ScanningStarts them again

Typical pairs: pause at 07:00 and resume at 23:00 on weekdays, or limit to a low rate during the evening and reset to unlimited overnight. Rules can be disabled without deleting them.

A manual pause and a scheduled one are the same flag, so Resume All in the queue clears a scheduled pause until the next rule fires.