We haven’t done anything like this thus far (at least since I have been with the project) but as FreePBX project lead I thought it might be good to summarize and cover a few notable achievements this year in FreePBX land. While we as a project are continually working to fix bugs and improve functionality, sometimes those day to day efforts are missed unless you follow issues.freepbx.org or git.freepbx.org closely. This hopefully will provide a way for people to see what’s happening not just at the time we make major releases (FreePBX 14 to FreePBX 15, for example), but incrementally as we progress towards the next major release.
Items of note:
- Support for Improved Module Signing Key
- 911 Improvements
- Release of the Call Accounting Module
- Follow-Up 911 Improvements
- Chan_sip to Chan_pjsip Conversion Tool
- Ongoing Investment to FreePBX 15 Backup and Restore Functionality
- EPM Firmware Management
- Asterisk 17
- Dedicated QA team
- PBXact 15 – coming up
Support for Improved Master Signing Key
As mentioned in our blog post at the beginning of the year, we added support for a new module signing key for FreePBX modules. The previous key was created a few years ago and we felt it would be good to add support for a new version of the master key with a key length that better aligns with current best practices (4096 bits). This does not mean that the old key has been deprecated, only that we allow module signing with both keys for the time being. If for some reason the original key becomes compromised, this also allows us to more easily migrate to the newer key without significant technical hurdles.
There also has been a lot of work done to support new laws and regulations around the Ray Baum Act and Kari’s Law. This included the ability to have location data associated with specific SIP extensions and making the 911 notification support in the Paging Pro freely available to FreePBX users so that they can better comply with the terms of those pieces of legislation. A best practices wiki page was also added to help FreePBX administrators to configure their FreePBX instances to make them better compliant and can be found at https://wiki.freepbx.org/display/FOP/Set+up+Emergency+Service%28E911%29+calling+requirements
Release of the Call Accounting Module
We also just recently released the new Call Accounting module for FreePBX. This module has been a long time in the works, but we’re finally ready to go to release with it. It adds functionality to FreePBX to better track inbound and outbound call usage across trunks, users, and user groups. You can find more information on the freepbx wiki at: https://wiki.freepbx.org/display/FPG/PBX+Call+Accounting+Module
Follow-Up 911 Improvements
There were a number of goals we had wanted to hit as part of the original 911 feature set at the beginning of the year, but one or two items missed our initial target dates. One of those was the ability to do email notifications on specially marked outbound routes (presumably routes that would match emergency numbers in your local area). We already had functionality to make a call to notify an administrator that an emergency number had been dialed, but with this, an administrator can also send out an email notification to inform a designated point of contact that an emergency call had been dialed. This gives FreePBX administrators more options in how they can do emergency call notifications and how they can better meet their respective local telecommunications requirements. You can read more about this improvement here: https://www.freepbx.org/freepbx-features-add-email-notifications-to-your-outbound-routes/
chan_sip to chan_pjsip Conversion Tool
In addition to the above, we’ve recently added support for a new bulk conversion tool to help administrators convert their extensions from chan_sip to chan_pjsip. As mentioned on the forums and in other places, it is very important that users make the transition from chan_sip to chan_pjsip. From an Asterisk perspective, chan_sip was marked as deprecated in Asterisk 17 and has no current maintainer. This means that bug fixes and improvements are not being made to that channel driver. Chan_pjsip is the newer SIP stack in Asterisk used to talk to SIP endpoints. It is multithreaded and much more scalable compared to chan_sip and has become quite mature and is very actively maintained. It is important for these reasons to start migrating any legacy chan_sip endpoints over to chan_pjsip. If there are any issues in that process, feel free to raise a bug at issues.freepbx.org (for FreePBX issues) and issues.asterisk.org (for Asterisk issues). You can read more about using the conversion tool at https://www.freepbx.org/new-tool-to-assist-converting-from-sip-to-pjsip/
Ongoing Investment to FreePBX 15 Backup and Restore Functionality
Rewritten Backup and Restore functionality was a major part of the FreePBX 15 release and a highly sought after feature from a community perspective. This functionality allows migration from FreePBX 14 or FreePBX 13 (and in many cases even older versions of FreePBX) to FreePBX 15. While we put quite a bit of effort into making things run well in preparation for the FreePBX 15 release, there have been some great follow up issues that have been reported since that time that we have continued to invest time and effort to further solidify this code and make the functionality more robust. We will continue to invest effort into making this feature robust and trustworthy.
EPM Firmware Management
We have also added support to be able to do custom firmware management within EPM. Previously this had a few manual steps and was generally a less than pleasant experience. Now this can be done directly from the UI in a more supportable manner. This will allow administrators who wish to test firmware versions that haven’t been QA’d yet by the FreePBX QA team and deploy them to phones as desired. More information can be found about this feature here: https://community.freepbx.org/t/epm-custom-firmware-in-endpoint-manager/65012
We also added support for Asterisk 17 to FreePBX. This allows FreePBX module developers to take advantage of some of the new ARI and video functionality in Asterisk 17 within the context of FreePBX. It also allows users to be able to to test and use the latest standard release of Asterisk, giving them the opportunity to provide valuable feedback upstream to the Asterisk development team about how their system runs when using that version of Asterisk.
Dedicated QA Team
Prior to this, there was a common QA team that was shared across all groups of Sangoma products and services. Now, there is a dedicated QA team that exclusively works on the needs and interests of FreePBX. This allows them to more intently focus on testing FreePBX (and PBXAct) with the goal to keep trying to raise the bar with release quality.
The release of PBXAct 15 has not been announced yet, but it is nearly finished with the approximately 6 month testing process that takes place prior to release. Due to some differences with FreePBX 15, there were some changes that had to be made to infrastructure and other pieces specifically in preparation for a full PBXAct 15 release. These changes as well as the general testing mentioned above are nearly complete and we should see the release of PBXAct 15 soon.
I hope that you all have enjoyed reading this overview and perhaps gained insight into some of the FreePBX development team’s more recent efforts. There were many more possibilities to choose from in terms of topics, but I had to pick just a few to keep this post from being too long. As project lead of the FreePBX project, I am continually humbled by the amount of time and effort that people put into helping the project be successful. I want to also thank all of you that work to contribute to the FreePBX project at the many different levels necessary to sustain a strong and successful open source project – code contributors, helpers on the community forums, those that submit wiki documentation, and any other areas that I have not mentioned.
For any questions about the project or any of the information above, feel free to post a question to the community forums at community.freepbx.org.
Best wishes to you all,
FreePBX Project Lead