FreePBX is brilliant, but some features need to catch up with VitalPBX (also Asterisk based) - WARNING: LONG POST!

I have a PBXact server in the cloud that you are welcome to explore if you want to see what I think is a more apples-to-apples comparison between products. As already mentioned, it is hard to compare something that is completely free for everyone forever (FreePBX) to something like VitalPBX that is free in limited cases. I would say PBXact is a pretty good deal if you are stepping out of the totally free realm of FreePBX. Send me a private message if you are interested.


I didn’t read yet all comments here. But I really don’t understand why you are comparing a paid PBX to FreePBX that is actually open source.

FYI: In the next version of VitalPBX, you’ll get only 12 extensions free… Similar to 3cX and other commercial PBX solutions. VitalPBX is far from “free” and from what it seems, it will only get more and more expensive.

  1. Re: the Sangoma ads. FreePBX does not give you a pop-up every time you log in. VS VitalPBX does… So not sure what your argument here is.

  2. Re: the interface feel. I agree. FreePBX is open source, anyone is welcome to contribute on the design.

  3. Re: bulk changes. Sorry, but FreePBX bulk handler is hands down way better than VitalPBX and it actually works (VitalPBX’s is still very buggy). Additionally, FreePBX’s Bulk Handler handles Extensions, Inbound Routes and many more stuff, while VitalPBX’s only handles extensions and only limited fields…

  4. Re: the apply config issue. That is correct. FreePBX takes a very long time and has been mentioned many times in the forums but no one did anything about it. Take a FreePBX 12, 13, 14, 15 and you will see that reload time takes longer and longer as the version number increases.

  5. Re: registering the PBX. Well, if you don’t register your VitalPBX you will be greeted with an annoying pop-up every time you try to run updates and it actually prevents you from running updates in the GUI if your PBX is not registered. VS FreePBX does not care if you are registered or not.

  6. Re: commercial modules licensing and free trials. This is a known issue with FreePBX. Unfortunately, it seems like the current licensing method in FreePBX is here to stay.

Again, a lot of those features you mentioned that are missing in FreePBX, is like coming here and saying that said feature exists in 3cX but not in FreePBX.

Now, here’s a couple of things you have missed to mention.

  • Hooking
  1. If you want to manipulate incoming DIDs or run anything on your incoming Trunk level context, there’s no way to easily do it in VitalPBX.
  2. There’s no predial hooks in VitalPBX. Hooking in VitalPBX is really hard unless you fully understand how their custom COS context works.
  • FollowMe
    VitalPBX’s FollowMe was recently improved a bit, but it was total trash and unreliable.

  • Custom dial strings
    In VitalPBX you cannot set on an extension a custom dial string.

  • Open Source
    In VitalPBX you cannot modify any module, or write your own module. Nor does the main index.php allow you to include your own stuff.

  • CDR Reports
    While CDR reports in VitalPBX looks way cleaner than in FreePBX, it doesn’t include the Unique ID which makes it way harder to obtain a call trace.

  • IVR Dialing
    In FreePBX you can use the directory to only allow certain extensions to be dialed, that wasn’t a thing in VitalPBX until very recently… not sure if it has changed, but I know that they had worked on it.

  • Manager permissions
    In VitalPBX there isn’t a way to limit access to a range of extensions only.

  • Language versions
    I don’t recall all softwares, they use, but IIRC PHP and NodeJS are running on newer versions in FreePBX

You get the point… there are a ton of awesome features that exists in FreePBX but not in VitalPBX and vice versa. The point is, that they are completely different products and have nothing in common other than the fact that they both use Asterisk. And hey, they could change their telephony engine to FreeSWITCH tomorrow :wink:

VitalPBX, between other players, seem to offer the most affordable solution that allows you to rebrand, with portals for WebRTC, switchboard and reporting, so you can resell it to your clients as if it is your PBX brand.

To make things clear: I am a VitalPBX and FreePBX maintainer, I love both products.

VitalPBX definitely has a very modern and shiny GUI and comes built-in with Switchboards, Reporting and a slick WebRTC softphone while FreePBX strongly lacks those features, and FreePBX is way more open, stable and no product that was free went commercial as far as I recall.

Both products have room to improve, but again, they are different products and shouldn’t be compared :slight_smile:

Well, not all, but almost all.

As a U.K. based business that deploys FreePBX and Asterisk Based systems worldwide. I think most of your issues could be be because of unfamiliarity with the system and this is to be expected. But simple things like commercial modules in the menus are simply removed but removing the module.
Core freepbx being OSS means you have access to the dialplan and can make changes or hooks into it or make it hook into other systems.
Your comments on settings are in a way true but when setting a system up we always use bill importing so pickup groups etc are configured initially and only will need minor changes going forward.
Freepbx also let’s you install 3rd party apps such as FOP2 or what ever ops console you want, you can also build hotel applications or call centre reporting, what you do is only limited by your skill set.
Having recently migrated a 450 extension Nortel to FreePBX first keeping the Nortel handsets using unistim and finally migrating to Sangoma P310 handsets with never having to attend site just ship handsets out the the customer to swap out with the rest being done in EPM (no cost as sangoma handsets) no other system had this flexibility and reliability (Though I would advice against running 450 unistim handsets)

