Serious Development Question


(Tom Ray) #1

So here is a serious question about the development of FreePBX. What is actually going on with it? I ask this with all seriousness because on April 13th there was an announcement for the BETA release of FreePBX v15 and at the end of the announcement we got:

Parting Words

In the next few months you’ll be hearing from me again as we release High Availability 14 and announce our stable release of FreePBX 15.

Andrew Nagy, On behalf of the FreePBX Team

That was followed up by another announcement within 30 days that Andrew had left Sangoma. Now perhaps in that 30 days Andrew decided to leave Sangoma but I’m going with that on April 13th it was known (internally) he was gone in the next 30 days. So who was going to be making that followup announcement?

It’s now been pretty much five and a half months and there is still no announcement on HA 14 or a stable release date for v15. Now come on just between us Sangoma, is there actual dates for either of those two at this point? Do you have them circled on a calendar?! I mean AstriCon is 60 days out, is there any real expectation of either of these items being ready by then?

Both the new HA module and v15 have been toted and pushed in some form by Sangoma reps since the release of v14 two year ago. The official announcement for v15 almost a year ago. Again, I ask, are there actual release dates scheduled for either of these items?

Like I said this is a serious question so if the official answer is more of the “coming soon” reruns then that pretty much (to me) says there’s no real plan for either being put out.


(Matthew Fredrickson) #2

Hey Tom,

Great questions, maybe I can provide a little bit of insight into the answers.

The short answer is that the QA testing and fixing process for the FreePBX 15 release has taken much longer than expected. In QA testing, there were a number of non-trivial bugs in the rewritten backup & restore functionality that were uncovered. Some of them were module specific, and some were more global in scope. Working through them is taking more time than I think anybody anticipated. There was a question of whether or not the issues should qualify as release blockers, but due to the fact that the backup and restore rewrite was meant to be an important part of FreePBX 15 we decided to try to get as many resolved as possible prior to release.

From a FreePBX 15 release date perspective, I guess we could call it released whenever we want - the code is open source and so the current state of the beta is testable and usable by anybody that wants to use it, even how it is right now, bugs and all, but I personally would rather see us knock out the larger issues that came up in the QA process before calling it released.

As far as HA goes, that is still something we’re working on. Due to the loss of Andrew and others, we have had to focus a lot more on FreePBX 15 related issues and so we’ve had a bit less bandwidth available than we had before for engaging on the HA work - not saying it’s completely stopped, just we’re a bit more stretched from a team perspective. Additionally, the old solution seemed to work well within the requirements that it was built for, but when Sangoma support had to get involved it was found to be very challenging to support. Those are some areas that we’d like to improve in any successor to the current implementation. I wish I had a better answer than that right now, but it’s all I have.

Best wishes,
Matthew Fredrickson


(Tom Ray) #3

@mattf Well I’ll be honest with you, that was a better response than I expected. I was hoping that the stall in v15 was the fact it was being solidified more Especially the Backup stuff since that module has been a mess for a very long time.

I think this can clear up some speculation and help ease some people that were wondering where things stood. I appreciate it.


(Chris Dolese) #4

matt put it very well.

backup was a disaster and demanded whats become a re-write

any pounding on it you or other members of the community can perform is appreciated - this was an important promise to deliver wrt to the ability to restore previous versions on current


(James Zhu) #5

keep moving.


(Dave Burgess) #6

This is a huge understatement. We still get way too many “restored from backup and my system is FUBAR” on the forum. The old system was terrible, and I have no doubt in my mind that it shaved off considerable market share.


#7

What’s the point of dog-piling? He said they’re working on it…

Nobody wants to bother with filing tickets when they are in a crisis but seriously I doubt any of that useful data got back to the team in order to help fix the B/R system.


(Dave Burgess) #8

