Record each side of a channel beside its mix
Owner 2026-11-06: "any time you have separate audio channels, make sure the transcripts leverage that so it can additionally say who is speaking." Every recorde...
Voicemail uploads name their message, and Kamo can ask for one it has no audio of
A voicemail upload now carries the message's own id, <mailbox>/<msg_id> from the msgNNNN.txt Asterisk writes beside it, as its unique id: VOIPService files Free...
Render the toll-fraud block list as [kamo-toll-fraud-blocked] (SP93 T8)
The PBX policy pull now carries blockedPatterns, the Asterisk extension patterns of the phone server's optional toll-fraud guards. Fetch keeps only an underscor...
Pull the PBX policy from Kamo; outbound allow-list and AI extensions as managed dial plan; AI endpoints point at LiveKit
Every POLICY_SECONDS the agent pulls GET /api/voip/pbx/config (also its heartbeat) and writes [kamo-outbound-allowed] and [kamo-ai-extensions] as a managed sect...
Report ringing extensions so a member's mobile rings
The AMI client logs in with 'Events: off' and only sends actions, so nothing on a customer's FreePBX ever told the platform a call was arriving. That silence is...
Reconcile per-extension WebRTC blocks instead of hand-editing a roster
An extension created through FreePBX's API gets no WebRTC block, so it registers over WSS and then has no DTLS or ICE β the browser softphone shows a connected ...
Enrich upload manifests with Asterisk CDR caller-ID data
Adds optional MySQL CDR enrichment so the softphone history tab can display who called (or was called). When ASTERISK_CDR_DSN is configured as a Forgejo repo se...
Emit recordedAt + per-file extension in upload manifest
- Watcher: every emitted Recording carries RecordedAt, derived from the EPOCH segment of our managed **************** filename, falling back to file mtime f...
Initial commit β FreePBX recording uploader (GO)
Watches **************** for finished WAV recordings, groups multi-leg call legs by Asterisk UNIQUEID, and uploads each batch to APIService /api/voip/recordings...
Initial commit β FreePBX recording uploader (GO)
Watches **************** for finished WAV recordings, groups multi-leg call legs by Asterisk UNIQUEID, and uploads each batch to APIService /api/voip/recordings...
Like what you see shipping?
All of it arrives in your workspace on its own. Start on the free plan and read this page again in a month.