I think a key thing to have in mind is that Freepbx may not in your eyes feel finished and maybe that’s true but by its very nature being OSS you can finish it to what would want, write an api, module, ahi or dialplan to do what ever you want.

As for U.K. sales at Sangoma for freepbx based systems it’s more partner facing, look out a partner they will be able to sort out that trial for you or discuss your needs.

Well, hey. I’m a noob when it comes to FreePBX and VitalPBX. But let me be the first to say you don’t always get what you asked for with a paid product, and the grass is not always greener on the other side.

FreePBX is NOT the EASIEST to use. By far. BUT it is SOLID and RELIABLE. I ran VItalPBX and FreePBX on identical setups with next to no users. VitalPBX would just up and crap out on a daily basis. And eventually, I would have to reinstall. And of course eventually, I got fed up.

FreePBX features are many and may have different names. Ring groups for example - I have 1 ring group that rings 12 devices in my house and whichever one I pick up takes the call. Sounds like what you described in VitalPBX.

FreePBX did not come with messaging out of the box. But with the help of a few industrious folks, I was able to establish internal SMS/Chat. Without using XMPP.

I think it comes down to the fact that you’ve taken a shine to VitalPBX and it suits your needs better. But if you truly wanted to do an apples to apples comparison, you’d have to run each PBX in detail side-by-side for a year to match features to features.

It’s easy to exclaim eureka when a software program works the way you think it should. But sometime after, you may realize that what you THOUGHT was the better way is actually clunkier and not as elegant. And when that day comes, with VitalPBX, you’ll have to wait for a release cycle. With FreePBX, you’re free to make the changes you want.

What’s more important to you is what matters. Out of the box ease of use, probably VitalPBX for most things but I never could get it to be reliable. For configurability, extensibility and reliability, FreePBX.

The advantage of a commercial product is that when it doesn’t work or fit your expectations, then the provider may fix your problem at no additional cost, this might unfortunately take months or years :wink:

The advantage of an open source product like FreePBX is that if you have a problem, the community will often respond to help you get your bearings, this also might take between minutes and never.

Please don’t confuse FreePBX with the Sangoma “Distro”, They are in the middle of the above, you accept a license for modules that are not part of FreePBX proper, yet add value. Some are free’ish, others need a paid license.

But without Sangoma , then FreePBX would be rudderless until adopted by another competent entity. (It has had various stewardship’s since asterisk@home)

Sangoma works largely hand-in-glove with the larger ‘open-source community’ , so you get the best of both worlds purely dependent on your choice/skill.

Witness these fora.

The truth is, that every open source project that didn’t have some method to support itself, failed.
So that’s why Sangoma needs to put advertisements into the FreePBX because there are resources necessary and costs to support it. So that’s why VitalPBX and other commercial vendors can afford to put none/less advertisements. As a side note, I haven’t found many ads in the FreePBX admin GUI; if you are worried about commercial modules showing up in the administrative settings, you can just uninstall the module, i.e. I won’t ever use PMS so instead of seeing that (and its ads), I removed that module via module management.

I agree that the whisper/listen/barge options from the front-end of FreePBX Administration are limited; i.e. other Asterisk-based systems such as GrandstreamUCM, VitalPBX, Zorcom etc. have much, much better configuration options for the whisper/listen/barge functions. Sangoma please improve that.

I prefer the FreePBX admin interface the current way it is as opposed to tabbed-based. Tabs have too many things going on at once and I believe the current way is much more logical (i.e. you can’t do THIS until you do THIS, then if you haven’t done THIS there will be a popup etc.), and it’s harder to navigate different tabs because you leave them open and forget. and then it’s hard to find which ones you left open and it generates a tabular mess which is not possible with the current FreePBX GUI.

Sangoma please DO add the better maintenance/cleanup option for the recordings. GrandstreamUCM also has a better maintenance option for that and CDR, BTW and it’s also Asterisk-based.
Also there’s no easy way to delete specific backups from FreePBX GUI, you have to go to CLI to do it or delete them all from the GUI. Please improve that, Sangoma.

1 Like

Calling FreePBX open source is just a technicality at this point. Over time there are more and more commercial modules and less and less open source modules. Sysadmin is pretty much mandatory and that’s all wrapped into commercial modules, closed source, and requires registration. It also wraps itself around the spine of open source modules like firewall so you can barely call that open source now because that dependency.

More and more ads creeping in to buy this sangoma product or that. Also, the signature system pretty much negates most benefits of open source because as soon as you make the slightest change it starts throwing tamper warnings. Yes you can disable that but still.

The Distro = commercial platform. Installing FreePBX in a non-distro environment is completely different. That is all the open source stuff only.

1 Like

My feedback from some users and customers from France.

