Module Gateway for FreePBX / PBXact systems

I created a module Gateway to connect any Gateways or Trunks on a PJSIP extension.

Your FreePBX or PBXact is a kind of SIP router.

I’d like this module becomes a commercial module, but it’s too hard with Sangoma. Bad deal.

The usage is to created an extension with the primary DID , e.g:
0240404040
You connect your gateway or your trunk on this extension. (You can imagine you’ve got another PBX to connect on your FreePBX system).
Next, if you’ve got 10 DIDs, add them.

FreePBX system is like a small SIP provider.

1 Like

What does this module do? Because based on this diagram it looks like three FreePBX systems connected to a single FreePBX system. So what does this gateway module actually provide for this?

Is this like a multi-tenant solution? So for instance one PBX can handle multiple tenants in a office building??

Making FreePBX multi-tenant would require a complete overhaul of how the system works.

1 Like

that was my understanding so I guess I’m still confused as to what this module is supposed to do exactly. What problem is it solving?

It’s letting you have a FreePBX box act as a mini soft switch and hang other FreePBX systems off it and use the extensions as the DIDs from what I can gather.

1 Like

Ok but what would be the real world use case here?

It’s basically the poor man’s way to offer sip trunking to customers. Something that wouldn’t fly in the US anymore.

2 Likes

Ok, so that makes sense now. I couldn’t see a point to it here in the US.

1 Like

Correct.
This is the goal of this module.

I don’t know if it’s possible in US, if you’ve got a company with some remote offices.
In France, we can do it. In Europe too I guess, and elsewhere maybe.

We can’t do that here with different “clients” as that would put you under the category of a reseller and therefore subject to a whole lot of laws and aggravation.

If it were the same client with multiple locations why not just put trunks between them?

1 Like

Goal of the module? You can do this right now with this setup you laid out. What will the module actually do?

@tonyclewis wrote a description above.

Imagine a FreePBX (primary) system to which many other FreePBXs, IPBXs, or gateways (SIP/ISDN) are connected.
The primary FreePBX system routes calls (primary DID and DID) to FreePBX client or gateways.
FreePBX is a kind of SIP provider.
A customer is defined as an extension (e.g., 0240404040) and can have multiple DIDs on the same extension.

On the FreePBX client side, you need to set up atrunk to the FreePBX main just as you would for any SIP provider.

We used this type of configuration for our clients in France. We installed FreePBX servers at their premises and provided them with a trunk connected to the main FreePBX server. This main server was connected to three SIP providers: a primary trunk and two backup trunks.

You’re describing what people have been doing for over 10 years with FreePBX. Perhaps we didn’t understand your use of the word module in this. You are referring to a module you install on the PBX?

Yes, maybe you can do it manually on FreePBX. I just created a module to do that through the GUI. It’s a FreePBX module.

Using FreePBX or any B2BUA for this isn’t the proper way. You’re basically trying to make FreePBX into https://dsiprouter.org or any others like it running a top Kamailio or OpenSIPS.

Yes, I know. But here, I’m takling about FreePBX.
Anyway, this module works on FreePBX and it can be usefull.

What will the full functionality be of the module? Many of use a looking at it through the US regulatory lens.

This would need STIR/SHAKEN compliance, there would need to be 9-1-1 (emergency) compliance and management. A single trunk could have 300+ 9-1-1 registrations associated to it. Depending on the method, that could also require managing 300 DIDs associated to the registrations.

There would also need to be RoboCall mitigation, i.e. track calls to make sure there isn’t robo calling and make sure that a compromised user or bad actor doesn’t send 40K calls in 24 hours. As well as ensure your customers don’t get slammed by robo callers.

Unfortunately, in North America (US in particular) just being able to manage DIDs and trunks isn’t going to be viable.

There is a commercial module to limit this kind of calls. You can set whatever you want. 10 calls/minute /hour /day