FreePBX 15 Released!

After a lengthy development and testing period, FreePBX 15 has been officially released! We’d like to congratulate the FreePBX teams that made this release happen for yet another fantastic iteration and evolution of FreePBX, as well as Sangoma for being a solid steward and keeping the project moving forward.

Read the announcement from the FreePBX team here: https://www.freepbx.org/freepbx-15-is-released/

So What’s New?

Apart from the hundreds of minor updates, bug fixes, and tweaks you may not immediately notice, here are some highlights of what’s new in FreePBX 15:

Backup & Restore, and new Filestore module

The Backup & Restore module is a complete ground-up rewrite, and can now support restores from some older FreePBX versions. Backup & Restore now uses the new Filestore module which uses the Flysystem library to allow support for a number of different storage locations, including Local, FTP, SSH, Dropbox and Amazon S3. More technical details about the Backup & Restore module rewrite can be found in the Beta announcement posted in April: https://www.freepbx.org/the-beta-release-of-freepbx-15/

One thing to take note of is that pre/post backup hooks are no longer supported.

Performance Improvements

Over the course of the past few months the FreePBX Team has embarked on an effort to make FreePBX more nimble and efficient. Spearheaded by former lead developer Andrew Nagy, this effort has enabled pretty dramatic gains in efficiency, allowing more complex workloads to occupy smaller systems, and allowing larger systems to do even more. You can hit up the following link for specifics: https://www.freepbx.org/performance-improvements-in-freepbx/

In addition to those noted improvements, the Asterisk user’s crontab has been overhauled resulting in more efficient handling of modules’ scheduled tasks.

GraphQL API and API module

FreePBX 15 includes a “technology preview” of a new GraphQL API that aims to greatly improve the ability to interact with FreePBX programmatically. If you’re not familiar with GraphQL, it was developed by Facebook and allows for far more specificity than with REST, SOAP, etc. You can write far more efficient and targeted queries to return limited data sets rather than having to return and parse a much larger volume of data.  Learn more here: https://www.freepbx.org/graphql-support-in-freepbx-15/

Additionally, FreePBX 15 has a new API module that provides an interactive API explorer, access / scope controls, documentation and more. Read more about the new API module here: https://wiki.freepbx.org/display/FPG/API

Upgrading from FreePBX v14 / Deploying FreePBX v15

We will publish an upgrade guide soon, however for the time being we are not yet upgrading most of our production systems. FreePBX v14 is still fully supported and we like to allow at least a good 1-2 month of GA prior to jumping all in on a new release.

We expect to have v15 templates available on our virtual infrastructure before the end of 2019. If you do want to upgrade from v14 now, you can use the Version Upgrade utility. We recommend doing this via the Linux command line. Alternatively, you can spin up another FreePBX VPS and upgrade to v15, then test importing your v14 backup to see if everything works smoothly.

Be sure to perform a full backup prior to upgrading, be careful about upgrading production systems, and do not plan on going anywhere until the upgrade is done.

Instructions

Install Version Upgrade Module:

fwconsole ma downloadinstall versionupgrade

Perform the upgrade:

fwconsole versionupgrade --upgrade