Docs navigation

Storage, quota and archiving

Recordings are the one dataset that grows forever if you let it. Exovo gives you a quota, a retention policy, and an archive tier so local disk stays healthy without losing history.

Quota and local storage

Recordings land under /var/lib/exovo/recordings against a configurable quota (default 20 GB) — the Recordings page and dashboard both show usage against it. The Settings modal on Admin → Recordings adjusts the quota and location, plus an optional auto-delete older than N days retention rule (180 days when enabled).

The rule runs by itself every few hours and goes by the date of the call, so imported history ages correctly. It is end-to-end: a recording past the limit is removed from the local disk, from the archive folder and from remote storage, so the limit you set is the limit everywhere. If remote storage cannot be reached, the recording stays listed and is retried on the next run rather than leaving a stray file behind.

Because it reaches into the archive, the auto-delete age cannot be lower than the auto-archive age — the settings refuse it either way round, since a recording would be deleted before it was ever archived. Files in the remote store that Exovo did not put there (a site's old 3CX archive) are never touched by the rule.

Low-disk conditions are alertable — wire up Admin → System → Alerts so "recording disk at 90%" is an email, not a surprise.

Archiving to remote storage

With remote storage connected, recordings can move off the local disk on a schedule: the data-archiving table sets the folder and an auto-archive threshold (move recordings older than N days), with a Move to Archive button for immediate runs. Archived recordings have left the local quota but not your reach: the library's Archived folder lists what is in the store, and playing or downloading an item fetches it back with a progress bar (and keeps a local copy for a day).

Voicemails and faxes archive the same way. Each is its own row in that data-archiving table with its own folder and age threshold, so you can hold recordings 90 days but keep faxes a year — whatever your retention rules ask for — and the Voicemail and Fax pages have the same Archived folder with the same fetch-back.

The remote layout mirrors 3CX's (recordings/, voicemails/, faxes/, one folder per extension). Point Exovo at a store that already holds a site's 3CX archive and those files appear in the Archived folders too, with caller, callee and time read from 3CX's file names.

The Purge menu covers the deliberate cleanups: delete local, delete archived, delete all, or move everything to archive in one action.

A sane policy

For most organizations: keep 30-90 days locally (fast playback for recent disputes), auto-archive beyond that to remote storage, and let the auto-delete rule enforce your legal retention limit end-to-end — it clears the archive too. Voicemail and fax storage have their own smaller footprints, visible on the dashboard's storage panel.