VoIP.ms Call Recordings
The ictVoIP Call Recordings module is a WHMCS server module that fetches and manages call recordings from the VoIP.ms API. Clients can browse, play, and download recordings from the client area, while the admin area provides configuration, a bulk backfill tool, and optional usage-based billing.
Features
Call Recordings Management — fetch, play, and download recordings from VoIP.ms in MP3 format.
Client Panel Interface — DataTables-based browser with filtering by date range, account, and DID.
Audio Player — built-in HTML5 audio player for in-browser playback.
Audit Logging — all recording activity is logged for support and compliance.
Autobill — usage-based billing cron that invoices overage recording minutes.
Bulk Backfill — admin tool to import historical recording metadata across all active services.
Installation
Copy the module directory into the WHMCS server modules location.
Copy the client area panel file to the WHMCS root directory.
The module creates the required database structure on activation.
Security
Warning
The WHMCS server IP must be whitelisted in the VoIP.ms API settings. API requests from non-whitelisted IPs will be rejected by VoIP.ms. This is required for secure and functional API access.
API credentials and passwords are stored encrypted in the WHMCS database.
Recording audio (MP3) is not stored locally. It is fetched on demand from VoIP.ms and delivered through the module so it is not exposed as a direct URL.
Recording file access is restricted to active services owned by the logged-in client.
All playback, download, and search activity is written to the audit log for review.
Server Configuration
The module requires a WHMCS server record for API credentials:
In WHMCS admin, go to Setup → Products/Services → Servers and click Add New Server.
Choose Module: ``voiprecordings``.
Enter the VoIP.ms API credentials:
API Username — the VoIP.ms account email address.
API Password — the VoIP.ms API password.
Save the server record.
Product Configuration
Create a WHMCS product and set the module to
voiprecordings.Add these product custom fields (exact names):
Sub-Acct/Username(text) — the VoIP.ms sub-account used for the APIaccountfilter.DIDorDID(s) Attached to Sub-Acct(text) — optional inbound DID filter.
Client Area Usage
Clients access their recordings from:
Log in to the WHMCS client area.
Go to Services → View Details for the Call Recordings service.
Use the recordings panel to:
Browse by date, direction, caller, destination, duration, and size.
Play recordings in the browser.
Download MP3 files.
Filter by date range or account/sub-account.
Autobill
The module can invoice clients for overage recording minutes based on VoIP.ms CDRs.
Use the autobill cron script provided with the module.
Recommended cron: daily, before the WHMCS daily cron — the recordings invoice must already exist when WHMCS runs its daily billing pass.
The script:
Selects active
voiprecordingsservices due today.Resolves the
Sub-Acct/Usernamecustom field.Fetches VoIP.ms CDRs for the billing cycle.
Filters CDR entries where
descriptioncontainsCall Recording.Applies per-direction rates and free minutes from the extended rates table.
Creates a WHMCS invoice with the calculated overage amount.
See also
Automated Billing (Autobill) — full autobill scheduling, timezone, and billing-cycle details.
Bulk Backfill Tool
Version 1.1.0 adds a bulk backfill admin tool for importing historical recording metadata:
Splits date ranges into day-sized windows to respect VoIP.ms rate limits.
Configurable API delay with exponential-backoff retries.
Per-service, per-window deduplication so the same recording is not imported twice.
Live log output with progress bar and imported/skipped/error counters.
Metadata-only import; audio is still fetched on-demand by the client panel.