We’ve been scratching our head for a good way to commemorate Micro$oft’s $7.5 billion purchase of GitHub which has served as the linchpin of the open source development community for many years. We’ll leave it to others and history to judge whether this was a good idea or not. What we came up with was a GPL Toolkit for Incredible PBX 13-13 that makes it child’s play to upgrade FreePBX® GPL modules in our Incredible PBX® 13-13 offerings for CentOS/SL, Ubuntu, and Raspbian using the FreePBX GitHub repository. Because Incredible PBX platforms don’t use module signature checking, it was fairly simple to design an upgrade methodology that leverages the FreePBX 13 module offerings posted on GitHub. While these modules would cause all sorts of module signature alarms to go off if used with other distributions, with Incredible PBX, implementation is straight-forward and painless.
To get started, log into your Incredible PBX 13-13 server as root and issue the following commands to download the GPL Toolkit:
cd /root wget http://incrediblepbx.com/gpl-toolkit.tar.gz tar zxvf gpl-toolkit.tar.gz rm -f gpl-toolkit.tar.gz
Once the install finishes, you’ll end up with 7 scripts: gpl-module-list-full, gpl-module-list-fpbx, gpl-module-list-contrib, gpl-download-fpbx, gpl-download-contrib, gpl-install-fpbx, and gpl-install-contrib. As the names suggest, the gpl-module-list-full provides a simple way to list ALL FreePBX GPL modules (Sangoma-produced and contributor-produced) which are available for download from GitHub. And that will be your starting point whenever you wish to install or upgrade a FreePBX module in Incredible PBX 13-13. You will note that modules fall into one of two categories: fpbx or contrib. The reason is because Sangoma has chosen to store the modules in two separate user accounts on GitHub. So you first must decipher which repo houses the module you wish to download or install. Once you’ve figured that out, you can choose to either manually download and install the module (gpl-download) or automatically download and install the module (gpl-install). The syntax is simple. Use either
/root/gpl-install-fpbx modulename for Sangoma-produced modules or
/root/gpl-install-contrib modulename for contributor-produced modules.
Cautionary Notes. Updating a few FreePBX modules may cause problems with Incredible PBX 13-13 because of modifications that were made when the distribution was initially developed. So steer clear of the modules blocked by the install script. Aside from those few exceptions, the remaining modules should work well without causing any problems. Be advised that you should always update the framework module before attempting to update the core module. We’ve tested all of the Sangoma releases shown below, but that’s not to say something can’t come unglued down the road. With contributor-produced modules, Sangoma doesn’t vouch for them, and neither do we. HINT: It is ALWAYS a good idea to make a good backup of your server before venturing into uncharted territory.
Adding a few FreePBX modules may reset the Module Signature Checking flag. If this should happen to you, simply reset the Enable Module Signature Checking flag to NO in Settings: Advanced Settings. If this doesn’t fix the issue, issue the following command after logging into your server as root:
Taking the GPL Toolkit for a Spin. There have been some reported bugs in a few of the default Sangoma-produced modules in the Incredible PBX 13-13 build so let’s tackle those to demonstrate how easy this new upgrade process actually is. Using the gpl-module-list-full script, we would have deciphered the names of the modules we wanted to upgrade as superfecta, bulkhandler, and phonebook. So, after logging into your server as root, issue these gplinstall commands:
/root/gpl-install-fpbx superfecta /root/gpl-install-fpbx bulkhandler /root/gpl-install-fpbx phonebook
Where To Go From Here? The next step in your adventure should be to learn a bit about each of the available GPL modules for FreePBX including when each module was last updated. You can do that by visiting Sangoma’s FreePBX repo on GitHub and the FreePBX contributor’s repo on GitHub. We’ve always found it’s a smart idea to build a second Incredible PBX 13-13 server with either VirtualBox or an inexpensive cloud facility to use as a sandbox for experimentation. There are lots of Nerd Vittles articles to show you how. Then you don’t have to worry about damaging your production server until you first have verified that the upgrades don’t introduce problems of their own. Enjoy!
Support Issues. With any application as sophisticated as this one, you’re bound to have questions. Blog comments are a terrible place to handle support issues although we welcome general comments about our articles and software. If you have particular support issues, we encourage you to get actively involved in the PBX in a Flash Forums. It’s the best Asterisk tech support site in the business, and it’s all free! Please have a look and post your support questions there. Unlike some forums, ours is extremely friendly and is supported by literally hundreds of Asterisk gurus and thousands of users just like you. You won’t have to wait long for an answer to your question.
Need help with Asterisk? Visit the PBX in a Flash Forum.
Special Thanks to Our Generous Sponsors
FULL DISCLOSURE: ClearlyIP, Skyetel, Vitelity, DigitalOcean, Vultr, VoIP.ms, 3CX, Sangoma, TelecomsXchange and VitalPBX have provided financial support to Nerd Vittles and our open source projects through advertising, referral revenue, and/or merchandise. As an Amazon Associate and Best Buy Affiliate, we also earn from qualifying purchases. We’ve chosen these providers not the other way around. Our decisions are based upon their corporate reputation and the quality of their offerings and pricing. Our recommendations regarding technology are reached without regard to financial compensation except in situations in which comparable products at comparable pricing are available from multiple sources. In this limited case, we support our sponsors because our sponsors support us.
BOGO Bonaza: Enjoy state-of-the-art VoIP service with a $10 credit and half-price SIP service on up to $500 of Skyetel trunking with free number porting when you fund your Skyetel account. No limits on number of simultaneous calls. Quadruple data center redundancy. $25 monthly minimum spend required. Tutorial and sign up details are here.
The lynchpin of Incredible PBX 2020 and beyond is ClearlyIP components which bring management of FreePBX modules and SIP phone integration to a level never before available with any other Asterisk distribution. And now you can configure and reconfigure your new Incredible PBX phones from the convenience of the Incredible PBX GUI.
VitalPBX is perhaps the fastest-growing PBX offering based upon Asterisk with an installed presence in more than 100 countries worldwide. VitalPBX has generously provided a customized White Label version of Incredible PBX tailored for use with all Incredible PBX and VitalPBX custom applications. Follow this link for a free test drive!
Special Thanks to Vitelity. Vitelity is now Voyant Communications and has halted new registrations for the time being. Our special thanks to Vitelity for their unwavering financial support over many years and to the many Nerd Vittles readers who continue to enjoy the benefits of their service offerings. We will keep everyone posted on further developments.
Some Recent Nerd Vittles Articles of Interest…