AiPBX

Call recordings

Where they are

Recordings are written by Asterisk (MixMonitor) to /var/spool/asterisk/monitor/:

Prefix Recorded when
outbound_… an outbound route is used
inbound_… the inbound route has record call enabled
rg_… a ring group records
queue recordings the queue records

The CDR stores the file path; the portal (CDR reports, My Phone, queue reports, mobile apps) plays and downloads recordings through it.

Automatic MP3 conversion

WAV recordings take about 1 MB per minute. Every 5 minutes a cron job (/usr/local/bin/recordings_to_mp3.php) converts recordings that are no longer being written to mono 16 kbps MP3 (about 0.12 MB per minute, ~8× smaller):

Existing recordings are converted on the first runs after installing or updating (21 GB of recordings became 2.7 GB on one system). The encoder is lame, installed by install.sh.

For telephone audio 16 kbps is normally enough. If recordings sound muffled, raise the bitrate in web/bin/recordings_to_mp3.php (-b 16 → -b 24 or -b 32); it only affects new conversions.

In an S3 bucket

With an S3-compatible bucket on System → File storage (AWS S3, Wasabi, Backblaze B2, Cloudflare R2, MinIO …), tick Call recordings in the bucket too. Then:

Switching File storage back to the local disk stops the uploads; recordings already in the bucket stay playable as long as the bucket settings are kept.

Access

Admins and users with can listen recordings hear every recording; other users only recordings of their own calls.