SIP-DMR Portal¶
Connect SIP/VoIP handsets on your PBX to DMR talkgroups on a SystemX or MMDVM network. Users dial a feature code, enter a talkgroup, and the portal provisions a per-call bridge.
Repositories¶
| Repository | Role |
|---|---|
| sip-dmr-exchange | SIP B2BUA, Docker orchestration, HTTP /bridges and /stats API |
| sip-dmr-bridge | Per-call MMDVM bridge container |
| sip-usrp-bridge | USRP/MMDVM components baked into the bridge image |
| sip-dmr-exchange-dashboard | Optional static ops dashboard |
Legacy repos
dmr-portal and dmr-portal-dashboard are superseded by the stack above.
Typical flow¶
- User dials your feature code (e.g. 234) on the PBX
- IVR collects a talkgroup number
- PBX sends
INVITEto sip-dmr-exchange with custom SIP headers - Exchange spawns a sip-dmr-bridge Docker container
- Audio is bridged SIP ↔ MMDVM ↔ your DMR network
See Architecture for a detailed diagram.
Who is this for?¶
- Self-hosters — run exchange + bridge on a Linux VM with Docker (Self-Hosting)
- PBX admins — FreePBX/Asterisk trunk, IVR, and access control (FreePBX integration)
- FreeSTAR Everywhere — production deployment uses this stack with Misc Application allowlists and the phonebook DMR tab
Quick links¶
Licence and access¶
Source repositories are currently private within the FreeSTAR-Network organisation. Documentation here is written for a future public or friends-and-family release. Never commit SIP_AUTH_TOKEN, .env secrets, or production credentials to git.
Last update: August 17, 2026 21:08:54
Last updated by: MØVUB
Last updated by: MØVUB
Help improve this page by contributing to our documentation.