Not trying to “dog pile” - trying to amplify and give a user perspective. The backup and restore module was the, by a huge factor, worst part of using FreePBX. The limitations were counter intuitive and it sometimes didn’t work even when all of the prerequisites were satisfied. Holding off the Version 15 release to get it right is probably the best decision the team could have made. The only thing that would have made it better is letting us all know that’s what the hold-up was a couple of months ago.

I don’t know if you’ve noticed, but I try to support the team here as much as possible. If that’s a problem, I can stop.


#9

Everyone appreciates forum help. My point was the team doesn’t spend as much time on the forum as you or most users do but they do see the JIRA tickets so the more data that flows that way the better when it comes to serious bugs.


(Tom Ray) #10

The problem with Backup/Restore, in this particular case, is the fact the dev team at FreePBX have known for a long time Backup/Restore was a mess. They have admitted in various conversations that this module needed huge love and updates because of it being just more and more code stacked on itself vs cleaning up code and streamlining it.

But this now just highlights another issue with FreePBX, the amount of people dipping into the Kool-Aid and nothing knowing the flavor. Just look at this threads on this forum, there is a serious case of blind faith that (to me) is misplaced. There seems to be those in the community that thought (and probably still think) that the Schmooze Crew could do no wrong and that they were the bee’s knees. Yes, they did do a lot and yes they brought out some very, very nice things in FreePBX. However, they are not flawless and FreePBX is not flawless. It is quite interesting to see people complain about a bug that is screwing things up and then praise the dev’s for fixing it and giving it their all. Uhm, how do you think that bug got there in the first place?

Hell, people are already attributing the lack of updates to the fact the Schmooze guys are gone. Folks, talk a look at Asterisk or other major projects out there. They aren’t releasing updates/bug fixes almost weekly because that’s a PITA and just causes more problems than anything. It also doesn’t help the case of the project because “Yeah, they release something and then two weeks later you have to update to get bug fixes. Then in another week more bug fixes and in two weeks I’ll have more bug fixes.” I mean it is quite interesting to see a community goes nuts and think a project is dying or stopped because they aren’t updating their systems almost weekly with bug fixes. That is some weird mentality to have with a project.

Take a step back and look at the project from the outside. It’s running on a six year old release of Apache (which has numerous security flaws). It’s running PHP5.6 even though PHP7 was release two years before v14. Most of the other dependencies are running out of date versions. The UCP overhaul never got all the updates and features (like having user templates for the UCP) that were promised to be in the stable release of v14. Two years later and even in v15, they don’t exist.

Even worse, users that paid $3,000 for a module are stuck on a distro release that is even more out of date then the current release. Why? Because the module was so freaking broken that it couldn’t move to anything else. Even worse than all that, those users are basically being force to stay on a distro release that doesn’t even really get maintained.

Just look at things in the last couple of years. Backup/Restore being a mess, HA broken, poor QA processes allowing really stupid bugs to get released. Instead of actually working on those what did we get instead? FreePBX now has a DHCP server, it has wireless support, we got Hotel PMS (yeah, highly used), we got the RMS failure. Oh and a broken v13 to v14 upgrade process (that would brick machines) for like 4 months after being released.

So to sit here and say they would only be aware of issues if there is a ticket for it is BS, they know very well what their major issues are. Instead of addressing those issues they decided to bring out a bunch of shiny new things to show you in their right hand so you’d forget about all the broken stuff they have in their left hand. The art of misdirection.

That all being said, I am rather hopeful now with @mattf at the helm of FreePBX. He did excellent work on Asterisk and I’m excited to see that translate to FreePBX.


(Itzik) #11

In defense of Sangoma/FreePBX, most (if not all) backup catastrophes were scenarios where users restored on a system that is not the same version as the backup was made on. Yes there are known issues like restoring by uploading through the GUI etc.

But I agree with the fact that a lot of things aren’t taken serious.
Google Voice stopped working more than a year ago, can someone explain why there wasn’t included in the next update a script to delete the module and delete all config files under /etc/asterisk ? Several users had issues because of this, and same goes to RMS and other modules that there’s currently ZERO use out of it.

