Open-source PBX (FreeSWITCH)

DIDHub for FusionPBX

Add DIDHub as a FreeSWITCH gateway in FusionPBX. Multi-tenant ready, dialplan-managed routing, full FusionPBX UI integration.

Why DIDHub + FusionPBX

FusionPBX is the FreeSWITCH-based PBX with a strong multi-tenant story, common for service providers and MSP-style deployments. DIDHub plugs in as a standard FreeSWITCH gateway (sofia profile), the same way FusionPBX connects to any other SIP carrier.

FusionPBX users come to DIDHub for international DID coverage, for the DIDHub multi-country pricing model that maps cleanly to FusionPBX's per-tenant billing, and because FreeSWITCH's media handling pairs well with DIDHub's edge SBC for clean call quality even on long-haul routes.

Setup, 10 minutes

Six steps in the FusionPBX UI from a fresh install to a working DIDHub gateway.

Sign up + buy a number

DIDHub account, pick a DID, get trunk credentials.

Accounts → Gateways → Add

In FusionPBX as the superadmin, add a new gateway. Name it didhub-{country}.

Fill gateway fields

Username, password, proxy = sip.didhub.io, register = true, register transport = TLS, expire = 600s, retry = 30s.

Restart sofia profile

Status → SIP Status → kill + restart the external profile, or rescan from the FusionPBX UI.

Inbound routing

Dialplan Manager → Inbound Routes → Add a route matching the DID, destination = your extension/IVR/queue.

Outbound routing

Dialplan Manager → Outbound Routes → Add a pattern matching dialed prefix, gateway = didhub-{country}.

SIP trunk configuration

The exact trunk values DIDHub provisions for your account. Pre-fill these in the FusionPBX trunk-config UI:

; FusionPBX gateway, Accounts → Gateways → Add

Gateway Name: didhub-us
Username: didhub_xxxxxx
Password: (provisioned)
Proxy: sip.didhub.io
Realm: sip.didhub.io
From User: didhub_xxxxxx
From Domain: sip.didhub.io
Register: True
Register Transport: TLS
Expire Seconds: 600
Retry Seconds: 30
Caller-ID-In-From: True
Profile: external
Codecs: PCMU,PCMA,OPUS

; FreeSWITCH internal: this materialises as /etc/freeswitch/sip_profiles/external/didhub-us.xml

FusionPBX writes gateway config to FreeSWITCH's external sofia profile. After saving, restart the profile via FusionPBX → Status → SIP Status → external → kill + start. Verify registration in Status → SIP Registrations.

Capabilities verified with FusionPBX

Multi-tenant gateway

Per-domain gateway assignment lets you separate DIDHub trunks per FusionPBX tenant, useful for MSPs.

FreeSWITCH media handling

FreeSWITCH's mod_sofia + mod_dptools + mod_callcenter all work normally on DIDHub trunks.

Dialplan flexibility

Standard FusionPBX inbound/outbound routes; XML dialplan available for advanced cases.

Recording

FusionPBX call recording works on DIDHub gateways. Per-extension or per-route configurable.

REST API

FusionPBX's API + DIDHub's API can be combined for fully-automated tenant provisioning.

Frequently asked questions

Which FusionPBX version?

FusionPBX 4 and 5 both work. FreeSWITCH 1.10+ underneath. DIDHub uses standard sofia gateway config, no FusionPBX-version-specific features.

Can I assign DIDHub gateways per tenant?

Yes. FusionPBX gateway-to-domain mapping is supported; each tenant can have its own DIDHub trunk if needed.

Does FusionPBX's call recording work?

Yes. mod_recording plus FusionPBX's call recording UI both work normally on DIDHub trunks.

How do I handle FreeSWITCH TLS?

Set Register Transport = TLS in the gateway config. FreeSWITCH must have TLS enabled in the external sofia profile (sip_profiles/external.xml). Most modern FusionPBX installs have this on by default.

Can FusionPBX bridge calls between DIDHub and another SIP carrier?

Yes. Multiple gateways per FusionPBX install, bridge logic via the dialplan picks which gateway to use for which call.

Related

FreePBX · Asterisk · 3CX · Softphones

Related integrations

Ready to get a number?

Pick a DID in 130+ countries from $1.99/month. Activates instantly on most numbers.