TIPS Best way to have multiple companies on one PIAF server

kameleon

Member
Joined
Jul 22, 2009
Messages
111
Reaction score
15
OK, bear with me it has been a WHILE since I have had to do anything with the voip stuff. I currently have a crowncloud vps with piaf installed and one "company" on it (in reality it's just a simple inbound call forwarding deal). I have 3 more companies of mine that have GV numbers I want to move to this system and get away from Google before they figure out I am not exactly using the gapps stuff for personal use.

All that said, anyone have some good writeups on how to have 1 server and multiple tenants? Ideally I'd want each to have their own voicemail/web logins and such to where they can set their own forwards and all. However if I could use the same skyetel account, with each their own number of course, that would be great. Any guidance is greatly appreciated!
 
Asterisk doesn't support multiple tenants.
 
It can if configured to do so. I run multiple tenants on it.
Do tell. I might be over thinking this but basically I just want separate numbers ringing it's own ring groups. And then the ability for person 1 at company A to log in and configure the call forwarding and check voicemail but not be able to see anything from company B, etc. I mean it's all my companies so I am probably way over thinking it. But if I ever get a secretary for one or more companies I would definitely like to have these features without having to do multiple servers.
 
Do tell. I might be over thinking this but basically I just want separate numbers ringing it's own ring groups. And then the ability for person 1 at company A to log in and configure the call forwarding and check voicemail but not be able to see anything from company B, etc. I mean it's all my companies so I am probably way over thinking it. But if I ever get a secretary for one or more companies I would definitely like to have these features without having to do multiple servers.
Oh you won't be able to do it with the PIAF/IPBX/FreePBX GUIs. It requires being able to partition things, restrict access in dialplan, parking lots, etc.. Things like endpoints, conferences, queues, etc. need to have unique names and be mapped to the dialable extensions, it can't be 1:1 like how a single tenant is.

Now, there are commercial options out there that do this for you already and are Asterisk based. VitalPBX, Bicom, MiRTA, Issabel even has one, Thirdlane and I think ClearlyIP has an option. Those are a few I'm aware of.
 
Things like endpoints, conferences, queues, etc. need to have unique names and be mapped to the dialable extensions, it can't be 1:1 like how a single tenant is.
So not true multiple tenants but a work around dividing the resources of the pbx for a number of small clients.
 
So not true multiple tenants but a work around dividing the resources of the pbx for a number of small clients.
No, you don't allocate memory or CPU to them. The average line count for one of my tenants is about 75ish. I have some that have 2 lines and others up to 150 lines.
 
Ok so it sounds like I just need to set it up as different "departments" rather than different complete companies. Just for ease of use for now. I mean I will be the main one using it for now anyways. At least I have have different DID's going to different IVR's. Voicemail I'll just have each one email me separately to the corresponding companies email. I figured I was trying to over complicate it!
 
Ok so it sounds like I just need to set it up as different "departments" rather than different complete companies. Just for ease of use for now. I mean I will be the main one using it for now anyways. At least I have have different DID's going to different IVR's. Voicemail I'll just have each one email me separately to the corresponding companies email. I figured I was trying to over complicate it!
Just keep in mind that every will have access to things that would allow them to get to other extensions and items that aren't to their department. You also can't have the same extensions per company.
 
The culture is a little unsavory for me but fusionpbx will get you want if just a few simple PBI. Proxmox with several FreePBI and a SIP proxy to consolidate all tenants with one (or more) provider(s) could also work
 
Assuming you are using the FreePBX Distro on your CrownCloud VPS, you'll need to set up separate extensions for each company. You can create extensions for users within each company info API and assign them to specific contexts. Asterisk (which FreePBX uses) allows you to create separate contexts in your dial plan. Each context can be considered a "sandbox" for a specific company. This way, you can isolate the configuration for each company. You might want to look into virtual hosting solutions for FreePBX. This allows you to configure separate instances on the same server for different companies. This is more advanced and might require manual Apache and FreePBX settings configuration.
You can configure Skyetel trunks in FreePBX. Each company can have its own inbound and outbound routes using the Skyetel trunk. Make sure to configure the trunks properly for each context.
 
Last edited:
just keep in mind that systems that are not built as multi tenant, generally won't allow you to keep tenants separately while still allowing you to manage the system as a whole - in terms of cdrs, queue logs, realtime call view, etc. You will also have to deal with other related issues - like certificates, provisioning, trunks, etc. Maintenance and upgrades will also become an issue once you get enough tenants. Multi tenant commercial system vendors like Thirdlane and others make all this much easier to manage.
 
Proxmox is considerably easier. Run as many tenants as you like as separate Asterisk servers on one box.
Our underlying platform uses Proxmox. Amazing piece of kit and have hundreds of Asterisk systems on it. Agree it may be the other way to go, unless you are prepared to pay a commercial license for a Asterisk based system that can do multitenant. I like the fact each customer has their own VM and private system.
 
There is always open source FusionPBX which has multi-tenant
 
There is also VitalPBX which can be multi-tenant. It is based on Asterisk with a custom GUI.
 
OK, bear with me it has been a WHILE since I have had to do anything with the voip stuff. I currently have a crowncloud vps with piaf installed and one "company" on it (in reality it's just a simple inbound call forwarding deal). I have 3 more companies of mine that have GV numbers I want to move to this system and get away from Google before they figure out I am not exactly using the gapps stuff for personal use.

All that said, anyone have some good writeups on how to have 1 server and multiple tenants? Ideally I'd want each to have their own voicemail/web logins and such to where they can set their own forwards and all. However if I could use the same skyetel account, with each their own number of course, that would be great. Any guidance is greatly appreciated!

When I’m not tinkering with VOIP setups, I usually hang out on https://rsps-server.com/ it’s a hub that brings together the best RuneScape private servers in one place, carefully chosen for their quality, activity, and depth of gameplay.
The usual approach people take is spinning up separate FreePBX or IncrediblePBX instances inside lightweight containers, like LXC or Docker, so each company has isolated extensions, voicemails, and web access without having to rebuild everything.

If you want to keep it under one install, you can still fake multi tenancy by using context separation in extensions_custom.conf, assigning different inbound routes and IVRs per company, and giving each group a unique admin login through the User Control Panel. Skyetel should work fine across all of them if you just manage the DID routing carefully

Just sharing this since I went through the same setup not long ago and it actually worked out pretty smoothly once I got the routing sorted
 
lightweight containers, like LXC or Docker
Docker is not supported by FreePBX or the IncrediblePBX projects. However, small PBX's can easily be run in small VM's like VirtualBox or cloud instances with as little as 1 GB of memory and 20 GB of disk space. Cloud VM's can be easier to deal with than on-site VM"s; especially if there is a lot of call volume over too small an internet pipe or if you are not experienced in dealing with routers, firewalls, and port-forwarding scenarios.

There are also multi-tenant alternatives to Asterisk and FreePBX like FusionPBX or FS PBX that allow you to have separate partitions for clients under one PBX.
 
Assuming a /32 external IP, then Docker is a bad fit but LXD/LXC can work, you need to segregate PBI registrations by port/protocol (easy) and sub-divide the media UDP ranges forwarded to the PBI by LXD (harder), personally I moved to FusionPBX

Given a cloud environment , don't even think of saving lotsa $6's
 
Get 3CX - Absolutely Free!

Link up your team and customers Phone System Live Chat Video Conferencing

Hosted or Self-managed. Up to 10 users free forever. No credit card. Try risk free.

3CX
A 3CX Account with that email already exists. You will be redirected to the Customer Portal to sign in or reset your password if you've forgotten it.
Back
Top