There was a topic with close to 300 posts from the developers asking the community what they would like to see in FreePBX 15, I don’t think any of the suggestions posted made it into FPBX 15 besides Backup and the API which was mentioned in the introduction post.

Again, don’t get me wrong, the current version of FreePBX offers a ton of features, pretty stable, still open source which allows you to do integrations of your own.

But here’s the bothersome part, most commercial modules work great, but you can’t setup a PBX with commercial modules and charge from a client money and then have the commerical module crash.
We had this experience with VQPlus callback, it was heavily used and crashed randomly, initially Sangoma charged us credits because “configuration setup help is not included in commercial module support”… and after arguing with the tech that he didn’t guide us, made any frontend changes or something that’s documented in the wiki, they stopped charging us.
Then the tech stated that in order VQ Plus should run properly we should restart it very frequently, or try to upgrade to edge every time is crashes… What?
Finally after 4 months of back and forth they released a fix which is stable since mid June.

Same goes to UCP. It was beautifully rebuilt for FreePBX 14, but some features that were in 13 are gone, like entering a phone number and originating a call, clicking on placed calls to originate the call.
It’s 2019, I think UCP would be a solid product and people would ditch Softphones and use just UCP.
But currently, you gotta have big luck to get this UCP phone to work, and if you do get it to work you can’t transfer, conference or do similar basic phone tasks.
There’s no way users can have a shared contact list where they themselves can add contacts in UCP.
There’s no way users can share a fax number like you can do with Voicemail.
Yes, UCP is mainly working fine, but these few incomplete features are what’s holding back several admins from rolling UCP out to users for official use.

In other words, if we pay for something we expect it to work.
And if you guys are offering a paid version of UCP with the mentioned features (including Queue Wallboard) we’d very likely buy it today. Even a per user license.

You say zulu, zulu might be a solution, but the last time we installed it, it messed up FollowMe on the extensions that had Zulu, so I’d wait until it’s fully stable and then try installing it again.

To summarize: in our eyes things are taking very long, we didn’t see in the last I don’t know how long major development improvements, and there’s a lot of unfinished stuff which left us admins frustrated.

Again, the development team seem like very nice people, I personally got a lot of help from them here on the community, Lorne’s how to’s posts and knowledge are giving us better ideas everyday!

Perhaps there’s a lack of code contributers?


(Tom Ray) #12

I highly doubt that. FreePBX has gone beyond being “contributor” based there are actual developers, QA and others on staff earning paychecks for this project. Since this is a driving leader product for Sangoma (ie bring them in for commercial or PBXact) then having it depend on random code contributors is one of their issues then. That should never be the case.

Schmooze and Sangoma was/are corporations with many holdings. This idea that FreePBX, in its current state, needs more community coders is just getting out of hand.


#13

Is FreePBX open source (yes) or is it commercial (yes)? Does it rely on community contributions (yes) or paid developers (yes)? I think it’s in a weird place due to this dual nature, though I don’t really know what to do about it. I probably wouldn’t contribute a lot of major code to it if I’m getting $0 but Sangoma is using my work to make a profit.

As far as the idea of “I paid good money for this phone system and expect it to just work” - I think Switchvox, which is fully commercial, is probably the better purchase, and has a lot of the nice user-facing features that are often brought up. But I have no direct experience with it.


(Joshua C. Colp) #14

Disclaimer: I don’t work on FreePBX and don’t participate on the team (I just watch what’s going on, across what seems like the entire company at times ha).

While code contribution is certainly important in a project it is by no means what completely makes a project or a product. Code quality and the processes that surround them are equally as important. This is something that occurs as a project grows, picks up users, finds mistakes, and adapts. It’s what happened to Asterisk itself. We went through similar things, learned, grew, and ultimately became something that I never thought we would - a project which is able to accept new features into release branches, where the first release of a new version is uneventful from an issue perspective, and where users can depend on our core functionality to work as they need and want.