What open source FreePBX users like is that it’s free, but not only! They also like being able to customize their dial plan, modify SIP headers, not pay to add a trunk or additional extensions.
Which is impossible with a locked product in the most of cases.
(for example). In my personal use I have over 12 extensions at home. With VitalPBX, do I have to pay a license to have 2 or 3 additional extensions only?
Today, minds are changing. I worked for an Alcatel distributor for 26 years, and there was a license everywhere. Customers have complained about it. Need to add extensions? Ok, give me your credit card please.
The asterisk being unlimited, why restrict it with an overlay? The number of extensions and trunk should be unlimited as well. It doesn’t make sense. I remember the same system based on Asterisk (NetxServ a 10 years ago or more) Same thing.
FreePBX is good for being free and getting your hands on the engine if needed. Customers love it!

It’s just a feedback :wink:

For any additional features the customers can send us a feature request if something is missing in the PBX system.

1 Like

I really like the misrepresentation that there are “less” open source modules. I think 16 was the first release without new open source modules. Sure there are more commercial modules but that didn’t take away any open source modules.
14 gave us calendar
15 Revamped backup and restore, GraphQL, File storage and some other things such as allowlist built by a community member to fulfill a long standing feature that many wanted. Also a few commercial modules were actually open sourced
16 didn’t have any new open source modules but did do a lot of plumbing work to bring PHP 7.4 compatibility.

At the end of the day what is open source will always remain so, that is how open source works. They may be putting more focus on commercial features but they are trying to pay the bills. The community at any point can build features and fix bugs, that is also how open source works.

I am no longer a staff developer for FreePBX but I have submitted several pull requests to add functionality and fix bugs. Not as much as I like but I have to pay my bills too :slight_smile:


Saying there are not less open source modules is slight of hand at best. Technically you can say OSS Endpoint Manager is still available. Does anyone still use it? Does it even work on FreePBX 16? I don’t know the answer because I gave up trying to develop anything for FreePBX. Can it be made to work? Maybe with some effort (?). Did Sangoma make that more difficult? Probably.

I don’t see anyone developing 3rd party modules for FreePBX or updating existing ones so there is probably a good reason for that. I would love to do some things with the API and even made my own PHP library for it as an experiment. After taking a good look at it I decided that I could not trust Sangoma to not cut me off at the knees when it was their best interest to do so. I see there is a commercial module for SMS that apparently uses the API so I am guessing there are some barriers to me using that part of the API for my own use, which is what I was initially looking at doing.

One more thing that is part of this same pattern to try lock developers out more and more. Not only is sysadmin wrapped around firewall module, you can’t alter firewall module at all. As soon as you do it stops working. I can’t remember exactly what happens but it was something that basically makes it impossible to try alter the firewall module.

The inevitable response will probably be “IT’s FoR yOUR pRoTectION”. Ok fine but if I turn off signature checking why does that not get turned off as well, or why is there no feature to turn that off? I don’t need that decision made for me.

Now that Sangoma has done that with firewall module I don’t see anything stopping them from doing that will all modules, effectively negating any and all ‘open source’ usefulness to 3rd parties.

OSS EPM is not a supported OSS module. What @jfinstrom was talking about was the built in OSS modules. Nothing has changed with those.

The open source endpointamager was a pet project of Andrew way back when it has always been community maintained. It is still heavily used by people who don’t use the distro such as piaf. There is no reason it shouldn’t work with 16 unless there is some old php that needs updating.

As far as 3rd party modules I have written 4 but unless you are using products or services from my company you wouldn’t use them.

There is a company called neth that does a bunch of 3rd party development for their platform and kicks back bug fixes.

If you watch the pull request on git you will see many community developers including myself pushing bug fixes and features.

I am guessing you aren’t watching the pull requests and commits.

Now I will say I don’t know if they are merging things back to 13/14/15 unfortunately I don’t know if the person managing module releases knows how to merge backwards. That said if your in 16 you should see most things that are happening

I will admit that I haven’t been paying attention to any of those things you mentioned. I work with a lot of open source projects, write a lot of PHP/javascript code, and do my fair share of pull requests. I don’t see much opportunity to do that with this project. I found some problems with the firewall module and was going to submit a pull request. That was until I found out that it stops working as soon I tried to make any changes to the code. Disabling signature checking does not disable that. That was a deal breaker for me.

1 Like

I think it is a feature (not a bug)…when any changes to the code of the firewall are blocked! :+1:
You get a warning that the firewall does not start. An email alert would be nice though…

If it’s a ‘feature’ then there should be a way to disable it.

Well one person saying they made changes to the firewall code and it didn’t work isn’t much to go with. The firewall module needs commercial modules such as System Admin to work. This could be a case of a hook into a commercial module not working right because it is sending (or not sending) data the other modules want/expect.

We would need more than “I made a change, it didn’t work” to go off of.

So the “feature” is a security mechanism in how hooks are run. In order for a module to run hooks it has to be signed and un-tampered. During development you can manually run the hooks. This is the same in any module that has hooks.

You are free to add a space to the PHP code and see for yourself what happens.