I’m confident that FreePBX can go down a similar path like Asterisk, finding that balance and providing a good solution for everyone.


#15

a project which is able to accept new features into release branches, where the first release of a new version is uneventful from an issue perspective, and where users can depend on our core functionality to work as they need and want.

Hail to that, for it is an increasing rare thing. Thank you.

FreePBX has come light years from where it was when we first started implementing it, in several ways and most importantly code quality.

We’ve actually had the unfortunate need to use the backup/restore module quite a few times over the years, and once we learned its, uh, sensitivities, found it to be pretty reliable.

We do somewhat urgently need a way to get Hyper-V hosted v13 systems upgraded. Right now the only somewhat viable path seems to be to perform a V2P restore, upgrade with the module, then P2V back. I understand the in-place upgrade won’t work due to limitations in the underlying OS, not a FreePBX limitation. And still, we need to get the older systems current. Have been pinning my hopes on the “restore from any version” feature that now sounds like it’s causing dev fits.

Please do keep the emphasis on quality. On a near-daily basis we’re watching MS and other profit-driven software companies burn up customer and partner goodwill by shipping crap and letting the carnage happen. Be other than that. It makes everyone happier.


#16

A nice post @jcolp

You company acquired both Asterisk and FreePBX in relatively recent times.

We (as a woolly user group) can download the source code for asterisk and compile it on most any GNU/linux system with current c/c++, including some pretty esoteric hardware, nice work!!

If you can encourage the same ethos into your FreePBX peer guys if you see them on Tuesdays, I for one would think that a great accomplishment.

Two basic road blocks I see for that part of your company are php and zend, one has moved way beyond “a long time ago”, and the other has given up on moving forward.

Disclaimer: I am a Debian (latest) and Raspberry Pi (latest) kind of guy, We can coerce open-source bits of FreePBX 13/14 into both but is getting effing increasingly painful and surely your company will benefit in the future by allowing commercial modules in those deployments . . .

JM2CWAE


(Jared Busch) #17

I’m not confident that Sangoma can get anything done with FreePBX at this point.

FreePBX 15 has been stalled as mentioned.

CentOS 8 is coming out soon and Sangoma should already be working on that. But we know that they are not.

Nothing at all is being done on PHP7 other than asking the community to beat on it. CentOS 8 will ship with PHP7.2 last I read.

Apache… Gods the old. This has already been beat on here.

The entire line about only knowing things from tickets. That is absolute BS. It is simply Sangoma shifting blame to us. Bug reports are totally unsearchable in any intelligible fashion. If they were, they would be in the Google results. But those are always community posts. So that is where people post.

If Sangoma only wants their people to work off of tickets, well then hire a community rep whose job is to be here in the community and get valid posts with issues turned into tickets. Also the ticket submission form is horrible anyway. I’m sure plenty of things never get made because no one wants to wade through it.

That brings the subject to commercial modules. Even if someone takes the time to post an actual issue that turns out to be a commercial module, what happens? Sanbgoma closes the ticket with a big smeg off. Saying to go do it all again on this super convoluted process within your Sangoma portal instead. What? WTF?

Yeah, this is all my point of view, but these are all pretty generic points.


(Jared Busch) #18

This always. The help I have received in the community from employees in the commnity lik @lgaetz has been great.

I always try to push my solutions back for other to gain the benefit of my progress through an issue.


(Tom Ray) #19

I know people keep pointing this out like it makes a difference. Since SNG7 (v14) the OS has be derived of RHEL. Distro 6 (v13) and below are CentOS derived. It doesn’t matter that CentOS 8 is coming out, the distro is not derived from it.

It’s currently RHEL7.5 derived.


(Jared Busch) #20

I gave them the benefit of the doubt. RHEL 8 was released on May 7, 2019 and still ships with PHP 7.2