Home » Search results for 'allison ivr' (Page 8)

Search Results for: allison ivr

The Most Versatile VoIP Provider: FREE PORTING

The Two Amigos on Cloud 9: Introducing Incredible PBX for Elastix @ RentPBX

DEC. 7 NEWS FLASH: The Elastix project has been sold to 3CX. Elastix 4.0 and Elastix MT have been removed from production "due to a legal disagreement with another open source distribution."

We continue the Gotcha-Free PBX adventure today with an open source alternative for which many have been clamoring, another affordable Cloud-based Asterisk® platform with the no-strings-attached Elastix 2.5 GUI. In addition to a $15 a month hosting plan, the icing on the cake is the quick 10-minute automated setup on your choice of a dozen servers throughout the U.S. as well as Canada and Europe. If you can find the Enter key on a keyboard, then you can handle the complexity of the RentPBX setup for Incredible PBX for Elastix 2.5. When you’re finished, you’ll have a turnkey PBX featuring some terrific open source software. The software is all free, subject only to the terms of the open source licenses.

Target Audience: Home or Office in need of a turnkey, Gotcha-Free Elastix PBX in the Cloud

Default Configuration: Asterisk 11 with enhanced Elastix 2.5 GUI

Platform: CentOS 5.11 running on RentPBX Cloud-Based Server platform

Memory: 400 MB with 415 MB swap

Disk Size: 20 GB

Default Trunks: CallCentric, DIDlogic, Future-Nine, IPcomms, Les.net, Vitelity, VoIP.ms, Gvoice1

Feature Set: Fax, SMS messaging, NeoRouter/PPTP VPN, Reminders, ConfBridge Conferencing, AsteriDex, Voicemail, Email, IVR, News, Weather, Voice Dialer, Wolfram Alpha, Today in History, TM3 Firewall WhiteList, Speed Dialer, iNUM and SIP URI (free) worldwide calling, DISA, Call Forwarding, Tailorable CDRs

Administrator Utilities: Incredible Backup/Restore, Automatic Updater, phpMyAdmin, Timezone Config, WebMin, Admin Password Configurator, ODBC/MySQL Database Configurator, Firewall WhiteList Tools

Getting Started with Incredible PBX for Elastix 2.5 (Cloud Edition)

Here’s a quick overview of the installation and setup process for Incredible PBX for Elastix 2.5 @ RentPBX.com:

  1. Sign Up for Incredible PBX for Elastix 2.5 in the Cloud
  2. Complete the Install of Incredible PBX with two automatic reboots
  3. Set Up Passwords for Incredible PBX
  4. Configure Trunks with Incredible PBX
  5. Connect a Softphone to Incredible PBX
  6. Configure SMTP Mail for Incredible PBX

1. Sign Up for Incredible PBX for Elastix 2.5 in the Cloud at RentPBX.com

Visit RentPBX.com and choose the Elastix build option. Then complete the following steps:

Step #1. Select a location for your cloud-based server.

Step #2. Choose Elastix 2.5 IncrediblePBX Ready option.

Step #3. Specify a hostname for your server.

Step #4. When you begin the payment/checkout phase, enter your coupon code to take advantage of the $15/month discounted rate: NOGOTCHAS. Wait for the confirmation email with your server credentials and dedicated IP address.

2. Complete the Install of Incredible PBX

Nothing tricky here. It’s a 10-minute automated setup. Log into port 20022 of your server as root with your default password using SSH or Putty. Once you’re logged in, RentPBX will go through two setup cycles to complete the install and randomize all of your passwords for Incredible PBX. The first pass addresses some security vulnerabilities in the Elastix 2.5 base install and then prompts for the MySQL root password which must be passw0rd (with a zero). Next, you’re prompted to set up an admin password for the GUI. Make it secure! Then your server will reboot. After 60 seconds, log back in to port 20022 as root with your default password again. Type y to install Incredible PBX. Incredible PBX will first apply the latest upgrades for CentOS and Elastix. Be patient. The list is a long one. After the second reboot, log back into your server on port 20022 as root one final time and let Incredible PBX complete the install and secure your server. You’ll need to enter your MySQL and GUI passwords once again. Be sure to use passw0rd for MySQL! After the third reboot, log back into your server on the standard port 22 as root. Allow Incredible PBX to run its Automatic Update Utility to bring your system current. That’s it. You now have a secure, turnkey Elastix® PBX that’s ready for use.

3. Initial Configuration of Incredible PBX for Elastix 2.5

Incredible PBX is installed with the preconfigured IPtables Linux firewall already in place. It implements WhiteList Security to limit server access to your server’s IP address, your desktop computer’s IP address, and a few of our favorite SIP providers. You can add additional entries to this WhiteList whenever you like using the add-ip and add-fqdn tools in /root. There’s also an Apache security layer for web applications. And, of course, Elastix 2.5 has its own security methodology. RentPBX randomized extension and DISA passwords as part of the initial setup process. Out of the starting gate, you won’t find a more secure VoIP server implementation anywhere. After all, it’s your phone bill.

Even with all of these layers of security, here are 5 Quick Steps to better safeguard your server. You only do this once, but failing to do it may lead to security issues you don’t want to have to deal with down the road. So DO IT NOW!

Log into your server as root with your root password and do the following:

Make your root password very secure: passwd
Set your correct time zone: ./timezone-setup
Create admin password for web apps: htpasswd -b /etc/pbx/wwwpasswd admin newpassword
Make a copy of your other passwords: cat passwords.FAQ
Decipher IP address and other info about your server: status

Using a browser, you’re not ready to log into the Elastix 2.5 GUI with your new admin password.

4. Activate Trunks with Incredible PBX for Elastix 2.5

For those migrating from another aggregation including PBX in a Flash, this should be familiar territory for you. Using a browser, log into Elastix 2.5 at the IP address of your server. Before you can actually make or receive calls outside your PBX, you’ll need at least one trunk. In the Elastix 2.5 GUI, click PBX -> Trunks. Once you have your credentials from a provider, choose a provider from the list of preconfigured trunks on the right or create a new one. If you’re using one of the preconfigured options, remember to enable the trunk after adding your desired CallerID and credentials. Then save your settings and reload your Asterisk dialplan. That’s it. You’re ready to go.

5. Configure a Softphone with Incredible PBX for Elastix 2.5

Incredible PBX comes preconfigured with two extensions (701 and 702) that let you connect phones to your PBX. You can connect virtually any kind of telephone to your Elastix 2.5 PBX. Plain Old Phones require an analog telephone adapter (ATA) which can be a separate board in your computer from a company such as Digium. Or it can be a standalone SIP device such as ObiHai’s OBi100 or OBi110 (if you have a phone line from Ma Bell to hook up as well). SIP phones can be connected directly so long as they have an IP address. These could be hardware devices or software devices such as the YateClient softphone. We’ll start with a free one today so you can begin making calls. You can find dozens of recommendations for hardware-based SIP phones both on Nerd Vittles and the PIAF Forum when you’re ready to get serious about VoIP.

We recommend YateClient which is free. Download it from here. Run YateClient once you’ve installed it and enter the credentials for the 701 extension on Incredible PBX. You’ll need the IP address of your server plus your extension 701 password. You can find them in /root/passwords.FAQ. Fill in the blanks using the IP address of your server, 701 for your account name, and whatever password is assigned to the extension. Here’s what your entries should look like. Click OK to save your entries.

Once you are registered to extension 701, close the Account window. Then click on YATE’s Telephony Tab and place some test calls to the numerous apps that are preconfigured on Incredible PBX. Here are a few numbers to get you started:


123 - Reminders
947 - Weather by ZIP Code
951 - Yahoo News
222 - ODBC Lookup (try: 12345)
DEMO - Allison's IVR Demo
TODAY - Today in History

6. Configuring SMTP Mail with Incredible PBX for Elastix 2.5

Outbound email support using Postfix is preconfigured with Elastix 2.5. You can test whether it’s actually working by issuing the following command using your destination email address after logging in as root:

echo "test" | mail -s testmessage yourname@gmail.com

If you don’t receive the email message within a minute or two and you’ve checked your spam folder, chances are your ISP is blocking downstream SMTP servers in an effort to combat spam. Comcast is one of the usual suspects. To enable outbound email service for delivery of voicemail and other email messages with a provider blocking downstream SMTP servers, you first need to obtain the SMTP domain of your ISP, e.g. smtp.comcrap.net. Next, edit /etc/postfix/main.cf and add your SmartHost entry [in brackets] to the line that begins like this: relayhost =. The line should look like this: relayhost = [smtp.comcrap.net]. Save your addition and restart Postfix: service postfix restart. Be sure to try another email test message after completing the SmartHost update. To use Gmail as your mail relay, see this tutorial.

Configuring Google Voice

We have included the Python implementation of gvoice in /root for those that want to experiment by making calls and sending SMS blasts the "old-fashioned" way. While Elastix does not directly support native Asterisk 11 Google Voice functionality, you now can use a SIP gateway to access Google Voice and make free calls in the U.S. and Canada.

Homework Assignment: Mastering Incredible PBX for Elastix 2.5

We’ve put together a complete tutorial for the applications included in Incredible PBX for Asterisk-GUI. Most of it is fully applicable to Elastix 2.5 as well. That should be your next stop. Then you’ll be ready to tackle Elastix 2.5. Google is your friend. Do some exploring, and we’ll post links to great articles on this terrific platform as we discover them. Your suggestions are also welcomed!

In the meantime, if you have questions, join the PBX in a Flash Forums and take advantage of our awesome collection of gurus. There’s an expert available on virtually any topic, and the price is right. As with Incredible PBX, it’s absolutely free. The same applies to the Elastix forum.

And if all of that wasn’t enough, feast your eyes on the Elastix Add-Ons that are only a button click away:

[gview file="http://nerdvittles.com/wp-content/ElastixAddOns.pdf"]

Originally published: Friday, March 27, 2015


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…

  1. Vitelity, Google, and RentPBX provide financial support to Nerd Vittles and the Incredible PBX project. []

The Two Amigos Ride Again: Introducing Incredible PBX for Elastix 2.5

DEC. 7 NEWS FLASH: The Elastix project has been sold to 3CX. Elastix 4.0 and Elastix MT have been removed from production "due to a legal disagreement with another open source distribution."

We began our Elastix® adventure last week with the Bleeding Edge and our introduction of Incredible PBX for Elastix MT, the promising new multi-tenant edition of Elastix. Unfortunately, for production use, Elastix 3.0 is not quite there yet. So this week we’re introducing Incredible PBX™ for Elastix 2.5, an incredibly stable telephony platform with a loyal following and dozens of add-on components to satisfy almost any requirement. Having not looked at Elastix in more than a year, we were pleasantly surprised to find a very current version of Asterisk® 11 as well as a stable, gotcha-free Elastix fork of FreePBX® 2.11. It’s amazing what can be accomplished with a single command: yum upgrade. If you know how to use FreePBX, then the Elastix GUI will be a walk in the park.

We promised that 2015 would be the year of Gotcha-Free choices for the Asterisk platform, and today we deliver the third VoIP alternative with pure and honest GPL code minus the patent, trademark, and copyright minefields previously covered. Incredible PBX™ for Elastix 2.5 provides virtually the same feature set of applications for Asterisk as our previous releases. Just abide by the clear GPL licensing terms and copy, embellish, and redistribute to your heart’s content.

What Incredible PBX brings to the Elastix 2.5 platform are several dozen (free) applications for Asterisk in addition to a rock-solid firewall with a preconfigured WhiteList of your favorite VoIP providers and private LAN addresses. With the Elastix 2.5 version, you also get a dozen preconfigured trunks and extensions plus a familiar GUI that we’ve all used for the better part of a decade. And it’s all bundled in a graphical user interface that integrates telephony, faxing, instant messaging, email, and calendaring in a single desktop application. We’re glad to be part of the family.

Our deployment strategy remains consistent and straight-forward. Install a 64-bit bit version of Elastix 2.5 on the platform of your choice. Then run the Incredible PBX installer. In 5-10 minutes, you’re ready to roll. The installer first will bring Elastix 2.5 and CentOS up to current specs. Then it will work its magic and add an Incredible PBX tab to the existing Elastix 2.5 UI with all the bells and whistles to which you are accustomed. Text-to-speech applications, speech recognition, DISA, ODBC, SMS messaging, news, weather, conference bridge support, and a voice dialer are enabled out of the box.

A Word of Caution. If you’re new to Incredible PBX, install a clean version of Elastix 2.5 with NO MODIFICATIONS before you begin the Incredible PBX install. All of the existing Elastix 2.5 setup will be modified as part of the Incredible PBX install, and these changes will wipe out any additions you’ve previously made to Elastix. So don’t make any! Once the Incredible PBX install is completed, you can make all the changes you wish in your Elastix configuration. The only major design change we’ve made is to rework the Elastix MySQL database tables into MyISAM format from InnoDB. This facilitates making future backups and restores of your server as well as providing the necessary platform to install current and future Incredible PBX components.

Did We Mention Security? You also get a locked down, preconfigured IPtables Firewall WhiteList with all of the Travelin’ Man 3 tools plus the automatic update service to keep your server up to date and safe. There is a $20 voluntary annual license fee for the update service but, if you’d prefer to buy donuts, be our guest. But understand that voluntary is a two-way street. Running the update service costs us time and money and, when it ceases to be worthy of our time and financial investment, we reserve the right to discontinue the service down the road. The next time you log into your server after installing Incredible PBX, you’ll quickly appreciate why an automatic update service is important. We watch for and fix problems so you don’t have to.

Target Audience: Small or Large Organization in need of a turnkey, Gotcha-Free PBX

Default Configuration: Asterisk 11 with enhanced Elastix 2.5 GUI and Kennonsoft GUI

Platform: CentOS 5.x running on Dedicated Server, Cloud-Based Server, or Virtual Machine

Minimum Memory: 1024 MB

Recommended Disk: 20 GB+

Feature Set: Fax, SMS messaging, NeoRouter/PPTP VPN, Reminders, ConfBridge Conferencing, AsteriDex, Voicemail, Email, IVR, News, Weather, Voice Dialer, Wolfram Alpha, Today in History, TM3 Firewall WhiteList, Speed Dialer, iNUM and SIP URI (free) worldwide calling, DISA, Call Forwarding, Tailorable CDRs

Administrator Utilities: Incredible Backup/Restore, Automatic Updater, phpMyAdmin, Timezone Config, WebMin, Admin Password Configurator, ODBC/MySQL Database Configurator, Firewall WhiteList Tools

Getting Started with Incredible PBX for Elastix 2.5

Here’s a quick overview of the installation and setup process for Incredible PBX for Elastix 2.5:

  1. Choose a Hardware Platform – Dedicated PC, Cloud Provider, or Virtual Machine
  2. Install Elastix 2.5 – 64-bit CentOS 5 platform
  3. Download and Install Incredible PBX for Elastix 2.5
  4. Set Up Passwords for Incredible PBX for Elastix 2.5
  5. Activate Trunks with Incredible PBX for Elastix 2.5
  6. Connect a Softphone to Incredible PBX for Elastix 2.5
  7. Configuring SMTP Mail with Incredible PBX for Elastix 2.5

1. Choose a Platform for Incredible PBX for Elastix 2.5

Incredible PBX for Elastix 2.5 works equally well on dedicated hardware, a cloud-based server, or a virtual machine. Just be sure you’ve met the minimum requirements outlined above and that you have a sufficiently robust Internet connection to support 100Kb of download and upload bandwidth for each simultaneous call you wish to handle with your new PBX.

For Dedicated Hardware, we recommend at least an Atom-based PC of recent vintage with at least a 30GB drive and 4GB of RAM. That will take care of an office with 10-20 extensions and a half dozen or more simultaneous calls if you have the Internet bandwidth to support it.

For Cloud-Based Servers, we recommend RentPBX, one of our financial supporters who also happens to size servers properly and restrict usage solely to VoIP. This avoids performance bottlenecks that cause problems with VoIP calls. Yes, we have a coupon code for you to get the $15/month rate: NOGOTCHAS. The new image to support Incredible PBX for Elastix 2.5 should be available shortly.

For Virtual Machine Installs, we recommend Oracle’s VirtualBox platform which runs atop almost any operating system including Windows, Macs, Linux, and Solaris. Here’s a link to our original VirtualBox tutorial to get you started. We suggest allocating 1GB of RAM and at least a 20GB disk image to your virtual machine for best performance. We actually used VirtualBox to build Incredible PBX for Elastix 2.5.

2. Install 64-bit Elastix 2.5 on Your Platform

Begin by downloading the 64-bit Elastix 2.5 ISO. For dedicated hardware, burn the ISO image to a CD/DVD and boot your server with the Elastix 2.5 ISO to begin the install. Here are the simplest installation steps:

Install or Upgrade in Graphical Mode by pressing ENTER
Choose: Install Language
Choose: Keyboard
Choose: Initialize Drive and Erase ALL DATA
Remove: All partitions on selected drive and YES you’re sure
Modify: Partitioning Layout (No is fine)
Configure: eth0 and disable IPv6 Support (unless required)
Choose: Dynamic IP (DHCP) configuration
Choose: Hostname Configuration Automatic
Choose: Time Zone and Disable System Clock Uses UTC
Set: Root Password (Make it Secure!)
Wait for Reboot to Complete
Set MySQL Password to: passw0rd (MANDATORY: with a zero!)
Choose Elastix admin Password: minimum 10 alphanumeric characters with upper & lowercase

For VirtualBox, create an Elastix 2.5 virtual machine of Linux (RedHat 64-bit) type by clicking New. Click Settings button. In System, enable I/O APIC and disable Hardware Clock in UTC Time. In Audio, enable Audio for your sound card. In Network, enable Bridged Adapter for Adapter 1. In Storage, click on Empty in the Storage Tree. Then click on the Disk icon to the right of CD/DVD Drive attributes. Choose the Elastix 2.5 ISO file that you downloaded. Click OK. Then start the virtual machine to begin the installation process. Follow the setup steps above to install Elastix 2.5 in your virtual machine.

3. Download and Install Incredible PBX for Elastix 2.5

After completing the Elastix 2.5 install, log into your server as root using SSH or Putty from a desktop machine that you will use to manage your server. This is important with the Incredible PBX IPtables Firewall WhiteList so you don’t get locked out of your own server! Then issue the following commands to begin the Incredible PBX install. You’ll actually run the installer twice, once to upgrade CentOS and Elastix and a second time to install Incredible PBX.

cd /root
wget http://incrediblepbx.com/incrediblepbx11elastix25.tar.gz
tar zxvf incrediblepbx11elastix25.tar.gz
rm -f incrediblepbx11elastix25.tar.gz
./IncrediblePBX11-Elastix25.sh
./IncrediblePBX11-Elastix25.sh

4. Initial Configuration of Incredible PBX for Elastix 2.5

Incredible PBX is installed with the preconfigured IPtables Linux firewall already in place. It implements WhiteList Security to limit server access to connected LANs, your server’s IP address, your desktop computer’s IP address, and a few of our favorite SIP providers. You can add additional entries to this WhiteList whenever you like using the add-ip and add-fqdn tools in /root. There’s also an Apache security layer for our web applications. And, of course, Elastix 2.5 has its own security methodology. Finally, we randomize extension and DISA passwords as part of the initial install process. Out of the starting gate, you won’t find a more secure VoIP server implementation anywhere. After all, it’s your phone bill.

Even with all of these layers of security, here are 6 Quick Steps to better safeguard your server. You only do this once, but failing to do it may lead to security issues you don’t want to have to deal with down the road. So DO IT NOW!

First, log out and back into your server as root with your root password to get the latest updates. Then do the following:

Make your root password very secure: passwd
Set your correct time zone: ./timezone-setup
Create admin password for web apps: htpasswd -b /etc/pbx/wwwpasswd admin newpassword
Set MySQL and Elastix admin PW: ./admin-pw-change (MySQL PW MUST be passw0rd with zero)
Make a copy of your other passwords: cat passwords.FAQ
Decipher IP address and other info about your server: status

Last but not least, Incredible PBX includes an automatic update utility which downloads important updates whenever you log into your server as root. We recommend you log in once a week to keep your server current. If you haven’t already done so, NOW would be a good time to log out and back into your server at the Linux command line to bring your server current.

5. Activate Trunks with Incredible PBX for Elastix 2.5

For those migrating from another aggregation including PBX in a Flash, this should be familiar territory for you. Using a browser, log into Elastix 2.5 at the IP address of your server. Before you can actually make or receive calls outside your PBX, you’ll need at least one trunk. In the Elastix 2.5 GUI, click PBX -> Trunks. Once you have your credentials from a provider, choose a provider from the list of preconfigured trunks on the right or create a new one. If you’re using one of the preconfigured options, remember to enable the trunk after adding your desired CallerID and credentials. Then save your settings and reload your Asterisk dialplan. That’s it. You’re ready to go.

6. Configure a Softphone with Incredible PBX for Elastix 2.5

Incredible PBX comes preconfigured with two extensions (701 and 702) that let you connect phones to your PBX. You can connect virtually any kind of telephone to your Elastix 2.5 PBX. Plain Old Phones require an analog telephone adapter (ATA) which can be a separate board in your computer from a company such as Digium. Or it can be a standalone SIP device such as ObiHai’s OBi100 or OBi110 (if you have a phone line from Ma Bell to hook up as well). SIP phones can be connected directly so long as they have an IP address. These could be hardware devices or software devices such as the YateClient softphone. We’ll start with a free one today so you can begin making calls. You can find dozens of recommendations for hardware-based SIP phones both on Nerd Vittles and the PIAF Forum when you’re ready to get serious about VoIP.

We recommend YateClient which is free. Download it from here. Run YateClient once you’ve installed it and enter the credentials for the 701 extension on Incredible PBX. You’ll need the IP address of your server plus your extension 701 password. You can find them in /root/passwords.FAQ. Fill in the blanks using the IP address of your server, 701 for your account name, and whatever password is assigned to the extension. Here’s what your entries should look like. Click OK to save your entries.

Once you are registered to extension 701, close the Account window. Then click on YATE’s Telephony Tab and place some test calls to the numerous apps that are preconfigured on Incredible PBX. Here are a few numbers to get you started:


123 - Reminders
947 - Weather by ZIP Code
951 - Yahoo News
222 - ODBC Lookup (try: 12345)
DEMO - Allison's IVR Demo
TODAY - Today in History

6. Configuring SMTP Mail with Incredible PBX for Elastix 2.5

Outbound email support using Postfix is preconfigured with Elastix 2.5. You can test whether it’s actually working by issuing the following command using your destination email address after logging in as root:

echo "test" | mail -s testmessage yourname@gmail.com

If you don’t receive the email message within a minute or two and you’ve checked your spam folder, chances are your ISP is blocking downstream SMTP servers in an effort to combat spam. Comcast is one of the usual suspects. To enable outbound email service for delivery of voicemail and other email messages with a provider blocking downstream SMTP servers, you first need to obtain the SMTP domain of your ISP, e.g. smtp.comcrap.net. Next, edit /etc/postfix/main.cf and add your SmartHost entry [in brackets] to the line that begins like this: relayhost =. The line should look like this: relayhost = [smtp.comcrap.net]. Save your addition and restart Postfix: service postfix restart. Be sure to try another email test message after completing the SmartHost update. To use Gmail as your mail relay, see this tutorial.

Configuring Google Voice

We have included the Python implementation of gvoice in /root for those that want to experiment by making calls and sending SMS blasts the "old-fashioned" way. While Elastix does not directly support native Asterisk 11 Google Voice functionality, you now can use a SIP gateway to access Google Voice and make free calls in the U.S. and Canada.

If you have difficulty finding the Google Chat option after setting up a new Google Voice account, follow this tutorial.

Homework Assignment: Mastering Incredible PBX for Elastix 2.5

We’ve put together a complete tutorial for the applications included in Incredible PBX for Asterisk-GUI. Most of it is fully applicable to Elastix 2.5 as well. That should be your next stop. Then you’ll be ready to tackle Elastix 2.5. Google is your friend. Do some exploring, and we’ll post links to great articles on this terrific platform as we discover them. Your suggestions are also welcomed!

In the meantime, if you have questions, join the PBX in a Flash Forums and take advantage of our awesome collection of gurus. There’s an expert available on virtually any topic, and the price is right. As with Incredible PBX, it’s absolutely free. The same applies to the Elastix forum.

And if all of that wasn’t enough, feast your eyes on the Elastix Add-Ons that are only a button click away:

[gview file="http://nerdvittles.com/wp-content/ElastixAddOns.pdf"]

Originally published: Tuesday, March 10, 2015


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…

The Gotcha-Free PBX in the Cloud: Introducing Incredible PBX @ RentPBX.com

We continue the Incredible PBX for Asterisk-GUI adventure today with an open source alternative for which many have been clamoring, an affordable Cloud-based Asterisk® platform with a no-strings-attached graphical user interface. As if the $15 a month hosting plan weren’t enough, the icing on the cake is the quick 2-minute setup on your choice of a dozen servers throughout the U.S. as well as Canada and Europe. If you can find the Enter key on a keyboard, then you can handle the complexity of the RentPBX setup. When you’re finished, you’ll have a turnkey PBX featuring some of the finest open source software on the planet. The software is all free, subject only to the terms of the open source licenses.

Target Audience: Home or SOHO/SBO in need of a turnkey, Gotcha-Free PBX in the Cloud

Default Configuration: Asterisk 11 with enhanced Asterisk-GUI, Kennonsoft GUI, and NANPA dialplan

Platform: CentOS 6.6 running on RentPBX Cloud-Based Server platform

Memory: 385 MB with 415 MB swap

Disk Size: 20 GB

Default Trunks: Google Voice, CallCentric, DIDlogic, Future-Nine, IPcomms, Les.net, Vitelity, VoIP.ms1

Feature Set: Fax, SMS messaging, VPN, Reminders, ConfBridge Conferencing, AsteriDex, Voicemail, IVR, Email, News, Weather, Voice Dialer, Wolfram Alpha, Today in History, TM3 Firewall WhiteList, Speed Dialer, iNUM and SIP URI (free) worldwide calling, OpenCNAM CallerID lookups, DISA, Call Forwarding, CSV CDRs

Administrator Utilities: Incredible Backup/Restore, Automatic Updater, Asterisk Upgrader, phpMyAdmin, Timezone Config, Plug-and-Play Trunk Configurator, WebMin, External IP Setup, Firewall WhiteList Tools

Getting Started with Incredible PBX for Asterisk-GUI (Cloud Edition)

Here’s a quick overview of the installation and setup process for Incredible PBX for Asterisk-GUI @ RentPBX.com:

  1. Sign Up for Gotcha-Free PBX in the Cloud – Choose server location and await credentials
  2. Complete the Install of Incredible PBX and Incredible Fax
  3. Set Up Passwords for Incredible PBX for Asterisk-GUI
  4. Configure Trunks with Incredible PBX for Asterisk-GUI
  5. Connect a Softphone to Incredible PBX for Asterisk-GUI

1. Sign Up for Gotcha-Free PBX in the Cloud at RentPBX.com

Visit RentPBX.com and choose the PBX in a Flash builds and complete the following steps:

When you begin the payment and checkout phase, enter your coupon code to take advantage of the $15/month discounted rate: NOGOTCHAS. Wait for the confirmation email with your server credentials and dedicated IP address.

2. Complete the Install of Incredible PBX and Incredible Fax

Nothing tricky here. It’s a 2-minute setup process. Log into your server as root with your default password using SSH or Putty. Once you’re logged in, RentPBX will randomize all of your passwords for Incredible PBX. Next, you’ll be prompted for the email address to use for delivery of your faxes. Once entered, you’ll be prompted for various information to install HylaFax and AvantFax. Just press the Enter key at every prompt. In a couple minutes, your server will reboot to bring Incredible PBX and Incredible Fax on line. Log back into your server as root and let Incredible PBX run its Automatic Update Utility to bring your system current. That’s it. You now have a turnkey Asterisk® PBX that’s ready for configuration.

3. Initial Configuration of Incredible PBX for Asterisk-GUI

Incredible PBX is installed with the preconfigured IPtables Linux firewall already in place. It implements WhiteList Security to limit server access to your server’s IP address, your desktop computer’s IP address, and a few of our favorite SIP providers. You can add additional entries to this WhiteList whenever you like using the add-ip and add-fqdn tools in /root. There’s also an Apache security layer for web applications. And, of course, Asterisk-GUI has its own security methodology using Asterisk’s manager.conf. Finally, RentPBX randomized extension and DISA passwords as part of the initial setup process. Out of the starting gate, you won’t find a more secure VoIP server implementation anywhere. After all, it’s your phone bill.

Even with all of these layers of security, here are 10 Quick Steps to better safeguard your server. You only do this once, but failing to do it may lead to security issues you don’t want to have to deal with down the road. So DO IT NOW!

First, log into your server as root with your root password and do the following:

Make your root password very secure: passwd
Set your correct time zone: ./timezone-setup
Create admin password for web apps: htpasswd -b /etc/pbx/wwwpasswd admin newpassword
Make a copy of your other passwords: cat passwords.FAQ
Make a copy of your Knock codes: cat knock.FAQ
Decipher IP address and other info about your server: status

Second, log into your server as admin using a web browser pointed to your server’s IP address:

Click USERS tab in Incredible PBX GUI
Click Asterisk-GUI Administration
Log in as user: admin with password: password
Immediately change your admin password

Log in to Asterisk-GUI again with your new password. Expand the options available in the GUI (if required):

Options -> Advanced Options -> Show Advanced Options

Last but not least, Incredible PBX includes an automatic update utility which downloads important updates whenever you log into your server as root. We recommend you log in once a week to keep your server current.

4. Configure Trunks with Incredible PBX for Asterisk-GUI

Now for the fun part. If this is your first VoIP adventure, be advised that this ain’t your grandma’s phone system. You need not and should not put all your eggs in one basket when it comes to telephone providers. In order to connect to Plain Old Telephones, you still need at least one provider. But there is nothing wrong with having several. And a provider that handles an outbound call (termination) need not be the same one that handles an incoming call (origination) and provides your phone number (DID). We cannot recommend Vitelity highly enough, and it’s not just because they have financially supported our projects for almost a decade. They’re as good as VoIP providers get, and we use lots of them. If you’re lucky enough to live in the U.S., you’d be crazy not to set up a Google Voice account. It’s free as are all phone calls to anywhere in the U.S. and Canada. The remaining preconfigured providers included in Incredible PBX for Asterisk-GUI are equally good, and we’ve used and continue to use almost all of them. So pick a few and sign up. You only pay for the calls you make with each provider so you have little to lose by choosing several. The PIAF Forum includes dozens of recommendations on VoIP providers if you want additional information.

With the preconfigured trunks in Incredible PBX for Asterisk-GUI, all you need are your credentials for each provider and the FQDN of their server. Log into Asterisk-GUI Administration as admin using a browser. From the System Status screen, click Incredible PBX Apps. Click on each provider you have chosen and fill in the blanks with your credentials. When you’ve saved all of your settings, log into your server as root via SSH and type: service asterisk restart or asterisk-restart. You can also issue the command in the Asterisk-GUI by choosing the Asterisk CLI tab2 in the left column. Doesn’t get any simpler!

Update: It should be noted that Incredible PBX for Asterisk-GUI also supports Anveo Direct trunks; however, they are configured differently because of the way Anveo handles the calls. You’ll need the PIN provided by Anveo to set up your trunk, and Anveo supports CallerID spoofing so you can enter any CallerID number for the trunk that you are authorized to use. You’ll find the Anveo Direct setup link in the Incredible PBX Apps tab. To route an outgoing call through Anveo trunk, dial 2 + any desired 10-digit number.

Here is the complete list of dialing prefixes and the trunks to which they are associated:

  • 1 – Google Voice
  • 2 – Anveo Direct
  • 3 – Future Nine
  • 4 – CallCentric
  • 5 – DIDlogic
  • 6 – IPcomms
  • 7 – Les.net
  • 8 – Vitelity
  • 9 – VoIP.ms

For free iNUM calling worldwide, the following dialing prefixes are supported in conjunction with the last seven digits of any destination iNUM DID. Free iNUM DIDs for your own PBX are available from both of these providers as well.

  • 0XXXXXXX – CallCentric
  • 90XXXXXXX – VoIP.ms

5. Configure a Softphone with Incredible PBX for Asterisk-GUI

We’re in the home stretch now. You can connect virtually any kind of telephone to your new Gotcha-Free PBX. Plain Old Phones require an analog telephone adapter (ATA). Because your server is actually in the RentPBX Cloud, a standalone SIP device is required. Good choices are ObiHai’s OBi100 or OBi110 (if you have a phone line from Ma Bell to hook up as well). SIP phones can be connected directly so long as they have an IP address. These could be hardware devices or software devices such as the YateClient softphone. We’ll start with a free one today so you can begin making calls. You can find dozens of recommendations for hardware-based SIP phones both on Nerd Vittles and the PIAF Forum when you’re ready to get serious about VoIP telephony. Don’t forget to WhiteList the IP address of each SIP phone you wish to connect using /root/add-ip or /root/add-fqdn.

We recommend the YateClient softphone which is free. Download it from here. Run YateClient once you’ve installed it and enter the credentials for the 6002 extension on Incredible PBX. You’ll need the IP address of your server plus your extension 6002 password. Choose Users -> 6002 and write down your SIP/IAX Password. You can also find it in /root/passwords.FAQ. Fill in the blanks using the IP address of your server, 6002 for your account name, and whatever password is assigned to the extension. Click OK to save your entries.

Once you are registered to extension 6002, close the Account window. Then click on YATE’s Telephony Tab and place some test calls to the numerous apps that are preconfigured on Incredible PBX. Dial a few of these to get started:

7001 - IVR Demo
123 - Reminders
947 - Weather by ZIP Code
951 - Yahoo News
*61 - Time of Day
TODAY - Today in History

If you are a Mac user, another great no-frills softphone is Telephone. Just download and install it from the Mac App Store.

Configuring Google Voice

If you want to use Google Voice, you’ll need a dedicated Google Voice account to support Incredible PBX. The more obscure the username (with some embedded numbers), the better off you will be. This will keep folks from bombarding you with unsolicited Gtalk chat messages, and who knows what nefarious scheme will be discovered using Google messaging six months from now. So keep this account a secret!

IMPORTANT: Do NOT under any circumstances take Google’s bait to switch from Google Chat to Hangouts, or you will forever lose the ability to use Google Chat with Incredible PBX. Also be sure to enable the Google Chat option as one of your phone destinations in Settings, Voice Setting, Phones. That’s the destination we need for The Incredible PBX to work its magic! Otherwise, all inbound and outbound calls will fail. Thus far, Google has apparently had a change of heart on discontinuing Google Chat support so it’s enabled by default in all new Google Voice accounts. Nothing free lasts forever so make some alternative arrangements before disaster strikes!

Once you’ve created a Gmail and Google Voice account, go to Google Voice Settings and click on the Calls tab. Make sure your settings match these:

  • Call ScreeningOFF
  • Call PresentationOFF
  • Caller ID (In)Display Caller’s Number
  • Caller ID (Out)Don’t Change Anything
  • Do Not DisturbOFF
  • Call Options (Enable Recording)OFF
  • Global Spam FilteringON

Click Save Changes once you’ve adjusted your settings. Under the Voicemail tab, plug in your email address so you get notified of new voicemails. Down the road, receipt of a Google Voice voicemail will be a big hint that something has come unglued on your PBX.

One final word of caution is in order regardless of your choice of providers: Do NOT use special characters in any provider passwords, or nothing will work!

Now you’re ready to configure your Google Voice account in Incredible PBX. You can do it from within Asterisk-GUI by choosing Google Voice within the Incredible PBX Apps tab. Once you’ve entered your credentials, don’t forget to restart Asterisk, or Google Voice calls will fail. If you still have trouble placing or receiving calls, follow these tips.

OK, Smarty Pants: Show Me the Beef!

We know what some of you are thinking. "What does a fast food worker really know about VoIP and Gotcha-Free PBXs?? Before I waste a bunch of time on this, show me the beef!" Fair enough. Sit by your phone and click the Call Me icon below. Type in a fake name and your real phone number. Click the Connect button, answer your phone when it rings, and press 1. You’ll be connected to the Incredible PBX IVR for Asterisk-GUI. Pick an option from the menu of choices and take the Incredible PBX apps for a spin on our dime… actually it’s Google’s dime. Everything you see and hear is part of what you get with Incredible PBX for Asterisk-GUI including the ability to set up your own click-to-dial web interface exactly like this one. The demo just happens to be running on our Mac desktop. So… what are you waiting for? Click away and try Incredible PBX for yourself. And, by the way, nobody besides the NSA and Google will be monitoring your call. 😉



Nerd Vittles Demo IVR Options3
1 – Call by Name (say “Delta Airlines” or “American Airlines” to try it out)
2 – MeetMe Conference (password is 1234)
3 – Wolfram Alpha (say “What planes are overhead?”)
4 – Lenny (The Telemarketer’s Worst Nightmare)
5 – Today’s News Headlines
6 – Weather Forecast (say the city and state, province, or country)
7 – Today in History
8 – Speak to a Real Person (or maybe just voicemail if we’re out)

Homework Assignment: Mastering the Incredible Apps and Asterisk-GUI

Just Released: The Gotcha-Free Incredible PBX Application User’s Guide

Your next stop should be a careful reading of the new Incredible PBX Application User’s Guide. It documents the 31 apps for Asterisk that are included with your new PBX. You also need to learn all you can about Asterisk-GUI and how to make the best use of its powerful feature set. Here’s one word of warning. We mentioned that Incredible PBX was a hybrid system that combines some customized settings with the standard Asterisk-GUI interface. Before modifying existing settings for the default trunks, extensions, and default routes, take a look at the credentials* files in /etc/asterisk. If you modify any of these trunk entries or the Outgoing or Incoming Call Rules in Asterisk-GUI, you may break the Incredible PBX setup. So steer clear of that minefield until you know what you’re doing. Adding new extensions and additional trunks is perfectly fine and will not break anything.

Rather than reinvent the wheel, we’ll point you to some excellent tutorials that already have been written. Start with Chapter 3 of Digium’s Asterisk Appliance™ Administrator Manual. Next, review Chapter 11 of The Asterisk Book (Second Edition). Finally, take a look at a couple of the tutorials that have been written by other companies that incorporated Asterisk-GUI into their hardware products, e.g. Yeastar’s MyPBX SOHO User Manual and Grandstream’s UCM6100 User Manual.

In the meantime, if you have questions, join the PBX in a Flash Forums and take advantage of our awesome collection of gurus. There’s an expert available on virtually any topic, and the price is right. As with Incredible PBX, it’s absolutely free.

We also are quickly building a collection of tutorials tailored specifically for Incredible PBX for Asterisk-GUI:

Enjoy your new Gotcha-Free PBX in the Cloud!


Don’t forget to List Yourself in Directory Assistance so everyone can find you by dialing 411. Add your new number to the Do Not Call Registry to block telemarketing calls. Or call 888-382-1222 from your new number.

Originally published: Monday, February 23, 2015


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…

  1. Vitelity, Google, and RentPBX provide financial support to Nerd Vittles and the Incredible PBX project. []
  2. If, for some reason, the Asterisk CLI tab does not appear on your server, click Options -> Advanced Options -> Show Advanced Options. []
  3. Allison is available to record custom voice prompts with the same quality as this one. []

Incredible PBX on Steroids: The Asterisk-GUI Dial Plan Basics (Chapter 2)

We’re making steady progress on the Incredible PBX for Asterisk-GUI project. If you didn’t read last week’s introductory article, start there. This week we’ve had to wrestle with one of the stark realities of taking someone else’s turnkey code and attempting to bolt on enhancements. As previously noted, Asterisk-GUI works all of its magic by manipulating Asterisk® config files directly with no outside storage of settings in either MySQL or the Asterisk DB. This is a good thing… at least until you try to add new features while leaving the basic Asterisk-GUI code intact. That was one of our primary objectives.

This is the second installment in our series. You can catch up with the Overview as well as Chapter 1 and Chapter 3 here.

Simplifying Credentials Management with Incredible PBX

Here’s the problem. We wanted to separate out the credentials for various providers so it would be easy for first-time users to set up a server without having to master Asterisk or the Asterisk-GUI. As we mentioned, this has been the number #1 complaint with the FreePBX® way of doing things. You almost needed to go back to college for another degree before you could make your first phone call. To get a functional VoIP server with one extension and one outbound trunk, it required creation of an extension, registration of a trunk with obscure settings that are different for almost every provider, creation of an inbound and outbound route with settings for how to actually route the calls in and out. And then there was configuration of some less-than-intuitive SIP settings. That’s before you ever start thinking about security and a firewall. Life’s too short!

But we encountered some stumbling blocks with Asterisk-GUI as well. It was rewriting our credentials_sip.conf file whenever Asterisk-GUI was actually used to add a new user (extension) or trunk. Worse yet, it was rewriting the entries incorrectly because the developers forgot about a special syntax in Asterisk that we’ll get to in a minute.

We first thought we could solve the rewriting of our config files by limiting write permissions on our new credentials files to the root user. Asterisk and Asterisk-GUI both run as the asterisk user so this would have been an easy fix. Well, no cigar. Asterisk-GUI outsmarted us by quietly aborting the update when it didn’t have ownership of our .conf files. This meant you never could use the Asterisk-GUI for much of anything, not exactly what we had in mind.

Lucky for us, one of the developers forgot about our favorite Linux utility, chattr. This lets you set the immutable bit to prevent all users (including root) from changing the contents of a file. Since Asterisk-GUI sometimes skips error checking after it’s sure it owns the .conf files, it was perfect. We could "hide" settings in our own credentials_sip.conf file without worrying that they’d be overwritten by Asterisk-GUI. The only trick is remembering to turn the immutable bit off when we want to make updates and, of course, turning it back on once we’re finished so that Asterisk-GUI doesn’t mangle the settings when you use Asterisk-GUI for other things. Of course, it also means you’ll need to log in as root to set up credentials for the "Incredible 9″ trunks, but that’s a walk in the park. In fact, that’s the beauty of using chattr in the first place.

For those that love to wade into the weeds of Asterisk design, there is another feature which permits storage of additional settings for any [context]. You simply create [context](+) in a separate file using the same name as the original context. When you reload Asterisk, it blends all of the entries from the two contexts. That’s exactly what we needed in order to simplify storage of credentials for providers using our own config files. Unfortunately, the Asterisk-GUI developers forgot about this syntax and removed our [context](+) entries presumably thinking they were bad code. This left the credentials themselves sitting in a config file with no context, and that wreaked all sorts of havoc in Asterisk-GUI. So now you know why we needed write protection for our credentials_sip.conf file.

Speaking of credentials, here’s how the default credentials_sip.conf file actually looks. To edit the file, you start by removing the immutable bit: chattr -i credentials_sip.conf. Never comment out the host entries or Asterisk dies! Host names may need to be changed depending upon the server on which your provider sets up your individual account. Everything else is simple enough for anyone to master without a tutorial. Plug in your ACCTNAME and ACCTPASS and uncomment the affected lines by removing the semicolons for any trunk you wish to use. Save your settings. Don’t forget to reprotect the file when you’re finished: chattr +i credentials_sip.conf. Finally, restart Asterisk: service asterisk restart. We plan to add scripts to automatically manage these trunk settings, but we wanted you to know how everything actually worked so you can do it yourself should you ever feel the urge.

[voipms](+)
; VoIP.ms trunk Prefix: Dial 9
;username = ACCTNAME
;secret = ACCTPASS
host = atlanta.voip.ms

[Vitelity](+)
; Vitelity trunk Prefix: Dial 8
;username = ACCTNAME
;secret = ACCTPASS
host = inbound1.vitelity.net

[lesnet_peer](+)
; Les.net trunk Prefix: Dial 7
;username = ACCTNAME
;secret = ACCTPASS
host = did.voip.les.net

[ipcomms](+)
; IPcomms trunk Prefix: Dial 6
;username = ACCTNUM
;fromuser = ACCTNUM
;secret = ACCTPASS
host = 2way.ipcomms.net

[didlogic](+)
; DIDlogic trunk Prefix: Dial 5
;username = ACCTNUM
;secret = ACCTPASS
host = sip.didlogic.net

[CallCentric](+)
; CallCentric trunk Prefix: Dial 4
;username = ACCTNUM
;fromuser = ACCTNUM
;authuser = ACCTNUM
;secret = ACCTPASS
host = callcentric.com

[FutureNine](+)
; FutureNine trunk Prefix: Dial 3
;username = ACCTNUM
;secret = ACCTPASS
host = incoming.future-nine.com

I hear some of you squawking, "Why do you call it ‘Incredible 9’ when there are only 7 providers?" The answer is that Google Voice is managed separately in credentials_googlevoice.conf because it operates differently in Asterisk. Anveo Direct also has a different way of handling outbound SIP calls. A PIN is required as part of the dial string. That PIN is managed separately in credentials_extensions.conf. So… 7 + 2 = 9.

Linux Application Framework for Incredible PBX

We also wanted to simplify the process of adding new Linux utilities to our Incredible PBX setup for Asterisk-GUI. You may know that Asterisk-GUI runs under a lean, mean web server that’s actually part of Asterisk. By default, it operates on port 8088. We wanted to leave it that way to simplify the procedure for compiling Asterisk to run as the asterisk user as opposed to the root user. The Asterisk web server never was intended to compete with Apache, and there is no support for PHP much less MySQL. In order to use the dozens of Incredible PBX utilities and databases as well as all of the text-to-speech and speech recognition tools, we needed Apache, PHP, and MySQL. So our design decision was to run Apache on port 80 with full PHP support and then run MySQL in the same way it has been installed on LAMP servers since Day One.

That design meant we still needed a separate web site to support Incredible PBX utilities. Luckily, our friends at Kennon Software built a beautiful user interface for PBX in a Flash many years ago. With some minor tweaking to account for newer releases of PHP, it was a perfect fit for Incredible PBX as you can see at the top of this article. It has all the things we were looking for including an RSS Feed to provide emergency announcements. It also provides developers unlimited flexibility to add local applications and make other modifications as desired for both end-users and administrators. So our tip of the hat again goes to Kennon Software for their terrific open source contribution to our projects.

Choosing a Linux Platform for Incredible PBX

Speaking of Linux, we’re often asked what’s the best Linux platform on which to run Incredible PBX. Our stock answer is ALL OF THE ABOVE. Incredible PBX has been and is being engineered to run well on almost any Linux platform. We plan to initially release Incredible PBX for Asterisk-GUI on the CentOS/Scientific Linux 6.5 platform, but we’ll add Ubuntu 14.04 and Debian in coming weeks. In this way, we can support all of our favorite low-cost hardware platforms including the Raspberry Pi, BeagleBone Black, CuBox, PogoPlug, and anything else we can get our hands on.

Adding Inbound & Outbound Dialplan Code to Incredible PBX

This week we also tackled some of the other items on the Wish List. We’ve heard from a number of folks that wanted a simple way to add customized dialplan code whenever a call was made or received. That was an easy one. In extensions_custom.conf, you’ll now find the following contexts which can be enhanced in any way you choose. Just plug your additional code into each context between the two default entries.

[incoming-sub]
exten => incoming-sub_1,1,Noop(*** Incoming: ${CALLERID(all)} on ${CHANNEL} ***)
exten => incoming-sub_1,n,Return()

[outgoing-sub]
exten => outgoing-sub_1,1,Noop(*** Calling: ${CALLERID(dnid)} from ${CALLERID(all)} ***)
exten => outgoing-sub_1,n,Return()

Managing Incoming Calls to "Incredible 9″ Trunks

We haven’t (yet) come up with a really simple way to adjust how inbound calls to our preconfigured trunks are processed because of the basic Asterisk-GUI design. In a nutshell, incoming calls come into your PBX on a phone number, aka DID. That DID is associated with a trunk that you’ve registered to a specific provider. Once the call hits Incredible PBX, we need to tell the PBX where to route the call. Typical choices include an extension, a group of extensions (i.e. a ring group), an IVR, or an AutoAttendant. There are others. In extensions.conf, you will find the dialplan code to manage incoming calls to the "Incredible 9″ trunks. The setup for each of the 9 trunks looks like this:

[DID_Vitelity]
include = DID_Vitelity_default
[DID_Vitelity_default]
exten = _.,1,Set(CALLERID(name)=${CALLERID(number)})
exten = _.,n,Set(CALLERID(number)=${CALLERID(number):0:10})
exten = _.,n,Gosub(cidlookup,cidlookup_1,1())
exten = _.,n,ExecIf($[ "${CALLERID(name)}" = "" ] ?Set(CALLERID(name)=${CALLERID(num)}))
exten = _.,n,Gosub(incoming-sub,incoming-sub_1,1())
;exten = _.,n,Goto(default,6001,1)
;exten = _.,n,Goto(ringroups-custom-1,s,1)
;exten = _.,n,Goto(voicemenu-custom-2,s,1)
exten = _.,n,Goto(voicemenu-custom-1,s,1)
[CallingRule_OutVitelity]
exten = _8NXXNXXXXXX,1,Macro(trunkdial-failover-0.4,${Vitelity}/${EXTEN:1},,Vitelity,)
exten = _81NXXNXXXXXX,1,Macro(trunkdial-failover-0.4,${Vitelity}/${EXTEN:2},,Vitelity,)

In the Asterisk-GUI world, a [DID_provider] context manages incoming calls FROM a provider’s DID or trunk. And a [CallingRule_provider] context manages outbound calls TO your provider’s trunk. In the default Vitelity setup, incoming Vitelity calls get routed to voicemenu-custom-1, and outbound calls with an 8 prefix get routed out through your Vitelity trunk. As noted, all of these contexts can be found in extensions.conf.

Toward the end of the default context you will see two voicemenu-custom entries as well as a ringroups-custom-1 entry and a default entry with an extension number. All but one of these is commented out. As you have probably guessed, the uncommented entry determines where the incoming call is routed. When you create IVRs or ring groups in Asterisk-GUI, each new creation gets assigned a sequential number starting with 1. ringroups-custom-1 is a preconfigured Ring Group that currently sends calls to extensions 6001 and 6002, the two extensions created in the Incredible PBX default setup. If you add additional extensions and then add those new numbers to this preconfigured ring group, then those phones will ring as well. It does NOT change the sequential number originally assigned to this ring group. Adding a new ring group does that.

In Asterisk-GUI, IVRs and AutoAttendants are called Voice Menus. Incredible PBX ships with two. Voice Menu #1 is the Nerd Vittles’ Stealth AutoAttendant. It greets the caller with a cheery message from Allison while providing a couple seconds for someone (like you) to press a button to reroute the call to an undisclosed destination. If no key is pressed, the incoming call is routed to Ring Group #1.

Voice Menu #2 is a Demo IVR that showcases many of the Nerd Vittles applications. By default, all "Incredible 9″ trunks are configured to route incoming callers through the Stealth AutoAttendant to Ring Group #1. If you’d prefer to route incoming calls to a ring group or a particular extension or the demo IVR, the commented out entries will let you do that.

But suppose you wanted to route an incoming call to a custom extension defined in extensions_custom.conf? Well, it’s easy. Just change the context to CallingRule_extensions_custom and route the call to line 1 of the extension context desired. For example, to send an incoming call to the AsteriDex Voice Dialer (411) which lets callers say the name of the party they wish to reach, you’d insert a call destination entry that looked like this:

exten = _.,n,Goto(CallingRule_extensions_custom,411,1)

Better yet, you can use the generic dialplan context, DLPN_DialPlanMain, to reach any extension on your server:

exten = _.,n,Goto(DLPN_DialPlanMain,411,1)

As you add new ring groups, extensions, and voice menus with Asterisk-GUI, you can adjust these settings accordingly now that you know how all of this works. After making changes in extensions.conf, be sure you’ve only enabled ONE destination per trunk by commenting out the rest of them. Then reload your dialplan: asterisk -rx "dialplan reload"

Free Worldwide Calling Support with Incredible PBX

We mentioned last week that iNum support will be included through two SIP providers to let you make free phone calls worldwide to anyone with a registered iNum. SIP URIs are equally important for the same reason. You can make a free call to anyone, anywhere in the world if the recipient happens to have a SIP URI, and sip2sip.info will provide a free one to anybody. To support SIP URIs, Incredible PBX for Asterisk-GUI includes a new context that will let you link a SIP URI to an extension on your PBX. We’ve included an entry for L-E-N-N-Y to get you started. You can add as many more as you like:

[CallingRule_SIP_URI]
exten = 53669,1,Dial(SIP/2233435945@sip2sip.info)

CallerID Name Lookups with Incredible PBX

On the CallerID Name front, we’re still exploring alternatives including incorporation of CallerID Superfecta which originally was a Nerd Vittles creation. It now is maintained by the POSSA Development Team. In the interim, we’ve provided code for one of the best CNAM sources in the business, OpenCNAM. It gets you 10 free lookups an hour from cached entries. If you need more, you can sign up for an account. For completed calls, there is a charge of $.004. Just adjust the CURL entry below to plug in your credentials:

[cidlookup]
exten => cidlookup_1,1,Set(CURLOPT(httptimeout)=7)
exten => cidlookup_1,n,Set(CALLERID(name)=${CURL(https://account_sid:auth_token@api.opencnam.com/v2/phone/${CALLERID(num)}?format=pbx&ref=incrediblepbx)})
exten => cidlookup_1,n,Set(current_hour=${STRFTIME(,,%Y-%m-%d %H)})
exten => cidlookup_1,n,Set(last_query_hour=${DB(cidlookup/opencnam_last_query_hour)})
exten => cidlookup_1,n,Set(total_hourly_queries=${DB(cidlookup/opencnam_total_hourly_queries)})
exten => cidlookup_1,n,ExecIf($["${last_query_hour}" != "${current_hour}"]?Set(DB(cidlookup/opencnam_total_hourly_queries)=0))
exten => cidlookup_1,n,ExecIf($["${total_hourly_queries}" = ""]?Set(DB(cidlookup/opencnam_total_hourly_queries)=0))
exten => cidlookup_1,n,Set(DB(cidlookup/opencnam_total_hourly_queries)=${MATH(${DB(cidlookup/opencnam_total_hourly_queries)}+1,i)})
exten => cidlookup_1,n,ExecIf($[${DB(cidlookup/opencnam_total_hourly_queries)} >= 60]?System(${ASTVARLIBDIR}/bin/opencnam-alert.php))
exten => cidlookup_1,n,Set(DB(cidlookup/opencnam_last_query_hour)=${current_hour})
exten => cidlookup_1,n,Return()
exten => cidlookup_return,1,ExecIf($["${DB(cidname/${CALLERID(num)})}" != ""]?Set(CALLERID(name)=${DB(cidname/${CALLERID(num)})}))
exten => cidlookup_return,n,Return()
;--== end of [cidlookup] ==--;;end of Incredible PBX original build file

Managing Outbound CallerID & PINs with Incredible PBX

There appear to be a few leftover CallerID bugs in the original Asterisk-GUI code. As a workaround, we’ve added support for setting CallerID numbers in credentials_extensions.conf. This lets you set outbound CallerID numbers on a per trunk basis for providers that allow spoofing of CallerID numbers.

Here’s what the complete credentials_extension.conf file actually looks like. The AnveoPIN is the code used to authorize outbound calls through Anveo Direct. Anveo handles outbound calling differently than most providers so the setting had to go here instead of in the more traditional credentials_sip.conf file. Sorry. The other entries are self-explanatory. This config file can be edited using your favorite text editor. Then service asterisk restart and you’re done.

AnveoPIN = 024680
; Conference Bridge PINs
CONF_USER_PIN = 1234
CONF_ADMIN_PIN = 4321
; DISA password
DISA_PW = 9876
; CallerID numbers
CID_allroutes = 8005551212
CID_CallCentric = 8005551212
CID_ipcomms = 8005551212
CID_voipms = 8005551212
CID_anveodirect = 8005551212

Outbound Call Processing with Incredible PBX

With apologies to our international friends, we’ve included a template to handle processing of all outbound U.S. calls using the "Incredible 9″ trunks. Basically, you can dial a 10-digit number or 1+ the 10-digit number, and the [outbound-allroutes] context will walk the call through all of the trunks for which you’ve registered including Google Voice. If a trunk isn’t registered, it’s skipped. The arrangement of the trunks can be adjusted to meet your own needs. As delivered, calls are processed in the following order: Google Voice, VoIP.ms, Vitelity, les.net, IPcomms, DIDlogic, CallCentric, FutureNine, and Anveo Direct. You obviously can add as many additional providers as desired or rearrange the ones that already are included. And international calling can be added easily using the existing entries as a model. Cut-and-paste is your friend!

[outbound-allroutes]
exten => _NXXNXXXXXX,1,Set(CALLERID(num)=${CID_allroutes})
exten => _NXXNXXXXXX,n,Dial(Motif/GoogleVoice/1${EXTEN}@voice.google.com)
exten => _NXXNXXXXXX,n,Dial(${voipms}/${EXTEN})
exten => _NXXNXXXXXX,n,Dial(${Vitelity}/${EXTEN})
exten => _NXXNXXXXXX,n,Dial(${lesnet_peer}/1${EXTEN})
exten => _NXXNXXXXXX,n,Dial(${ipcomms}/${EXTEN})
exten => _NXXNXXXXXX,n,Dial(${didlogic}/1${EXTEN})
exten => _NXXNXXXXXX,n,Dial(${CallCentric}/1${EXTEN})
exten => _NXXNXXXXXX,n,Dial(${FutureNine}/1${EXTEN})
exten => _NXXNXXXXXX,n,Dial(SIP/${AnveoPIN}1${EXTEN}@sbc.anveo.com)
exten => _NXXNXXXXXX,n,Hangup
exten => _1NXXNXXXXXX,1,Set(CALLERID(num)=${CID_allroutes})
exten => _1NXXNXXXXXX,n,Dial(Motif/GoogleVoice/${EXTEN}@voice.google.com)
exten => _1NXXNXXXXXX,n,Dial(${voipms}/${EXTEN:1})
exten => _1NXXNXXXXXX,n,Dial(${Vitelity}/${EXTEN:1})
exten => _1NXXNXXXXXX,n,Dial(${lesnet_peer}/${EXTEN})
exten => _1NXXNXXXXXX,n,Dial(${ipcomms}/${EXTEN:1})
exten => _1NXXNXXXXXX,n,Dial(${didlogic}/${EXTEN})
exten => _1NXXNXXXXXX,n,Dial(${CallCentric}/${EXTEN})
exten => _1NXXNXXXXXX,n,Dial(${FutureNine}/${EXTEN})
exten => _1NXXNXXXXXX,n,Dial(SIP/${AnveoPIN}${EXTEN}@sbc.anveo.com)
exten => _1NXXNXXXXXX,n,Hangup

DISA Support for Incredible PBX

Unless we missed it, Asterisk-GUI was missing DISA support, the ability to call your PBX and receive dialtone to make an outbound call through the PBX. Because of costs associated with outbound calls, this can make a real difference in some countries. We’ve added DISA support through the D-I-S-A (3472) extension. The DISA password can be set in credentials_extensions.conf. The DISA extension can be added to an IVR for one or more trunks to provide password-protected DISA call access to incoming callers. The dialplan code can be adjusted to meet your own requirements. As delivered, only 10-digit calls are permitted. Just change the 10 on line 10 if you want to enable international dialing. Calls are limited to 150 minutes by default. Just change the 9000 (seconds) entry as desired.

[custom-disa]
exten => s,1,Answer
exten => s,n,Wait(1)
exten => s,n,Set(TIMEOUT(digit)=7)
exten => s,n,Set(TIMEOUT(response)=10)
exten => s,n,Background(enter-password)
exten => s,n,Read(MYCODE,beep,7)
exten => s,n,Noop(DISA_PW: ${DISA_PW})
exten => s,n,GotoIf($["${MYCODE}" = "${DISA_PW}"]?disago:bad,1)
exten => s,n(disago),Set(TIMEOUT(absolute)=9000)
exten => s,n,Read(NUM2CALL,pls-entr-num-uwish2-call,10)
exten => s,n,Background(calling)
exten => s,n,SayDigits("${NUM2CALL}")
exten => s,n,Goto(outbound-allroutes,${NUM2CALL},1)
exten => s,n,Hangup
exten => t,1,Hangup
exten => i,1,Hangup
exten => h,1,Hangup
exten => bad,1,Hangup

Call Forwarding Support with Incredible PBX

We have restored the call forwarding functionality that originally was missing in Asterisk-GUI. The same feature codes found in FreePBX are supported. By dialing *72, you can set forwarding for any extension to either a local number or any other number supported by your dial plan. By dialing *72NXXNXXXXXX or *726XXX (local extensions typically are in the 6000-6299 range with Asterisk-GUI), you can set call forwarding in a single step. *73 can be used to disable call forwarding for the extension from which you dialed, or *74 can be used to disable call forwarding for any extension on your server. A list of currently forwarded extensions can be retrieved using the Asterisk CLI: asterisk -rx "database show CF"

Conference Bridge Support in Incredible PBX

As previously mentioned, Conference Bridge support wasn’t available when Asterisk-GUI was released so we’ve added it. Just dial C-O-N-F (2663) to join the conference bridge. User and admin PINs are set in the credentials_extensions.conf file. You can create as many of these as you need by cloning the code below with different extension numbers:

[conf_bridge]
exten => 2663,1,Macro(user-callerid,)
exten => 2663,n,Set(MEETME_ROOMNUM=2663)
exten => 2663,n,Set(MAX_PARTICIPANTS=0)
exten => 2663,n,Set(MEETME_MUSIC=default)
exten => 2663,n,GotoIf($["${DIALSTATUS}" = "ANSWER"]?READTHEPIN)
exten => 2663,n,Answer
exten => 2663,n,Wait(1)
exten => 2663,n,Set(PINTRIES=0)
exten => 2663,n,Noop(${CONF_USER_PIN})
exten => 2663,n(READTHEPIN),Read(PIN,enter-conf-pin-number,,,,)
exten => 2663,n,GotoIf($[${PIN} = ${CONF_USER_PIN}]?ENDUSER)
exten => 2663,n,GotoIf($[${PIN} = ${CONF_ADMIN_PIN}]?ADMINISTRATOR)
exten => 2663,n,Set(PINTRIES=$[${PINTRIES}+1])
exten => 2663,n,GotoIf($[${PINTRIES}>3]?h,1)
exten => 2663,n,Playback(conf-invalidpin)
exten => 2663,n,Goto(READTHEPIN)
exten => 2663,n(ADMINISTRATOR),Set(CONFBRIDGE(user,admin)=yes)
exten => 2663,n,Set(CONFBRIDGE(user,marked)=yes)
exten => 2663,n,Set(CONFBRIDGE(user,dsp_drop_silence)=yes)
exten => 2663,n,Set(CONFBRIDGE(user,talk_detection_events)=yes)
exten => 2663,n,Set(CONFBRIDGE(user,announce_user_count)=yes)
exten => 2663,n,Set(CONFBRIDGE(user,announce_join_leave)=yes)
exten => 2663,n,Set(CONFBRIDGE(user,music_on_hold_when_empty)=yes)
exten => 2663,n,Goto(ext-meetme,STARTMEETME,1)
exten => 2663,n(ENDUSER),Noop(User Options:)
exten => 2663,n,Set(CONFBRIDGE(user,dsp_drop_silence)=yes)
exten => 2663,n,Set(CONFBRIDGE(user,talk_detection_events)=yes)
exten => 2663,n,Set(CONFBRIDGE(user,announce_user_count)=yes)
exten => 2663,n,Set(CONFBRIDGE(user,announce_join_leave)=yes)
exten => 2663,n,Set(CONFBRIDGE(user,music_on_hold_when_empty)=yes)
exten => 2663,n,Goto(ext-meetme,STARTMEETME,1)
exten => 2663,hint,confbridge:2663

Google Voice Support in Incredible PBX

Google Voice is another little goodie that wasn’t available when Asterisk-GUI came along. Because we’re now running everything on the Asterisk 11 platform, it seemed silly not to include Google Voice support. And we’ve made it about as easy to set up as tying your shoes. Plug in your Google email address and password using the new web interface, and you’re done. By default, all 10-digit and 11-digit outbound calls are first attempted through your Google Voice trunk. You can’t beat free!

If you’ve used the same account elsewhere, Google may block access from your new IP address. In this case, just follow the steps outlined in this Google Reset Procedure to get things going.

Managing Call Detail Records (CDR) in Incredible PBX

The gorgeous CDR Viewer found under the Options -> Advanced Options -> Enable tab in Asterisk-GUI is incredibly flexible. In addition to being lightening fast, you can reorder the CDR listing by simply clicking on any column heading. Clicking twice will sort the list in the opposite order. You also can expand the detail in two ways. Either click on an individual entry (as shown) to display the complete CDR entry or check the Show All Fields checkbox to get the full picture for every CDR entry. The complete CDR database in CSV format can be retrieved from /var/log/asterisk/cdr-csv/Master.csv.

Getting Up to Speed on Asterisk-GUI Basics

We’ve covered a lot of territory this week. You don’t have to master it all at once. Incredible PBX is being engineered to give you the best of both worlds rather than one size fits all. By setting things up this way, you can add your own features and share them with the community as you move up the learning curve. That’s what open source is all about!

The other goal was to leave Asterisk-GUI intact to the greatest extent possible. This has several advantages. First, for previous users of Asterisk-GUI, they’ll feel right at home. Second, we don’t have to write extensive documentation for Asterisk-GUI because many others have already done the heavy lifting. One obvious word of caution. Don’t delete, rename, or otherwise modify the default trunks, users, calling rules, ring groups, and dialplans that already have been created to support Incredible PBX. If you do, you will break things. But feel free to add as many new pieces to your setup as desired and, of course, the extension passwords can be changed in any way you like. Trunk credentials for the "Incredible 9″ preconfigured trunks should be managed using the credentials files documented above.

Here are a few resources that will guide you through mastering the Asterisk-GUI:

Remember the Objective of Incredible PBX for Asterisk-GUI

We’ll close for today by reiterating why we’re introducing a new VoIP alternative with Incredible PBX for Asterisk-GUI. From the ground up, this project is designed as an open source, hobbyist platform so that you can actually LEARN how Asterisk works and become self-sufficient in designing AND managing your own VoIP communications platform. Is it "Pure GUI"? Nope. Here’s why. One of the major reasons that so many folks have had their VoIP systems hacked over the past few years is because those users never quite understood how their "Pure GUI" stuff was working (or not) under the hood.

Does "hobbyist platform" mean it’s a Crappy Purple Scion? Nope. In fact, the Asterisk-GUI tools and Asterisk code in Incredible PBX were designed and written by some of the best Asterisk experts in the business including Mark Spencer, the creator of Asterisk. When the nay-sayers snicker at your "hobbyist platform," just smile and enjoy your independence. 🙂

Originally published: Monday, December 8, 2014



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…

VoIP Hardware Deal of the Year: Meet the $20 Pogoplug 4 with Incredible PBX

This week’s project is not for mere mortals. It’s for techies that also happen to be cheapskates frugal. You may recall the Pogoplug from yesteryear. Well, the Pogoplug 4 still is around and can be yours for under $20 with free 2-day shipping if you’re an Amazon Prime member. But the clock is ticking on these bad boys. Once they’re gone, they’re gone.1

UPDATE: There’s more good news. Now the cost with the Pogoplug Backup & Sharing model is just $10.95! For our purposes, the main difference is one less USB port, but it still has one which is all you need for wireless networking.

So we took the dare and decided to see whether the Pogoplug 4 could actually run Asterisk 11® and FreePBX® 2.11 and Incredible PBX™. And guess what? It may not be pretty, but it works. If you happen to have a Google Voice number and a kid away at school or a grandma in a distant city with an Internet connection or if you have a vacation home or rental property that needs phone service (but not often), then this $20 project may be for you. Configure the device, add a cheap SIP phone, and presto! You’ve got free calling in the U.S. and Canada with your very own phone number for as long as you have Internet service and Google chooses to keep paying your phone bill. 😉

Don’t take our word for it. Call our Pogoplug for a quick IVR demo compliments of Allison:

  1. Call by Name (just say "American Airlines" to try it out)
  2. Conference Call (enter 1234# to join the conference)
  3. Wolfram Alpha (try this: "What planes are overhead?")
  4. Lenny (the Telemarketers’ Worst Nightmare)
  5. Yahoo News Headlines
  6. Weather Forecasts (say a city and state or country)
  7. Today in History
  8. Ring the House Phones (sends you back to Lenny)

Our tip of the hat this week goes to Qui Hong without whom none of this would have been possible. His tutorial on transforming the Pogoplug 4 into a Debian server is a true masterpiece. And his blog is where we begin our adventure once you have the correct Pogoplug 4 in hand: POGO-V4-A3-01. Our link has the correct one, but double-check the Model Number just to be sure.

Converting the Pogoplug 4 into a Debian Platform

Once you have your Pogoplug, you’ll need to scurry over to Qui Hong’s blog and carefully work through his tutorial to convert your Pogoplug into a Debian server. As we’ve said many times before, if you can follow a cookie recipe and end up with edible cookies, then you can do this. Just be very careful of typos. One bad keystroke can turn your Pogoplug into a burnt cookie. Then it becomes a $40 project. 🙂

Installing Incredible PBX 11.12.0 on the Pogoplug 4

Once your Pogoplug has been Debianized, there are five simple steps to get Incredible PBX up and running on your Pogoplug 4:

  1. Purchase a storage device
  2. Download Incredible PBX image
  3. Untar the image on your desktop
  4. Burn the image to an SD card
  5. Insert the SD card in the Pogoplug and boot

Choosing a Storage Platform. The first step is to purchase a suitable SD card. We recommend at least a 16GB Class 10 card from Transcend, SanDisk, or Kingston. All of them are about $10 on Amazon and many include free 2-day shipping for Prime customers.

Downloading Incredible PBX for Pogoplug. From your favorite desktop computer, download the latest build of Incredible PBX from SourceForge. Depending upon your network connection and the SourceForge mirror, it can take awhile. It’s a whopping 1.5GB image!

Untarring Incredible PBX for Pogoplug. Depending upon your desktop platform, untarring incrediblepbx.4.pogoplug.D7.latest.tar.gz is as simple as double-clicking on it in the Downloads folder (on a Mac). On the Windows platform, here are 3 utilities that will do the job. On a Linux desktop, open a Terminal window and…

tar zxvf incrediblepbx.4.pogoplug.D7.latest.tar.gz

Burning the Incredible PBX image to SD card. Once you’ve untarred the file, you’ll find two scripts that make burning the image to an SD card simple if you’re on a Mac or Linux desktop. On a Windows machine, it’s a little more complicated. Most SD cards come preformatted with a DOS partition so your Windows machine should recognize the SD card when it’s inserted. If not, format the card using a utility such as SD Card Formatter. Next, you’ll need Win32 Disk Imager to burn pogoplug.img to your card. Once the image has been transferred, gracefully unmount the card from your desktop.

Booting Incredible PBX on the Pogoplug. Insert the SD card (electronics side down) into your Pogoplug 4. Then apply power to the device after connecting an Ethernet cable to a network with Internet connectivity that can also hand out DHCP addresses. Visit your router to decipher the IP address assigned to the Pogoplug and reserve the IP address so that it doesn’t suddenly change down the road. Log into Incredible PBX as root with pogoplug as your password. Your SSH credentials, Asterisk DUNDI secrets, logs, and network connection options will be initialized. When prompted, press Enter to reboot your server. With some SD cards, you may find yourself waiting an eternity for the promised reboot. After seeing the "rebooting" message, count to ten. If your server still hasn’t rebooted, remove and reapply power. This quirk goes away after the first reboot.

After the reboot, log in again as root with password: pogoplug. Your firewall setup will be initialized to lock down your whitelist to your server’s public and private IP addresses AND the IP address of the machine from which you’re logging in. All of your FreePBX passwords will be randomized as well. The whole process only takes a few seconds.

When the second pass configuration is complete, you will be greeted by a welcoming message. STOP and read it. It has loads of important information about your server’s configuration and your next steps. Press ENTER to review status:

The Next 10 Steps. Before you do anything else, complete the following steps. It only takes a minute to secure and properly configure your server:

  1. Change your root password: passwd
  2. Change your FreePBX admin password: /root/admin-pw-change
  3. Set your correct time zone: /root/timezone-setup
  4. Expand partition to match SD card size: /root/resize-partition
  5. Add any desired IP addresses to WhiteList: /root/add-ip
  6. Decipher the randomized password for extension 701. It’s in the data field:
    mysql -uroot -ppassw0rd -e "select * from asterisk.sip where id=701 and keyword='secret'"
    
  7. Decipher the randomized voicemail password for extension 701. It’s the first entry:
    cat /etc/asterisk/voicemail.conf | grep 701 | cut -f 3 -d " "
    
  8. Enable Windows Networking, if desired: /root/samba-enable.sh
  9. Configure PPTP Network, if desired: cat /root/pptp-faq
  10. Check status to be sure everything is working: status

A Few Important Tips. Every operating system and service provider has their quirks. Ask Bill Gates! Debian and especially Comcast are no different. Fortunately, with Debian, it’s a very short list.

1. Use the following commands (only!) to shutdown and restart your server: halt and reboot. These commands are reworked in Incredible PBX to gracefully shutdown important services so that files don’t get damaged. Please use them!

2. If you ever want to move your server to a different network, complete these steps before you leave your existing network. First, using add-ip or add-fqdn, add the new WhiteList addresses for your new location using Option 0 (all privileges). Otherwise, you won’t be able to access your server once you move. Then issue the commands below. This will trigger a new Phase I update (outlined above) on the default network (eth0) using DHCP the next time you boot your Pogoplug.

touch /etc/update_hostconfig
halt

3. You really do need email connectivity to get the most out of Incredible PBX. It’s the way you receive important notifications from FreePBX, and it’s also how voicemail messages are delivered. From the Linux CLI, test your server to be sure you can send emails reliably:

echo "test" | mail -s testmessage yourname@gmail.com

After checking your spam folder, if you really didn’t get the email, it may be that your service provider is blocking downstream SMTP traffic. You can use your provider’s SMTP server as a smarthost to send out mail with Exim4. Just run the following program to reconfigure the Exim mail server: dpkg-reconfigure exim4-config. Choose the SmartHost option and enter your provider’s SMTP address, e.g. smtp.comcast.net or smtp.knology.net. Exim will restart.

4. If you’d like to activate ODBC support for Asterisk including our ODBC sample applications including Speed Dial, here are the steps. Log into your server as root and issue the following commands:

cd /root
wget http://incrediblepbx.com/odbc-pogoplug.tar.gz
tar zxvf odbc-pogoplug.tar.gz
rm odbc-pogoplug.tar.gz
./mysql-sample
./mysql-odbc
./odbc-gen.sh

Now you can try things out by dialing 222 from a phone connected to your server. When prompted for the employee number, enter 12345. Or dial 223 and, when prompted for the AsteriDex Dial Code, enter 263 (the first 3 letters of the American Airlines entry).

5. Want a list of your completed calls without using FreePBX? It’s easy:

mysql -uroot -ppassw0rd -e "SELECT SUBSTRING(calldate,6,11) AS calldate,clid,src,dst,duration from asteriskcdrdb.cdr WHERE disposition='ANSWERED' ORDER BY calldate DESC"

6. There may be situations in which it is desirable to use wireless networking instead of a wired connection with your Pogoplug. For under $10, you now can add WiFi. Here’s our post on the PIAF Forum to show you how.

Managing FreePBX with Incredible Backup and Restore

Unlike other releases of Incredible PBX, the backup and restore tools can be helpful on the Pogoplug platform. Even though Asterisk runs smoothly, calls sound great, and performance is pretty amazing, the FreePBX GUI is usable but a bit sluggish on the Pogoplug platform. If the performance bothers you, there’s a workaround. Create an Incredible Backup image of your Pogoplug, restore that image on a more normal Ubuntu 14 platform with ample RAM, and then make your FreePBX changes there using the FreePBX GUI. When you’re finished, make a backup of the changes, and then restore that backup to your Pogoplug. It sounds more complicated than it actually is. In essence, you’ll be transforming FreePBX into an Asterisk code generator. In fact, once a backup is restored, you can shut down your web server, and almost everything will still work. We were able to perform the entire procedure including updating all of the FreePBX modules and adding a Google Voice trunk in about 15 minutes using a snapshot of an Incredible PBX for Ubuntu 14 droplet we previously had created. Here are the actual steps to perform the first time:

1. Take an image snapshot of your server with Incredible Backup: /root/incrediblebackup

HINT: No need to do it initially. One is included: /backup/DU-2014.09.07.19.46-A11.12.0-F2.11-I11.12.0.tar.gz

2. Create a 512MB Droplet on Digital Ocean using Ubuntu 14 and Incredible PBX for Ubuntu. Follow the Nerd Vittles tutorial which also has a signup link to assist our projects. Coupon code: ALLSSD10 gets you a $10 credit this month. Once you’re up and running, you may want to take a snapshot so that you can quickly recreate droplets while also avoiding hourly charges for the one you’ve previously built (whether running or not!). Digital Ocean 512MB droplets cost less than a penny an hour so this is not a big ticket item. When you finish with the droplet, just destroy it (once you’ve made a snapshot!). Then the money meter stops. First time build takes about 30 minutes.

3. After creating /backup folder on DO droplet, copy your backup image from step #1 to this folder.

4. Restore the image: /root/incrediblerestore /backup/DU-somefilename.tar.gz

5. Open FreePBX on DO with a browser and log in as admin with your admin password.

6. Make all the changes desired using the tutorial below. Reload FreePBX (red bar) when prompted before exiting!

7. Make a DO backup of your new setup: /root/incrediblebackup

8. Copy the DO backup file to /backup on your Pogoplug.

9. Restore the DO backup: /root/incrediblerestore /backup/DU-somefilename.tar.gz

10. Log out and back into your Pogoplug as root.

Getting Started with VoIP and FreePBX

To access FreePBX, just point to the IP address of the server. The main control panel looks like this:

As configured, the default user account for FreePBX administration is admin. The password is whatever you set in the initial setup above. If you ever forget it, you can reset it easily: /root/admin-pw-change.

For those new to Asterisk and FreePBX, here’s a brief primer on what needs to happen before you can make and receive calls. If you have an existing Google Voice account, lucky you. This gets you a phone number for your PBX so people can call you. And it provides a vehicle to place free calls to plain old telephones in the U.S. and Canada so long as Google continues to provide the free service.

If you don’t have a Google Voice account or a shiny new smartphone, then you will need to purchase a SIP trunk from one of the numerous vendors around the world. Our favorite (because they provide terrific service at a modest price AND provide financial support to the Nerd Vittles, PBX in a Flash, and Incredible PBX projects) is Vitelity. Their special rates and a link for a discount are included at the end of today’s article.

Unlike POTS phone service from Ma Bell, the SIP World is a little different. First, you don’t need to put all your eggs in one basket. A trunk that gets you a phone number for incoming calls need not be with the same vendor that provides a trunk to place outbound calls. In fact, you may want multiple trunks for outbound calls just to have some redundancy. A list of our favorites in the U.S. and Canada is available on the PIAF Forum. Of course, there also are providers that offer all-you-can-eat calling plans. Two of our favorites are Vestalink and Future-Nine.

You’ll also need a softphone or SIP phone to actually place and receive calls. YATE makes a free softphone for PCs, Macs, and Linux machines so download your favorite and install it on your desktop.

Phones connect to extensions in FreePBX to work with Incredible PBX. Extensions talk to trunks (like Google Voice) to make and receive calls. FreePBX uses outbound routes to direct outgoing calls from extensions to trunks, and FreePBX uses inbound routes to route incoming calls from trunks to extensions to make your phones ring. In a nutshell, that’s how a PBX works.

There are lots of bells and whistles that you can explore down the road including voicemail, conferencing, IVRs, autoattendants, paging, intercoms, CallerID lookups, announcements, DISA, call parking and pickup, queues, ring groups, and on and on. And then there’s all of the Incredible PBX applications which are covered separately in this Nerd Vittles article. Once you’re comfortable with one server, you or your company will want some more. This Nerd Vittles article will walk you through interconnecting them into a seamless mesh network so that you can call from one office to another transparently. Yes, those articles were written for the Raspberry Pi. But the beauty of Incredible PBX is that it runs (almost) identically on every server platform.

Here’s our 7-Step Checklist to Getting Started with FreePBX:

1. Setting Up Google Voice. If you want free calling in the U.S. and Canada, then you’ll need an existing Google Voice account that includes the Google Chat feature. You’ll need one dedicated to Incredible PBX, or it won’t work. Log out after setting up the new Google Voice account! Also note that Google Voice may cease to function at any time after May 15, 2014. You can read all about it here.

  • Log into existing Google Voice account
  • Enable Google Chat as Phone Destination
  • Configure Google Voice Calls Settings:
    • Call ScreeningOFF
    • Call PresentationOFF
    • Caller ID (In)Display Caller’s Number
    • Caller ID (Out)Don’t Change Anything
    • Do Not DisturbOFF
    • Call Options (Enable Recording)OFF
    • Global Spam FilteringON

  • Place test call in and out using GMail Call Phone
  • Log out of your Google Voice account

If this fails, then Google may have blocked your IP address. Here’s how to unblock it.

2. Activating a Google Voice Trunk. To create a Trunk in FreePBX to handle calls to and from Google Voice, you’ll need three pieces of information from the Google Voice account you set up above: the 10-digit Google Voice phone number, your Google Voice account name, and your Google Voice password. Choose Connectivity -> Google Voice (Motif) from the FreePBX GUI. The following form will appear:

Fill in the blanks with your information and check only the top 2 boxes. If your Google Voice account name ends in @gmail.com, leave that out. Otherwise, include the full email address. Then click Submit Changes and Apply Config.

To activate a Google Voice trunk, you must restart Asterisk on the Pogoplug platform: amportal restart.

3. Setting a Destination for Incoming Calls. Now that you’ve created your Google Voice Trunk, we need to tell FreePBX how to process inbound calls when someone dials your Google Voice number. There are any number of choices. You could simply ring an extension. Or you could ring multiple extensions by first creating a Ring Group which is just a list of extension numbers. Or you could direct incoming calls to an Interactive Voice Response (IVR) system. By default, Incredible PBX is configured to route all incoming calls to extension 701. You can change the setting whenever you like by choosing Connectivity -> Inbound Routes -> Default. In the Set Destination section of the form, change the target destination from the pull-down lists.

Always click Submit and then click Apply Config to save new settings in FreePBX. This is especially important on the Pogoplug platform because you cannot actually do it once you restore the backup image to the Pogoplug.

4. Activating Additional Trunks with FreePBX. As we mentioned, there are lots of SIP providers to choose from. Once you have signed up for service, configuring the trunk is easy. Here is a quick Cheat Sheet courtesy of Kristian Hare, who translated our original setups into a spreadsheet. Just click on the image below to open it in a new window. Then click on the redisplayed image to enlarge it. The left and right cursor keys will move you around in the image. Click on the image again to shrink it.

5. Changing Extension Passwords. From the main FreePBX GUI, choose Applications -> Extensions. Then click on 701 in the Extension List on the right side of your display. You’ll see a form that looks like this:

For now, we only need to make a few changes. First, you need a very secure password for both the extension itself and your voicemail account for this extension. The extension secret needs to be a combination of letters and numbers. The Voicemail Password needs to be all numbers, preferably six or more. Replace the existing password entries with your own (very secure) entries. You also need to lock down this extension so that it is only accessible from devices on your private LAN. You do that with the deny and permit entries which currently are filled with zeroes. Leave the deny entry the way it is which tells Incredible PBX to block everybody except those allowed in the permit entry below. For the permit, we need the first three octets of your private LAN address, e.g. if your LAN is 192.168.0.something then the permit entry will be 192.168.0.0/255.255.255.0.

Finally, you need to plug in your actual email address in the Voicemail section so that voicemails can be delivered to you when someone leaves a message. You can also include a pager email address if you want a text message alert with incoming voicemails. If you want the voicemails to automatically be deleted from the server after they are emailed to you (a good idea considering the disk storage limitations of your microSD card), change the Delete Voicemail option from No to Yes. That’s it. Now save your settings by clicking the Submit button. Then reload the dialplan by clicking on the red prompt when it appears.

In case you’re curious, unless you’ve chosen to automatically delete voicemails after emailing them, you can retrieve your voicemails by dialing *98701 from any extension on your phone system. You’ll be prompted to enter the voicemail password you set up. In addition to managing your voicemails, you’ll also be given the opportunity to either return the call to the number of the person that called or to transfer the voicemail to another extension’s voicemail box. And you can always leave a voicemail for someone by dialing their extension number preceded by an asterisk, e.g. *701 would let someone leave you a voicemail without actually calling you.

6. Eliminating Audio and DTMF Problems. You can avoid one-way audio on calls and touchtones that don’t work with these simple settings in FreePBX: Settings -> Asterisk SIP Settings. Just plug in your public IP address and your private IP subnet. Then set ULAW as the only Audio Codec.

7. Configuring CallerID Superfecta. In order to match names with phone numbers, Incredible PBX includes a FreePBX application named CallerID Superfecta. Out of the box, Incredible PBX will work fine if you remember to activate CallerID Superfecta whenever you create a new Inbound Route. The CNAM entries also will be displayed in your CDR reports. For those not in the United States, you may prefer to use a lookup source for your numbers other than the ones preconfigured in CallerID Superfecta. You will find all of the available modules on the POSSA GitHub site. Just download the ones desired into /var/www/html/admin/superfecta/sources and then activate the desired sources in Admin -> CID Superfecta -> Default. You can test your results and the performance using the Debug facility that’s built into the module.

If you’re using FreePBX on an Ubuntu server in the Cloud, now is the time to drop down to the Linux command prompt, log in as root, and make a backup: /root/incrediblebackup. Copy the backup from /backup to the same folder on your Pogoplug and restore it: /root/incrediblerestore /backup/DU-somefilename.tar.gz. Then restart Asterisk on your Pogoplug: amportal restart. Finally, log out and back into your Pogoplug to assure that FreePBX will function properly on that platform.

Adding Speech Recognition for Incredible PBX Applications

We used to include Google’s Speech-to-Text service in earlier Incredible PBX builds. Unfortunately, Google has changed the rules a bit. Assuming your server still meets the "personal and development" standard, you can obtain an API key from Google and reactivate speech-to-text functionality for many of the Incredible PBX applications including Weather Reports by City (949), AsteriDex Voice Dialing by Name (411), SMS Dictator (767), and Wolfram Alpha for Asterisk (4747). To activate the STT service, just complete the steps in our tutorial. Then sign up for a Wolfram Alpha App ID (tutorial here), and run the following install scripts:

/root/wolfram/wolframalpha-oneclick.sh
cp /root/pygooglevoice/bin/gvoice /usr/bin
ln -s /usr/bin/gvoice /usr/local/sbin/gvoice
cd /root/pygooglevoice
python setup.py install
/root/smsdictator/sms-dictator.sh

Configuring a YATE Softphone for Pogoplug

As we mentioned, the easiest way to get started with Incredible PBX is to set up a free YATE softphone on your Desktop computer. Versions are available at no cost for Macs, PCs, and Linux machines. Just download the appropriate one and install it from this link. Once installed, it’s a simple matter to plug in your extension 701 credentials and start making calls. Run the application and choose Settings -> Accounts and click the New button. Fill in the blanks using the IP address of Incredible PBX on the Pogoplug, 701 for your account name, and whatever password you’re using for the extension. Click OK.

Once you are registered to extension 701, close the Account window. Then click on YATE’s Telephony Tab and place your first call. It’s that easy!

Introducing Incredible PBX 11.12.0 for the Pogoplug

For those of you that missed last week’s article on the CuBox platform and are new to Asterisk and the world of VoIP telephony, let us take a moment and explain how Incredible PBX fits into the puzzle. For lack of a better term, Incredible PBX is a turnkey aggregation in a bootable image that is based upon a superset of Debian 7 packages plus Asterisk, the FreePBX GUI, and a sizable collection of applications for the Asterisk platform. You download a tarball, decompress it, write the image file to an SD card, insert the card into your Pogoplug 4, and presto! You’ve got a turnkey PBX. Add credentials for a trunk or two to make and receive calls, connect some phones, and your SOHO office or home will come alive with a versatile PBX platform that used to cost organizations hundreds of thousands of dollars. What’s included in Incredible PBX? Glad you asked. Here’s a 3-minute video showcasing a few of our favorite Incredible PBX text-to-speech applications:


The Incredible PBX 11 Inventory. Here’s the current feature set on the Pogoplug platform. In addition to its superset of hundreds of Debian 7 packages, Asterisk 11, and FreePBX 2.11 with the Lighttpd web server, Exim 4 mail server, MySQL, PHP, phpMyAdmin, and the IPtables Linux firewall, check out these additions:

A Few Words About Security. Thanks to its Zero Internet Footprint™ design, Incredible PBX is different. It remains the most secure Asterisk-based PBX around. What this means is Incredible PBX has been engineered to sit anywhere, either behind a NAT-based, hardware firewall or directly on the Internet. No device other than those on your private LAN, a few of the major (trusted) SIP providers around the world, and those that you authorize on your WhiteList can even see your server. Additional IP addresses can be added to the WhiteList by the administrator registering new IP addresses using add-ip or add-fqdn from the Linux CLI. Read about this $100,000 VoIP phone bill, and you’ll better appreciate why WhiteList-based server security has become absolutely essential. WhiteList Security means only those devices with a registered IP address in your WhiteList can get to your server’s resources. To the NSA and everyone else, your server doesn’t even show up on the radar. Their only way to contact you is a POTS telephone using your published phone number. Our complete tutorial on Travelin’ Man 3 is available here. With Incredible PBX for the Pogoplug 4, it’s installed and preconfigured. Enjoy!


Don’t forget to List Yourself in Directory Assistance so everyone can find you by dialing 411. And add your new number to the Do Not Call Registry to block telemarketing calls. Or just call 888-382-1222 from your new number.

Originally published: Monday, September 8, 2014


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. Our forum is extremely friendly and is supported by literally hundreds of Asterisk gurus. In fact, we already have a thread underway on the Pogoplug adventure.



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…

  1. Some of our links refer users to Amazon or other service providers when we find their prices are competitive for the recommended products. Nerd Vittles receives a small referral fee from these providers to help cover the costs of our blog. We never recommend particular products solely to generate commissions. However, when pricing is comparable or availability is favorable, we support these providers because they support us. []

The Asterisk Mother Lode: Introducing Incredible PBX 4.0 with FreePBX 2.10

We thought we’d start your summer off with a bang by introducing an all-new Incredible PBX™. So what’s new? 50 Asterisk® Apps. 9-Layer Security. 20 Preconfigured VoIP Provider Trunks. 1-Click Installers for Asterisk.everything. FreePBX® 2.10. Certified Asterisk support. And what’s the same? It’s all still FREE!

Coming January 19: Incredible PBX 11 & Incredible Fax for Asterisk 11 and FreePBX 2.11

Coming February 11: Incredible PBX 10 & Incredible Fax for 64-bit Asterisk 1.8 and FreePBX 2.10

We heard you. Yes, we needed Incredible PBX™ support for FreePBX 2.10 with Asterisk 1.8. And today it’s finally here. Incredible PBX 4.0 brings all of the original Asterisk applications plus more than a dozen new turnkey applications released in 2012 and an all-new level of security to protect your phone bill. The installation process is so simple a monkey could do it. You still can add Incredible Fax 2.0™ to deliver free faxing with HylaFax™ and AvantFax® in a setup process that’s as simple as pressing the Enter key. When you’re finished, you’ll have one of the open source wonders of the world with free phone calls and faxing throughout the U.S. and Canada together with almost every Asterisk application ever developed. There’s more good news. You don’t have to be smarter than a fifth grader to get any of it installed and working reliably with Asterisk. Just run the simple install script, and presto.

July Update: Incredible in the Cloud. For those that would prefer to run Incredible PBX 4.0 in the Cloud, RentPBX now is offering a pre-built image with PIAF-Brown and FreePBX 2.10 that is ready to go using servers all around the world. On your first order, Incredible in the Cloud is just $15/month using coupon code PIAF2012. Sign up at this link.

August 15 Update: Incredible Pi. We needed a back-to-school project, and this year we’ve chosen to port most of the Incredible PBX feature set to the new $35 Raspberry Pi. Thanks to the pioneering work of Gernot, this was fairly straight-forward. We’re still aiming for an early September release but, if you’d like to get a head start, you can order your device and follow our progress on the PIAF Forum.

If you’re curious why we no longer are supporting Asterisk 10, read all about it in last week’s Nerd Vittles article. Suffice it to say, if Digium is unwilling to fully support the platform, then we think it is a dead-end product. Unfortunately, this further splinters Asterisk development. In addition to long-term support (LTS) releases, "certified" (SLA) releases, and "other" releases, we now have a new category for Digium-supported modules and "community modules." To us, this signals the death knell for modules which Digium is no longer willing to actively support. Consequently, we will no longer recommend Asterisk 10 for production use. And we continue to be nervous about what the future holds for Google Voice support in Asterisk 1.8 and Asterisk 11 as well. The good news is, if you read last week’s article, you already know we have a rock-solid alternative waiting in the wings. YATE rocks! And FreeSentral is no slouch either.

The Incredible PBX 4 Inventory. For those that have never heard of The Incredible PBX, here’s the current 4.0 feature set in addition to the base install of PBX in a Flash with the CentOS 6.2, Asterisk 1.8 or Certified Asterisk 1.8, FreePBX 2.10, and Apache, SendMail, MySQL, PHP, phpMyAdmin, IPtables Linux firewall, Fail2Ban, and WebMin. Cepstral TTS, Incredible Fax, Skype, NeoRouter and PPTP VPNs, and all sorts of backup solutions are still just one command away and may be installed using the scripts included with Incredible PBX 4 and PBX in a Flash. Type help-pbx and browse /root and /root/nv for dozens of one-click install scripts.

And then there’s the Incredible Freebie! As they say, "Never look a gift horse in the mouth." What began as a kludgey, dual-call, dual-provider Google Voice implementation to take advantage of Google’s free PSTN calling in the U.S. and Canada with Asterisk 1.4 and 1.6 is now a zippy-quick, Gtalk-based calling platform that rivals the best SIP-to-SIP calls on the planet. The Incredible PBX Google Voice implementation provides virtually instantaneous PSTN connections to almost anybody, anywhere. Trust us! Except for the price which is still free, you’ll never know you weren’t connected via Ma Bell’s overpriced long-distance lines and neither will the Little Mrs. And, yes, our recommended $50 Nortel SIP videophone is plug-and-play.

To get started, download the latest 32-bit PBX in a Flash 2.0.6.2 ISO from SourceForge, burn to then boot from the PIAF2 CD, choose the PIAF-Purple option to load Asterisk 1.8 or PIAF-Brown to load Certified Asterisk, and pick FreePBX 2.10 when prompted. Once the PIAF2 install is completed, just run the new Incredible PBX 4.0 installer. In less than an hour, you’ll have a turnkey PBX with a local phone number and free calling in the U.S. and Canada via your own Google Voice account plus over 50 terrific Asterisk applications to keep you busy exploring for months.

A Few Words About Security. Thanks to its Zero Internet Footprint™ design, Incredible PBX 4 is different. It remains the most secure Asterisk-based PBX around. What this means is The Incredible PBX™ has been engineered to sit safely behind a NAT-based, hardware firewall with no Internet port exposure to your actual server. For those needing remote telephone support, Incredible PBX loads Travelin’ Man 2 and 3 for you so your IPtables Linux Firewall can be either self-managed by end-users or set up with predefined IP addresses and FQDNs for all of your remote sites. If you’ve read about Asterisk’s latest SIP vulnerability published just last week and occurring almost as often as you tie your shoes, then you’ll understand why WhiteList-based server security has become absolutely essential. WhiteList Security means only those devices with a registered IP address in your WhiteList can get to your server’s resources. To everyone else, your server doesn’t even exist. Their only way to connect to you is with a POTS telephone and your published phone number.

For those with multiple servers to interconnect, we’ve provided one-click installers for not one but two VPN solutions: NeoRouter and PPTP. Suffice it to say, Incredible PBX has Security in Spades™: customized IPtables Linux Firewall, Fail2Ban tweaked for Asterisk security monitoring, FreePBX Extension Lockdown by IP address, randomized FreePBX extension passwords, Travelin’ Man 2 and 3 WhiteList Security, multiple VPN solutions for encrypted server-to-server communications, plus a bottom-up design focused on flawless operation behind a hardware-based firewall. You won’t find a more secure Personal Branch Exchange™ at any price.

Here’s the Incredible PBX 9-Layer Security Model:

Prerequisites. Here’s what we recommend to get started properly:

We’ve shifted gears on our recommended Atom platform for PIAF2 after excellent results with both the single-core and dual-core Atom kits manufactured by Foxconn (pictured on the left below). That’s the dLink Gaming Router on the right. Seems kinda silly to spend twice as much for a machine that you can build yourself in under 5 minutes. Basically you remove four screws, insert a Phillips screwdriver in one of the holes and gently pry the cover away from the box. Then you pop off the back by inserting a small flat-blade screwdriver, remove four more screws, slide in a solid-state drive (SSD) and a 4GB stick of notebook computer RAM, and you’re done in a couple minutes. Replace the screws and the cover, and you have a perfect PIAF2 platform with terrific performance and no moving parts for about $200. The link above will take you to the PIAF Forum thread for these machines. They go on sale almost weekly. See the right column of Nerd Vittles (just below our tweets) for this week’s special at Amazon. The dual-core Atom box typically is under $150. It could easily handle an office with 50+ employees sitting on a bookshelf with an Internet connection (wired or wireless!). No noise. Very little heat. Low power requirements. Perfect!

Installing Incredible PBX 4.0. The installation process is simple. Here are the 3 Easy Steps to Free Calling, and The Incredible PBX will be ready to receive and make free U.S./Canada calls immediately:

1. Install PIAF-Purple or PIAF-Brown with FreePBX 2.10 using 32-bit PIAF2 ISO
2. Run Incredible PBX 4 installer
3. Configure Google Voice and a softphone or SIP phone

Installing PBX in a Flash. Here’s a quick tutorial to get PBX in a Flash 2 installed. To use Incredible PBX 4, just install the latest 32-bit version of PBX in a Flash 2. Unlike other Asterisk aggregations, PBX in a Flash utilizes a two-step install process. The ISO only installs the CentOS 6.2 operating system. Once CentOS is installed, the server reboots and downloads a payload file that includes Asterisk, FreePBX, and many other VoIP and Linux utilities including all of the new Google Voice components. Just choose the PIAF-Purple or PIAF-Brown payload. You’ll then be prompted to choose your flavor of FreePBX. Choose FreePBX 2.10. Then set your time zone and set up a password for FreePBX access, and you’re all set. As part of the install, yum now will automatically update your operating system with the latest updates for CentOS 6.2.

You can download the 32-bit PIAF2 from SourceForge. Burn the ISO to a CD. Then boot from the installation CD and press the Enter key to begin. If you’ve chosen a machine without an optical drive such as the Atom boxes we recommend, then this Nerd Vittles article will show you how to make a bootable flash drive from the PIAF2 ISO.

WARNING: This install will completely erase, repartition, and reformat EVERY DISK (including USB flash drives) connected to your system so disable any disk you wish to preserve AND remove any USB flash drives! Press Ctrl-C to cancel.

At the time zone prompt, tab once, highlight your time zone, tab to OK and press Enter. At the password prompt, make up a VERY secure root password. Type it twice. Tab to OK, press Enter. Get a cup of coffee. Come back in about 5 minutes. When the system has installed CentOS 6.2, it will reboot. Remove the CD promptly. After the reboot, choose PIAF-Purple or PIAF-Brown. In less than a minute, you’ll be prompted for the FreePBX version you wish to install. Choose FreePBX 2.10 and fill in your choices for the remaining prompts. Then have a 15-minute cup of coffee. After installation is complete, the machine will reboot a second time. You now have a PBX in a Flash base install. On a stand-alone machine, it takes 30-60 minutes. On a virtual machine, it takes about half that time. Log into your server with your root password and write down the server’s IP address. You’ll need it to access FreePBX with your browser. While you’re logged in, issue the following command to make sure your IPtables firewall loads after your network is enabled:

echo "/etc/init.d/iptables restart" >> /etc/rc.d/rc.local

NOTE: For previous users of PBX in a Flash, be aware that this new version automatically runs update-programs, update-fixes, and passwd-master for you. So your system is relatively secure out of the box if you install it behind a hardware-based firewall as we recommend! See the Proxmox cautionary alert in the footnotes to this article!

Configuring Google Voice. If you plan to use Google Voice, you’ll need a dedicated Google Voice account to support Incredible PBX 4. If you want to use the inbound fax capabilities of Incredible Fax 2, then you’ll need an additional Google Voice line that can be routed to the FAX miscellaneous destination using FreePBX. The more obscure the username (with some embedded numbers), the better off you will be. This will keep folks from bombarding you with unsolicited Gtalk chat messages, and who knows what nefarious scheme will be discovered using Google messaging six months from now. So keep this account a secret!

We’ve tested this extensively using an existing Gmail account, and inbound calling is just not reliable. The reason seems to be that Google always chooses Gmail chat as the inbound call destination if there are multiple registrations from the same IP address. So, be reasonable. Do it our way! Set up a dedicated Gmail and Google Voice account, and use it exclusively with Incredible PBX 4. It’s free at least through 2013. Google Voice no longer is by invitation only so, if you’re in the U.S. or have a friend that is, head over to the Google Voice site and register. If you’re living on another continent, see MisterQ’s posting for some setup tips.

You must choose a telephone number (aka DID) for your new account, or Google Voice calling will not work… in either direction. Google used to permit outbound Gtalk calls using a fake CallerID, but that obviously led to abuse so it’s over! You also have to tie your Google Voice account to at least one working phone number as part of the initial setup process. Your cellphone number will work just fine. Don’t skip this step either. Just enter the provided 2-digit confirmation code when you tell Google to place the test call to the phone number you entered. Once the number is registered, you can disable it if you’d like in Settings, Voice Setting, Phones. But…

IMPORTANT: Be sure to enable the Google Chat option as one of your phone destinations in Settings, Voice Setting, Phones. That’s the destination we need for The Incredible PBX to work its magic! Otherwise, all inbound and outbound calls will fail. If you don’t see this option, you may need to call up Gmail and enable Google Chat there first. Then go back to the Google Voice Settings.

While you’re still in Google Voice Settings, click on the Calls tab. Make sure your settings match these:

  • Call ScreeningOFF
  • Call PresentationOFF
  • Caller ID (In)Display Caller’s Number
  • Caller ID (Out)Don’t Change Anything
  • Do Not DisturbOFF
  • Call Options (Enable Recording)OFF
  • Global Spam FilteringON

Click Save Changes once you adjust your settings. Under the Voicemail tab, plug in your email address so you get notified of new voicemails. Down the road, receipt of a Google Voice voicemail will be a big hint that something has come unglued on your PBX.

Incredible PBX 4.0 Installation. Log into your server as root and issue the following commands to run The Incredible PBX 4 installer:

cd /root
wget http://incrediblepbx.com/incrediblepbx4.x
chmod +x incrediblepbx4.x
./incrediblepbx4.x

UPDATE: There are some new releases. Incredible PBX 10 supports 64-bit PIAF-Purple with Asterisk 1.8 and FreePBX 2.10. There also are prebuilt appliances for Amazon EC2 and VirtualBox. Incredible PBX 11 supports 32-bit PIAF-Green with Asterisk 11 and FreePBX 2.11. There also are prebuilt appliances for VirtualBox and VMware. Both Incredible PBX 10 and Incredible PBX 11 support Incredible Fax as well.

When The Incredible PBX install begins, you’ll be prompted for your FreePBX maint password. This is required to properly configure CallerID Superfecta for you. Your credentials never leave your server!

Now have another 15-minute cup of coffee. While you’re waiting just make sure that you’ve heeded our advice and installed your server behind a hardware-based firewall. No ports need to be opened on your firewall to support Incredible PBX. Leave it that way!

One final word of caution is in order regardless of your choice of providers: Do NOT use special characters in any provider passwords, or nothing will work!

FINAL STEPS. Once the Incredible PBX install completes, there are two optional steps for those that will have remote phones or users outside your firewall. Install both Travelin’ Man 2 and 3 for an ultra-secure system. Also be sure to run update-fixes before restarting your machine!

Logging in to FreePBX 2.10. Using a web browser, you access the FreePBX GUI by pointing your browser to the IP address of your Incredible PBX. Click on the Users tab. It will change to Admin. Now click the FreePBX button. When prompted for a username, it’s maint. When prompted for the password, it’s whatever you set up as your maint password when you installed Incredible PBX 4. If you forget it, you can always reset it by logging into your server as root and running passwd-master.

Configuring Google Voice Trunks in FreePBX. All trunk configurations now are managed within FreePBX, including Google Voice. This makes it easy to customize your Incredible PBX to meet your specific needs. If you plan to use Google Voice, here’s how to quickly configure one or more Google Voice trunks within FreePBX. After logging into FreePBX with your browser, click the Other tab and choose Google Voice. To Add a new Google Voice account, just fill out the form:

Phone number is your 10-digit Google Voice number. Username is your Google Voice account name without @gmail.com. Password is your Google Voice password. NOTE: Don’t use 2-stage password protection in this Google Voice account! Be sure to check all three boxes: Add trunk, Add routes, and Agree to TOS. Then click Submit Changes and reload FreePBX. You can add additional Google Voice numbers by clicking Add GoogleVoice Account option in the right margin and repeating the drill.

While you’re still in FreePBX, choose Setup, Extensions, and click on the 701 extension. Write down your extension password which you’ll need to configure a phone in a minute.

IMPORTANT LAST STEP: Google Voice will not work unless you restart Asterisk from the Linux command line at this juncture. Using SSH, log into your server as root and issue the following command: amportal restart. You’ll note that Incredible PBX 4 now automatically enables the Asterisk Gtalk and Jabber modules for you once you create a Google Voice account.

Incredible Fax 2 Installation. If you want the added convenience of having your Incredible PBX double as a free fax machine, run install-incredfax2 after the Incredible PBX 4 install completes. Plug in your email address for delivery of incoming faxes and enter your home area code when prompted. For every other prompt, just press the Enter key. If you’d like to also add the optional OCR utility, just choose it when prompted. For complete documentation, see this Nerd Vittles article. Don’t forget that a REBOOT OF YOUR SERVER is requiredwhen the install is finished, or faxing won’t work! Then log in through the PIAF GUI using maint:password. Be sure to change your password!

Also be sure to set up a second, dedicated Google Voice number if you want support for inbound faxing. Once the Google Voice credentials are configured in FreePBX for the additional Google Voice line, simply add an Inbound Route for this DID to point to the fax destination. This comes preconfigured with Incredible PBX 4. Just plug in your 10-digit Google Voice number and other entries shown in the form below. Save your entries and reload FreePBX.

Extension Password Discovery. If you’re too lazy to look up your extension 701 password using the FreePBX GUI, you can log into your server as root and issue the following command to obtain the password for extension 701 which we’ll need to configure your softphone or color videophone in the next step:

mysql -uroot -ppassw0rd -e "select id,data from asterisk.sip where id='701' and keyword='secret'"

The result will look something like the following where 701 is the extension and 18016 is the randomly-generated extension password exclusively for your Incredible PBX:

+—–+——-+
id         data
+—–+——-+
701      18016
+—–+——-+

Configuring a SIP Phone. There are hundreds of terrific SIP telephones and softphones for Asterisk-based systems. Once you get things humming along, you’ll want a real SIP telephone such as the $50 Nortel color videophone we’ve recommended above. You’ll also find lots of additional recommendations on Nerd Vittles and in the PBX in a Flash Forum. If you’re like us, we want to make damn sure this stuff works before you shell out any money. So, for today, let’s download a terrific (free) softphone to get you started. We recommend X-Lite because there are versions for Windows, Mac, and Linux. So download your favorite from this link. Install and run X-Lite on your Desktop. At the top of the phone, click on the Down Arrow and choose SIP Account Settings, Add. Enter the following information using your actual password for extension 701 and the actual IP address of your Incredible PBX server instead of 192.168.0.251. Click OK when finished. Your softphone should now show: Available.

Incredible PBX Test Flight. The proof is in the pudding as they say. So let’s try two simple tests. First, let’s place an outbound call. Using the softphone, dial your 10-digit cellphone number. Google Voice should transparently connect you. Answer the call and make sure you can send and receive voice on both phones. Second, from another phone, call the Google Voice number that you’ve dedicated to The Incredible PBX. Your softphone should begin ringing shortly. Answer the call, press 1 to accept the call, and then make sure you can send and receive voice on both phones. Hang up. If everything is working, congratulations!

Here’s a brief video demonstration showing how to set up a softphone to use with your Incredible PBX, and it also walks you through several of the more than 50 Asterisk applications included in your system.



Learn First. Explore Second. Even though the installation process has been completed, we strongly recommend you do some reading before you begin your VoIP adventure. VoIP PBX systems have become a favorite target of the hackers and crackers around the world and, unless you have an unlimited bank account, you need to take some time learning where the minefields are in today’s VoIP world. Start by reading our Primer on Asterisk Security. We’ve secured all of your passwords except your root password and your passwd-master password. We’re assuming you’ve put very secure passwords on those accounts as if your phone bill depended upon it. It does! There’s loads of additional documentation on the PBX in a Flash documentation web site.

Solving One-Way Audio Problems. If you experience one-way audio on some of your phone calls, you may need to adjust your Asterisk SIP settings. These now can be tweaked within FreePBX by choosing Settings, Asterisk SIP Settings. Just plug in your public IP address and replace 192.168.0.0 with the subnet address of your private network. Save settings and reload FreePBX.

Choosing VoIP Providers. Nothing beats free when it comes to long distance calls. But nothing lasts forever. And, in the VoIP World, redundancy is dirt cheap. So we strongly recommend you set up another account with Vitelity using our special link below. This gives your PBX a secondary way to communicate with every telephone in the world, and it also gets you a second real phone number for your new system… so that people can call you. Here’s how it works. You pay Vitelity a deposit for phone service. They then will bill you $3.99 a month for your new phone number. This $3.99 also covers the cost of unlimited inbound calls (two at a time) delivered to your PBX for the month. For outbound calls, you pay by the minute and the cost is determined by where you’re calling. If you’re in the U.S., outbound calls to anywhere in the U.S. are a little over a penny a minute. If you change your mind about Vitelity and want a refund of the balance in your account, all you have to do is ask. The trunks for Vitelity already are preconfigured with The Incredible PBX. Just insert your credentials using FreePBX and uncheck the Disable Trunk checkbox. Then add the Vitelity trunk as the third destination for your default outbound route. That’s it. Congratulations! You now have a totally redundant phone system.

Incredible PBX includes preconfigured trunk setups for all of your favorite trunk providers. Just plug in your credentials and activate the trunks you need. In less than a minute, you’re done. Here’s the Incredible PBX Top 20 Trunk List with some reasons why these providers made our short list:

  • AxVoice ($14.99/mo. Business Plan; $16.58/mo. Unlimited Calls to 45 Countries)
  • CallCentric (Good International Calling Rates)
  • DIDforSale (20 channels per DID; unlimited DID calls for $8.99/mo.)
  • ENUM
  • FlowRoute (Good International Calling Rates)
  • FreeNum
  • Future-Nine (Supports CallerID Spoofing)
  • Google Voice (Free DIDs and free U.S./Canada calling)
  • IPkall (Free SIP/IAX DIDs)
  • Les.net (Supports CallerID Spoofing; very low rates)
  • LocalPhone (Dirt-cheap DIDs and calling rates worldwide; Free iNum DID)
  • Simon Telephonics (Free SIP-to-GoogleVoice Gateway)
  • SIPgate (Free residential DIDs sometimes)
  • Skype (Free Skype-to-Skype calls worldwide)
  • Teliax (Unlimited inbound DID $5/mo.)
  • Vitelity (Our supporter and the Best in the Business!)
  • VoIPms (CallerID spoofing; Free iNum calling; Very low rates)
  • VoIPMyWay (Residential Unlimited: $15.50/mo. Business Unlimited: $40/mo.)
  • VoIPStreet (Free DID)

Stealth AutoAttendant. When incoming calls arrive, the caller is greeted with a welcoming message from Allison which says something like "Thanks for calling. Please hold a moment while I locate someone to take your call." To the caller, it’s merely a greeting. To those "in the know," it’s actually an AutoAttendant (aka IVR system) that gives you the opportunity to press a button during the message to trigger the running of some application on your Incredible PBX. As configured, the only option that works is 0 which fires up the Nerd Vittles Apps IVR. It’s quite easy to add additional features such as voicemail retrieval or DISA for outbound calling. Just edit the MainIVR option in FreePBX under Setup, IVR. Keep in mind that anyone (anywhere in the world) can choose these options. So be extremely careful not to expose your system to security vulnerabilities by making certain that any options you add have very secure passwords! It’s your phone bill. 😉

Configuring Email. You’re going to want to be notified when updates are available for FreePBX, and you may also want notifications when new voicemails arrive. Everything already is set up for you except actually entering your email notification address. Using a web browser, open the FreePBX GUI by pointing your browser to the IP address of your Incredible PBX. Then click Administration and choose FreePBX. To set your email address for FreePBX updates, go to Settings, General Settings and scroll to the bottom of the screen. To configure emails to notify you of incoming voicemails, go to Applications, Extensions, 701 and scroll to the bottom of the screen. Then follow your nose. Be sure to reload FreePBX when prompted after saving your changes.

A Final Word About Security. In case you couldn’t tell, security matters to us, and it should matter to you. Not only is the safety of your system at stake but also your wallet and the safety of other folks’ systems. Our only means of contacting you with security updates is through the RSS Feed that we maintain for the PBX in a Flash project. This feed is prominently displayed in the web GUI which you can access with any browser pointed to the IP address of your server. Check It Daily! Or add our RSS Feed to your favorite RSS Reader. We also recommend you follow @NerdUno on Twitter. We’ll keep you entertained and provide immediate notification of security problems that we hear about. Finally, visit the PIAF Forums regularly. You’ll be surprised what you can learn in 10 minutes of browsing. Be safe!

Kicking the Tires. OK. That’s enough tutorial for today. Let’s play. Using your new softphone, begin your adventure by dialing these extensions:

  • D-E-M-O – Incredible PBX Demo (running on your PBX)
  • 1234*1061 – Nerd Vittles Demo via ISN FreeNum connection to NV
  • Z-I-P – Enter a five digit zip code for any U.S. weather report
  • 6-1-1 – Enter a 3-character airport code for any U.S. weather report
  • 5-1-1 – Get the latest news and sports headlines from Yahoo News
  • T-I-D-E – Get today’s tides and lunar schedule for any U.S. port
  • F-A-X – Send a fax to an email address of your choice
  • 4-1-2 – Phonebook lookup/dialer with AsteriDex
  • M-A-I-L – Record a message and deliver it to any email address
  • C-O-N-F – Set up a MeetMe Conference on the fly
  • 1-2-3 – Schedule regular/recurring reminder (PW: 12345678)
  • 2-2-2 – ODBC/Timeclock Lookup Demo (Empl No: 12345)
  • 2-2-3 – ODBC/AsteriDex Lookup Demo (Code: AME)
  • 3-3-3 – Look up a definition for any word or term
  • 9-4-9 – Weather forecast for any city in the world
  • 9-5-0 – Retrieve stock report by stock symbol
  • 9-5-1 – Latest Google News headlines
  • Dial *68 – Schedule a hotel-style wakeup call from any extension
  • 1-204-666-1001 – PIAF Support Conference Bridge (Conf#: 1091881)
  • 882*1061VoIP Users Conference every Friday at Noon (EST)

PBX in a Flash SQLite Registry. We want to introduce you to the PBX in a Flash Registry which uses SQLite, a zero-configuration SQL-compatible database engine. After logging into your server as root, just type show-registry for a listing of all of the applications, versions, and install dates of everything on your new server. Choosing the A option will generate registry.txt in the /root folder while the other options will let you review the applications by category on the screen. For example, the G option displays all of The Incredible PBX add-ons that have been installed. Here’s the complete list of options:

  • A – Write the contents of the registry to registry.txt
  • B – PBX in a Flash install details
  • C – Extra programs install details
  • D – Update-fixes status and details
  • E – RPM install details
  • F – FreePBX modules install details
  • G – Incredible PBX install details
  • Q – Quit this program

And here’s a sample from an install we recently completed.


Special Thanks. It’s hard to know where to start in expressing our gratitude for all of the participants that made today’s incredibly simple-to-use product possible. To Philippe Sultan and the rest of the Asterisk development team, thank you for making Jabber jabber with Asterisk. Wish you were still involved! To Leif Madsen, thanks for your pioneering work with Gtalk and Jabber which got this ball rolling. To Philippe Lindheimer, Tony Lewis, and the rest of the FreePBX development team, thanks for FreePBX 2.10 which really makes Asterisk shine. To Lefteris Zafiris, thank you for making Flite and all of the Google TTS and STT utilities work with Asterisk 1.8 thereby preserving all of the Nerd Vittles text-to-speech applications while allowing us to add dozens of new ones. To Darren Sessions, thanks for whipping app_swift into shape and restoring Cepstral and commercial TTS applications to the land of the living. The new all-in-one installer is awesome. To all of our pals in the PBX Open Source Software Alliance (POSSA) that develop and maintain some our favorite Asterisk apps, you’re unbelievable! To Andrew Nagy, thanks for all you do and especially for keeping Google Voice humming along in FreePBX. And to our pal, Tom King, we couldn’t have done it without you. You rolled up your sleeves and really made CentOS 6.2 and Asterisk 1.8 sit up and bark. No one will quite understand what an endeavor that is until they try it themselves. CentOS 6 implementations of Asterisk are few and far between, and Tom has made it look incredibly easy. It wasn’t! And, last but not least, to all of our pioneers and beta testers who spent their Independence Day and many other days testing this new release, THANK YOU!

Don’t forget to List Yourself in Directory Assistance so everyone can find you by dialing 411. And add your new number to the Do Not Call Registry to block telemarketing calls. Or just call 888-382-1222 from your new number. Enjoy!

Originally published: Monday, July 9, 2012


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! In fact, there is a thread dedicated to support of Incredible PBX 4.0. 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 ordinary users just like you. You won’t have to wait long for an answer to your question.


Weather Alert. If you’re already using the Nerd Vittles Weather Applications including Weather by ZIP Code and Weather by Airport Code, you may have noticed that the National Weather Service "improved" things over the Fourth of July holiday. Consequently, neither app worked any longer. The fixes now have been posted on the PIAF Forum and can be downloaded at your convenience. Incredible PBX 4.0 already includes the updates.


Astricon 2012. Astricon 2012 will be in Atlanta at the Sheraton beginning October 23 through October 25. We hope to see many of you there. We called Atlanta home for over 25 years so we’d love to show you around. Be sure to tug on my sleeve and mention you’d like a free PIAF Thumb Drive. We’ll have a bunch of them to pass out to our loyal supporters. Nerd Vittles readers also can save 20% on your registration by using coupon code: AC12VIT.



Need help with Asterisk? Visit the PBX in a Flash Forum.
Or Try the New, Free PBX in a Flash Conference Bridge.


whos.amung.us If you’re wondering what your fellow man is reading on Nerd Vittles these days, wonder no more. Visit our new whos.amung.us statistical web site and check out what’s happening. It’s a terrific resource both for us and for you.


 

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…

Introducing Incredible PBX 3.0 and Incredible Fax 2.0

As Nerd Vittles begins its seventh year, a birthday bash is certainly in order. And today we have not one but two of Tom King's reworked masterpieces to introduce. The PIAF2™ introduction with CentOS 6.2™ and your choice of Asterisk® and FreePBX® versions has certainly brought its share of challenges. But, with the new year, we're finally comfortable recommending everyone make the switch. Almost everything is faster, more stable, and smoother with CentOS 6.2. Yes, the pain is worth the gain. But this new platform also meant significant rewrites of some of our VoIP workhorses, and today everything is finally ready for prime time.

News Flash: Incredible PBX 4.0 is now available with FreePBX 2.10 support!

Coming January 19: Incredible PBX 11 & Incredible Fax for Asterisk 11 and FreePBX 2.11

Incredible PBX 3.0™ brings literally dozens of turnkey Asterisk applications to your PIAF2 server, and the installation process is so simple a monkey could do it. And Incredible Fax 2.0™ delivers free faxing with HylaFax™ and AvantFax® in a setup process that's as simple as pressing the Enter key. When you're finished, you'll have one of the open source wonders of the world with free phone calls and faxing throughout the U.S. and Canada together with almost every Asterisk application ever developed. There's more good news. You don't have to be smarter than a fifth grader to get any of it installed and working reliably with Asterisk. In fact, all of the new installers now are rolled into the base PBX in a Flash 2.0™ installation. Just run two simple scripts, and presto. You're done!

The Incredible PBX 3 Inventory. For those that have never heard of The Incredible PBX, here's the current 3.0 feature set in addition to the base install of PBX in a Flash with the CentOS 6.2, Asterisk 1.8 or 10, FreePBX 2.9, and Apache, SendMail, MySQL, PHP, phpMyAdmin, IPtables Linux firewall, Fail2Ban, and WebMin. Cepstral TTS, Incredible Fax, Hamachi VPN, and Mondo Backups are still just one command away and may be installed using the scripts included with Incredible PBX 3.

What began as a kludgey, dual-call, dual-provider Google Voice implementation to take advantage of Google's free PSTN calling in the U.S. and Canada with Asterisk 1.4 and 1.6 is now a zippy-quick, Gtalk-based calling platform that rivals the best SIP-to-SIP calls on the planet and provides virtually instantaneous PSTN connections to almost anybody, anywhere. Trust us! Except for the price which is still free, you'll never know you weren't connected via Ma Bell's overpriced long-distance lines and neither will the Little Mrs. And, yes, our recommended $50 Nortel SIP videophone is plug-and-play.

Just download the latest 32-bit or 64-bit PBX in a Flash 2.0.6.2 ISO from SourceForge, burn to then boot from the PIAF2 CD, choose the PIAF-Purple option to load Asterisk 1.8 or PIAF-Red to load Asterisk 10, and pick FreePBX 2.9 when prompted. Once the PIAF2 install is completed, just run the new Incredible PBX 3.0 installer: install-incredpbx3. In less than an hour, you'll have a turnkey PBX with a local phone number and free calling in the U.S. and Canada via your own Google Voice account plus dozens and dozens of terrific Asterisk applications to keep you busy exploring for months.

Thanks to its Zero Internet Footprint™ design, Incredible PBX 3 remains the most secure Asterisk-based PBX around. What this means is The Incredible PBX™ has been engineered to sit safely behind a NAT-based, hardware firewall with no port exposure to your actual server. And you won't find a more full-featured Personal Branch Exchange™ at any price.

Did we mention that all of this telephone goodness is still absolutely FREE!

Prerequisites. Here's what we recommend to get started properly:

Installing Incredible PBX 3.0. The installation process is simple and straight-forward. We're down to 3 Easy Steps to Free Calling, and The Incredible PBX will be ready to receive and make free U.S./Canada calls immediately:

1. Install PIAF-Purple & FreePBX 2.9 using the PIAF2 ISO
2. Run Incredible PBX 3 installer
3. Configure Google Voice and a softphone or SIP phone

Installing PBX in a Flash. Here's a quick tutorial to get PBX in a Flash 2 installed. To use Incredible PBX 3, just install the latest 32-bit or 64-bit version of PBX in a Flash 2. Unlike other Asterisk aggregations, PBX in a Flash utilizes a two-step install process. The ISO only installs the CentOS 6.2 operating system. Once CentOS is installed, the server reboots and downloads a payload file that includes Asterisk, FreePBX, and many other VoIP and Linux utilities including all of the new Google Voice components. Just choose the PIAF-Purple or PIAF-Red payload. You'll then be prompted to choose your flavor of FreePBX. Choose FreePBX 2.9. Then set your time zone and set up a password for FreePBX access, and you're all set. As part of the install, yum now will automatically update your operating system with the latest updates for CentOS 6.2.

You can download the 32-bit PIAF2 from SourceForge. Burn the ISO to a CD. Then boot from the installation CD and press the Enter key to begin.

WARNING: This install will completely erase, repartition, and reformat EVERY DISK (including USB flash drives) connected to your system so disable any disk you wish to preserve AND remove any USB flash drives! Press Ctrl-C to cancel.

At the keyboard prompt, tab to OK and press Enter. At the time zone prompt, tab once, highlight your time zone, tab to OK and press Enter. At the password prompt, make up a VERY secure root password. Type it twice. Tab to OK, press Enter. Get a cup of coffee. Come back in about 5 minutes. When the system has installed CentOS 6.2, it will reboot. Remove the CD promptly. After the reboot, choose PIAF-Purple. In less than a minute, you'll be prompted for the FreePBX version you wish to install. Choose FreePBX 2.9 and fill in your choices for the remaining prompts. Then have a 15-minute cup of coffee. After installation is complete, the machine will reboot a second time. You now have a PBX in a Flash base install. On a stand-alone machine, it takes 30-60 minutes. On a virtual machine, it takes about half that time. Log into your server with your root password and write down the server's IP address. You'll need it to access FreePBX with your browser.

NOTE: For previous users of PBX in a Flash, be aware that this new version automatically runs update-programs, update-fixes, and passwd-master for you. So your system is relatively secure out of the box! See the Proxmox cautionary alert in the footnotes to this article!

Configuring Google Voice. You'll need a dedicated Google Voice account to support Incredible PBX 3. If you plan to use the inbound fax capabilities of Incredible Fax 2, then you'll want an additional Google Voice line that can be routed to the FAX miscellaneous destination using FreePBX. The more obscure the username (with some embedded numbers), the better off you will be. This will keep folks from bombarding you with unsolicited Gtalk chat messages, and who knows what nefarious scheme will be discovered using Google messaging six months from now. So keep this account a secret!

We've tested this extensively using an existing Gmail account, and inbound calling is just not reliable. The reason seems to be that Google always chooses Gmail chat as the inbound call destination if there are multiple registrations from the same IP address. So, be reasonable. Do it our way! Set up a dedicated Gmail and Google Voice account, and use it exclusively with Incredible PBX 3. Google Voice no longer is by invitation only so, if you're in the U.S. or have a friend that is, head over to the Google Voice site and register. If you're living on another continent, see MisterQ's posting for some tips on getting set up.

You must choose a telephone number (aka DID) for your new account, or Google Voice calling will not work... in either direction. Google used to permit outbound Gtalk calls using a fake CallerID, but that obviously led to abuse so it's over! You also have to tie your Google Voice account to at least one working phone number as part of the initial setup process. Your cellphone number will work just fine. Don't skip this step either. Just enter the provided 2-digit confirmation code when you tell Google to place the test call to the phone number you entered. Once the number is registered, you can disable it if you'd like in Settings, Voice Setting, Phones. But...

IMPORTANT: Be sure to enable the Google Chat option as one of your phone destinations in Settings, Voice Setting, Phones. That's the destination we need for The Incredible PBX to work its magic! Otherwise, all inbound and outbound calls will fail. If you don't see this option, you may need to call up Gmail and enable Google Chat there first. Then go back to the Google Voice Settings.

While you're still in Google Voice Settings, click on the Calls tab. Make sure your settings match these:

  • Call Screening - OFF
  • Call Presentation - OFF
  • Caller ID (In) - Display Caller's Number
  • Caller ID (Out) - Don't Change Anything
  • Do Not Disturb - OFF
  • Call Options (Enable Recording) - OFF
  • Global Spam Filtering - ON

Click Save Changes once you adjust your settings. Under the Voicemail tab, plug in your email address so you get notified of new voicemails. Down the road, receipt of a Google Voice voicemail will be a big hint that something has come unglued on your PBX.

Incredible PBX 3.0 Installation. Log into your server as root and issue the following commands to run The Incredible PBX 3 installer:

install-incredpbx3

When The Incredible PBX install begins, you'll be prompted for your FreePBX maint password. This is required to properly configure CallerID Superfecta for you. Your credentials never leave your server!

Now have another 15-minute cup of coffee. While you're waiting just make sure that you've heeded our advice and installed your server behind a hardware-based firewall. No ports need to be opened on your firewall to support Incredible PBX. Leave it that way!

One final word of caution is in order regardless of your choice of providers: Do NOT use special characters in any provider passwords, or nothing will work!

FINAL STEP. Once the Incredible PBX install completes, be sure to download the latest updates and patches for PBX in a Flash and Incredible. Just issue the following commands:

update-programs
update-fixes

Logging in to FreePBX 2.9. Using a web browser, you access the FreePBX GUI by pointing your browser to the IP address of your Incredible PBX. Click on the Users tab. It will change to Admin. Now click the FreePBX button. When prompted for a username, it's maint. When prompted for the password, it's whatever you set up as your maint password when you installed Incredible PBX 3. If you forget it, you can always reset it by logging into your server as root and running passwd-master.

Configuring Google Voice Trunks in FreePBX. All trunk configurations now are managed within FreePBX, including Google Voice. This makes it easy to customize your Incredible PBX to meet your specific needs. If you plan to use Google Voice, here's how to quickly configure one or more Google Voice trunks within FreePBX. After logging into FreePBX with your browser, click the Setup tab and choose Google Voice in the Third Party Addons. To Add a new Google Voice account, just fill out the form:

Phone number is your 10-digit Google Voice number. Username is your Google Voice account name without @gmail.com. NOTE: You must use a Gmail.com address in the current version of this module! Password is your Google Voice password. NOTE: Don't use 2-stage password protection in this Google Voice account! Be sure to check all three boxes: Add trunk, Add routes, and Agree to TOS. Then click Submit Changes and reload FreePBX. You can add additional Google Voice numbers by clicking Add GoogleVoice Account option in the right margin and repeating the drill.

While you're still in FreePBX, choose Setup, Extensions, and click on the 701 extension. Write down your extension password which you'll need to configure a phone in a minute.

IMPORTANT LAST STEP: Google Voice will not work unless you restart Asterisk from the Linux command line at this juncture. Using SSH, log into your server as root and issue the following command: amportal restart.

Incredible Fax 2 Installation. If you want the added convenience of having your Incredible PBX double as a free fax machine, run install-incredfax2 after the Incredible PBX 3 install completes. Plug in your email address for delivery of incoming faxes and enter your home area code when prompted. For every other prompt, just press the Enter key. If you'd like to also add the optional OCR utility, just choose it when prompted. For complete documentation, see this Nerd Vittles article. Don't forget that a REBOOT OF YOUR SERVER is requiredwhen the install is finished, or faxing won't work! Then log in through the PIAF GUI using maint:password. Be sure to change your password!

Also be sure to set up a second, dedicated Google Voice number if you want support for inbound faxing. Once the Google Voice credentials are configured in FreePBX for the additional Google Voice line, simply add an Inbound Route for this DID to point to the FAX Misc. Destination that comes preconfigured with Incredible PBX 3. Substitute your 10-digit Google Voice number for the DID number shown below. Save your entries and reload FreePBX.

Extension Password Discovery. If you're too lazy to look up your extension 701 password using the FreePBX GUI, you can log into your server as root and issue the following command to obtain the password for extension 701 which we'll need to configure your softphone or color videophone in the next step:

mysql -uroot -ppassw0rd -e"select id,data from asterisk.sip where id='701' and keyword='secret'"

The result will look something like the following where 701 is the extension and 18016 is the randomly-generated extension password exclusively for your Incredible PBX:

+-----+-------+
id         data
+-----+-------+
701      18016
+-----+-------+

Configuring a SIP Phone. There are hundreds of terrific SIP telephones and softphones for Asterisk-based systems. Once you get things humming along, you'll want a real SIP telephone such as the $50 Nortel color videophone we've recommended above. You'll also find lots of additional recommendations on Nerd Vittles and in the PBX in a Flash Forum. If you're like us, we want to make damn sure this stuff works before you shell out any money. So, for today, let's download a terrific (free) softphone to get you started. We recommend X-Lite because there are versions for Windows, Mac, and Linux. So download your favorite from this link. Install and run X-Lite on your Desktop. At the top of the phone, click on the Down Arrow and choose SIP Account Settings, Add. Enter the following information using your actual password for extension 701 and the actual IP address of your Incredible PBX server instead of 192.168.0.251. Click OK when finished. Your softphone should now show: Available.

Incredible PBX Test Flight. The proof is in the pudding as they say. So let's try two simple tests. First, let's place an outbound call. Using the softphone, dial your 10-digit cellphone number. Google Voice should transparently connect you. Answer the call and make sure you can send and receive voice on both phones. Second, from another phone, call the Google Voice number that you've dedicated to The Incredible PBX. Your softphone should begin ringing shortly. Answer the call, press 1 to accept the call, and then make sure you can send and receive voice on both phones. Hang up. If everything is working, congratulations!

Here's a brief video demonstration showing how to set up a softphone to use with your Incredible PBX, and it also walks you through several of the dozens of Asterisk applications included in your system.

Solving One-Way Audio Problems. If you experience one-way audio on some of your phone calls, you may need to adjust the settings in /etc/asterisk/sip_custom.conf. Just uncomment the first two lines by removing the semicolons. Then replace 173.15.238.123 with your public IP address, and replace 192.168.0.0 with the subnet address of your private network. There are similar settings in gtalk.conf that can be activated although we've never had to use them. In fact, we've never had to use any of these settings. After making these changes, save the file(s) and restart Asterisk with the command: amportal restart.

Learn First. Explore Second. Even though the installation process has been completed, we strongly recommend you do some reading before you begin your VoIP adventure. VoIP PBX systems have become a favorite target of the hackers and crackers around the world and, unless you have an unlimited bank account, you need to take some time learning where the minefields are in today's VoIP world. Start by reading our Primer on Asterisk Security. We've secured all of your passwords except your root password and your passwd-master password. We're assuming you've put very secure passwords on those accounts as if your phone bill depended upon it. It does! Also read our PBX in a Flash and VPN in a Flash knols. If you're still not asleep, there's loads of additional documentation on the PBX in a Flash documentation web site.

Choosing a VoIP Provider for Redundancy. Nothing beats free when it comes to long distance calls. But nothing lasts forever. And, in the VoIP World, redundancy is dirt cheap. So we strongly recommend you set up another account with Vitelity using our special link below. This gives your PBX a secondary way to communicate with every telephone in the world, and it also gets you a second real phone number for your new system... so that people can call you. Here's how it works. You pay Vitelity a deposit for phone service. They then will bill you $3.99 a month for your new phone number. This $3.99 also covers the cost of unlimited inbound calls (two at a time) delivered to your PBX for the month. For outbound calls, you pay by the minute and the cost is determined by where you're calling. If you're in the U.S., outbound calls to anywhere in the U.S. are a little over a penny a minute. If you change your mind about Vitelity and want a refund of the balance in your account, all you have to do is ask. The trunks for Vitelity already are preconfigured with The Incredible PBX. Just insert your credentials using FreePBX and uncheck the Disable Trunk checkbox. Then add the Vitelity trunk as the third destination for your default outbound route. That's it. Congratulations! You now have a totally redundant phone system.

We've also included Trunk configurations for a dozen of our favorite hosting providers to get you started. You can sign up for service with any of them, insert your credentials in the existing trunk, uncheck the Disable Trunk checkbox, and then adjust your outbound route and add an inbound route for your new DID (if you get one).

Stealth AutoAttendant. When incoming calls arrive, the caller is greeted with a welcoming message from Allison which says something like "Thanks for calling. Please hold a moment while I locate someone to take your call." To the caller, it's merely a greeting. To those "in the know," it's actually an AutoAttendant (aka IVR system) that gives you the opportunity to press a button during the message to trigger the running of some application on your Incredible PBX. As configured, the only option that works is 0 which fires up the Nerd Vittles Apps IVR. It's quite easy to add additional features such as voicemail retrieval or DISA for outbound calling. Just edit the MainIVR option in FreePBX under Setup, IVR. Keep in mind that anyone (anywhere in the world) can choose these options. So be extremely careful not to expose your system to security vulnerabilities by making certain that any options you add have very secure passwords! It's your phone bill. 😉

Configuring Email. You're going to want to be notified when updates are available for FreePBX, and you may also want notifications when new voicemails arrive. Everything already is set up for you except actually entering your email notification address. Using a web browser, open the FreePBX GUI by pointing your browser to the IP address of your Incredible PBX. Then click Administration and choose FreePBX. To set your email address for FreePBX updates, go to Setup, General Settings and scroll to the bottom of the screen. To configure emails to notify you of incoming voicemails, go to Setup, Extensions, 701 and scroll to the bottom of the screen. Then follow your nose. Be sure to reload FreePBX when prompted after saving your changes.

A Word About Security. Security matters to us, and it should matter to you. Not only is the safety of your system at stake but also your wallet and the safety of other folks' systems. Our only means of contacting you with security updates is through the RSS Feed that we maintain for the PBX in a Flash project. This feed is prominently displayed in the web GUI which you can access with any browser pointed to the IP address of your server. Check It Daily! Or add our RSS Feed to your favorite RSS Reader. We also recommend you follow @NerdUno on Twitter. We'll keep you entertained and provide immediate notification of security problems that we hear about. Be safe!

Enabling Google Voicemail. Some have requested a way to retain Google's voicemail system for unanswered calls in lieu of using Asterisk voicemail. The advantage is that Google offers a free transcription service for voicemail messages. To activate this, you'll need to edit the [googlein] context in extensions_custom.conf in /etc/asterisk. Just modify the last four lines in the context so that they look like this and then restart Asterisk: amportal restart

;exten => s,n(regcall),Answer
;exten => s,n,SendDTMF(1)
exten => s,n(regcall),Set(DIAL_OPTIONS=${DIAL_OPTIONS}aD(:1))
exten => s,n,Goto(from-trunk,gv-incoming,1)

But I Don't Want to Use Google Voice. If you'd prefer not to use Google Voice at all with PBX in a Flash, that's okay, too. Here's how to disable it and avoid the chatter in the Asterisk CLI. Log into your server as root and edit /etc/asterisk/modules.conf. Change the first three lines in the [modules] context so that they look like this. Then restart Asterisk: amportal restart.

autoload=yes
noload => res_jabber.so
noload => chan_gtalk.so

There's now a patch that automatically adjusts Asterisk to accommodate Google Voice whenever you have added Google Voice extensions to your system. To download and install the patch, visit the PIAF Forum.

Kicking the Tires. OK. That's enough tutorial for today. Let's play. Using your new softphone, begin your adventure by dialing these extensions:

  • D-E-M-O - Incredible PBX Demo (running on your PBX)
  • 1234*1061 - Nerd Vittles Demo via ISN FreeNum connection to NV
  • 17476009082*1089 - Nerd Vittles Demo via ISN to Google/Gizmo5
  • Z-I-P - Enter a five digit zip code for any U.S. weather report
  • 6-1-1 - Enter a 3-character airport code for any U.S. weather report
  • 5-1-1 - Get the latest news and sports headlines from Yahoo News
  • T-I-D-E - Get today's tides and lunar schedule for any U.S. port
  • F-A-X - Send a fax to an email address of your choice
  • 4-1-2 - 3-character phonebook lookup/dialer with AsteriDex
  • M-A-I-L - Record a message and deliver it to any email address
  • C-O-N-F - Set up a MeetMe Conference on the fly
  • 1-2-3 - Schedule regular/recurring reminder (PW: 12345678)
  • 2-2-2 - ODBC/Timeclock Lookup Demo (Empl No: 12345)
  • 2-2-3 - ODBC/AsteriDex Lookup Demo (Code: AME)
  • Dial *68 - Schedule a hotel-style wakeup call from any extension
  • 1061*1061 - PIAF Support Conference Bridge (Conf#: 1061)
  • 882*1061 - VoIP Users Conference every Friday at Noon (EST)

PBX in a Flash SQLite Registry. Last, but not least, we want to introduce you to the new PBX in a Flash Registry which uses SQLite, a zero-configuration SQL-compatible database engine. After logging into your server as root, just type show-registry for a listing of all of the applications, versions, and install dates of everything on your new server. Choosing the A option will generate registry.txt in the /root folder while the other options will let you review the applications by category on the screen. For example, the G option displays all of The Incredible PBX add-ons that have been installed. Here's the complete list of options:

  • A - Write the contents of the registry to registry.txt
  • B - PBX in a Flash install details
  • C - Extra programs install details
  • D - Update-fixes status and details
  • E - RPM install details
  • F - FreePBX modules install details
  • G - Incredible PBX install details
  • Q - Quit this program

And here's a sample from an install we recently completed.


Special Thanks. It's hard to know where to start in expressing our gratitude for all of the participants that made today's incredibly simple-to-use product possible. To Philippe Sultan and the rest of the Asterisk development team, thank you for finally making Jabber jabber with Asterisk. To Leif Madsen, our special thanks for your early pioneering work with Gtalk and Jabber which got this ball rolling. To Philippe Lindheimer, Tony Lewis, and the rest of the FreePBX development team, thanks for FreePBX 2.9 which really makes Asterisk shine. To Lefteris Zafiris, thank you for making Flite work with Asterisk 1.8 thereby preserving all of the Nerd Vittles text-to-speech applications. To Darren Sessions, thanks for whipping app_swift into shape and restoring Cepstral and commercial TTS applications to the land of the living with Asterisk 1.8. And to our pal, Tom King, we couldn't have done it without you. You rolled up your sleeves and really made CentOS 6 and Asterisk 1.8 and 10 sit up and bark. No one will quite understand what an endeavor that is until they try it themselves. You won't find another CentOS 6 implementation of Asterisk, and Tom has made it look incredibly easy. It wasn't! And, last but not least, to our dozens of beta testers, THANK YOU! We've implemented almost all of your suggestions.

Additional Goodies. Be sure to log into your server as root and look through all of the free scripts that are included. Just type: help-pbx.

Don't forget to List Yourself in Directory Assistance so everyone can find you by dialing 411. And add your new number to the Do Not Call Registry to block telemarketing calls. Or just call 888-382-1222 from your new number. Enjoy!

Originally published: Monday, January 23, 2012


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! We maintain a thread with Information, Patches and Bug Fixes for Incredible PBX. Please have a look. Unlike some forums, ours is extremely friendly and is supported by literally hundreds of Asterisk gurus and thousands of ordinary 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.
Or Try the New, Free PBX in a Flash Conference Bridge.


 

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.
 


  1. If you use the recommended Acer Aspire Revo, be advised that it does NOT include a CD/DVD drive. You will need an external USB CD/DVD drive to load the software. Some of these work with CentOS, and some don't. Most HP and Sony drives work; however, we strongly recommend you purchase an external DVD drive from a merchant that will accept returns, e.g. Best Buy, WalMart, Office Depot, Office Max, Staples. You also can run Incredible PBX 3 on a virtual machine such as the free Proxmox server. A security vulnerability has been reported in the Proxmox browser so be sure to run your server behind a secure, hardware-based firewall with no port exposure to the actual Proxmox server from the Internet. []

Introducing PIAF2 and Incredible PBX 2.9 with CentOS 6.1


We're pleased to introduce the latest and greatest PBX in a Flash™ 2.0.6.1 featuring CentOS® 6.11 and the brand-new Incredible PBX™ 2.9 with an incomparable VoIP feature set. PIAF2™ provides turnkey installs of Asterisk® 1.8 or 2.0 with your choice of FreePBX® 2.8, 2.9, or 2.10. And, for those choosing to install Incredible PBX 2.9, it's been engineered to work flawlessly with the 32-bit version of PIAF2 using Asterisk 1.8 and FreePBX 2.9. For the ultimate in performance, a 64-bit version of PIAF2 is also available; however, because of its size, a DVD is required to burn the ISO. And, as noted, it is not compatible with Incredible PBX 2.9.

12/17 Update: Shortly after PIAF2 hit the street, Digium released Asterisk 1.8.8.0 and the first non-beta version of Asterisk 10. New 32-bit and 64-bit PIAF 2.0.6.1.2 ISOs will be available on SourceForge today that incorporate these new builds. In addition, a CentOS 6 video quirk has been identified on some Atom hardware. So the new ISOs include an install option to disable the problematic video testing by kicking off the install with one of the following commands instead of merely pressing the Enter key: ks-nomode, ksraid-nomode, or kslvm-nomode. You'll know if you have the problem if your server locks up. 😉 Finally, because there now are multiple stable versions of Asterisk, we have added the option to selectively choose a version of Asterisk to install. Instead of picking PIAF-Purple or PIAF-Red, you can drop down to the Linux command prompt, log in as root, and issue a command using the following syntax: piafdl -p beta_1872_purple.

Photo courtesy of mashable.com

Free Google Voice calling in the U.S. and Canada has been extended for calendar year 2012 and now can be configured using the simple FreePBX 2.9 GUI. And you can use it with or without Incredible PBX. Set up one or many Google Voice connections in less than 10 seconds per line. With Incredible PBX, we've also included Andrew Nagy's terrific EndPoint Manager that lets you configure dozens of SIP phones with the click of a button. You'll also find Kennonsoft's terrific new PBX in a Flash UI with HTML5 and CSS3 support for the latest Firefox, Chrome, and IE browsers. And, of course, you still get almost every Asterisk application on the planet preconfigured and ready to use.

With PIAF2, the installation process has been streamlined considerably. At the outset, you will be prompted for some basic information and a root password. Once the CentOS 6.1 install completes and you remove the CD/DVD during the server reboot, you will be prompted for whether you wish to tailor Asterisk using menuconfig, your time zone, the version of FreePBX you wish to install, and your master password for FreePBX access. Once you've answered these few questions, you can kick off the PIAF2 install and walk away. Depending upon the performance of your server, come back in 15-30 minutes. While it's not the quickest install on the planet, it will always be the most current because PIAF2 always loads the latest patches to CentOS as well as Asterisk and FreePBX. In other words, it's worth the wait to know you're installing a secure and up-to-date system. And, as your high school girlfriend probably taught you, faster is not always better.

The Incredible PBX 2.9 Inventory. For those that have never heard of The Incredible PBX, here's the current 2.9 feature set in addition to the base install of PBX in a Flash with the CentOS 6.1, Asterisk 1.8, FreePBX 2.9, and Apache, SendMail, MySQL, PHP, phpMyAdmin, IPtables Linux firewall, Fail2Ban, and WebMin. Cepstral TTS, Faxing, Hamachi VPN, and Mondo Backups are still just one command away and may be installed using the scripts included with base Incredible PBX 2.9 installation.

Update: Incredible Fax is not yet compatible with PIAF2, but we're working on it.

What began as a kludgey, dual-call, dual-provider Google Voice implementation to take advantage of Google's free PSTN calling in the U.S. and Canada with Asterisk 1.4 and 1.6 is now a zippy-quick, Gtalk-based calling platform that rivals the best SIP-to-SIP calls on the planet and provides virtually instantaneous PSTN connections to almost anybody, anywhere. Trust us! Except for the price which is still free, you'll never know you weren't connected via Ma Bell's overpriced long-distance lines and neither will the Little Mrs. And, yes, our recommended $50 Nortel SIP videophone is plug-and-play.

Just download the latest 32-bit PBX in a Flash 2.0.6.1 ISO from SourceForge, burn to then boot from the PIAF2 CD, choose the PIAF-Purple option to load Asterisk 1.8, and pick FreePBX 2.9 when prompted. Once the PIAF2 install is completed, just run the new Incredible PBX 2.9 installer. In less than an hour, you'll have a turnkey PBX with a local phone number and free calling in the U.S. and Canada via your own Google Voice account plus dozens and dozens of terrific Asterisk applications to keep you busy exploring for months.

Thanks to its Zero Internet Footprint™ design, Incredible PBX 2.9 remains the most secure Asterisk-based PBX around. What this means is The Incredible PBX™ has been engineered to sit safely behind a NAT-based, hardware firewall with no port exposure to your actual server. And you won't find a more full-featured Personal Branch Exchange™ at any price.

Did we mention that all of this telephone goodness is still absolutely FREE!

Prerequisites. Here's what we recommend to get started properly:

Installing Incredible PBX 2.9. The installation process is simple and straight-forward. We're down to 3 Easy Steps to Free Calling, and The Incredible PBX will be ready to receive and make free U.S./Canada calls immediately:

1. Install PIAF-Purple & FreePBX 2.9 using 32-bit PIAF2 ISO
2. Download & run Incredible PBX 2.9 installer
3. Configure Google Voice and a softphone or SIP telephone

Installing PBX in a Flash. Here's a quick tutorial to get PBX in a Flash 2.0 installed. To use Incredible PBX 2.9, just install the latest 32-bit version of PBX in a Flash 2.0. Unlike other Asterisk aggregations, PBX in a Flash utilizes a two-step install process. The ISO only installs the CentOS 6.1 operating system. Once CentOS is installed, the server reboots and downloads a payload file that includes Asterisk, FreePBX, and many other VoIP and Linux utilities including all of the new Google Voice components. Just choose the PIAF-Purple payload to get the latest Asterisk 1.8. You'll then be prompted to choose your flavor of FreePBX. Choose FreePBX 2.9. Then set your time zone and set up a password for FreePBX access, and you're all set. As part of the install, yum now will automatically update your operating system to CentOS 6.2 minus the 6.2 kernel.

You can download the 32-bit PIAF2 from SourceForge. Burn the ISO to a CD. Then boot from the installation CD and press the Enter key to begin.

WARNING: This install will completely erase, repartition, and reformat EVERY DISK (including USB flash drives) connected to your system so disable any disk you wish to preserve AND remove any USB flash drives! Press Ctrl-C to cancel.

At the keyboard prompt, tab to OK and press Enter. At the time zone prompt, tab once, highlight your time zone, tab to OK and press Enter. At the password prompt, make up a VERY secure root password. Type it twice. Tab to OK, press Enter. Get a cup of coffee. Come back in about 5 minutes. When the system has installed CentOS 6.1, it will reboot. Remove the CD promptly. After the reboot, choose PIAF-Purple. In less than a minute, you'll be prompted for the FreePBX version you wish to install. Choose 2.9 and fill in your choices for the remaining prompts. Then have a 15-minute cup of coffee. After installation is complete, the machine will reboot a second time. You now have a PBX in a Flash base install. On a stand-alone machine, it takes 30-60 minutes. On a virtual machine, it takes about half that time. Log into your server with your root password and write down the server's IP address. You'll need it to access FreePBX with your browser.

NOTE: For previous users of PBX in a Flash, be aware that this new version automatically runs update-programs, update-fixes, and passwd-master for you. So your system is relatively secure out of the box! See the Proxmox cautionary alert in the footnotes to this article!

Configuring Google Voice. You'll need a dedicated Google Voice account to support Incredible PBX 2.9. If you plan to use the inbound fax capabilities of Incredible PBX 2.9, then you'll want an additional Google Voice line that can be routed to the FAX miscellaneous destination using FreePBX. The more obscure the username (with some embedded numbers), the better off you will be. This will keep folks from bombarding you with unsolicited Gtalk chat messages, and who knows what nefarious scheme will be discovered using Google messaging six months from now. So keep this account a secret!

We've tested this extensively using an existing Gmail account, and inbound calling is just not reliable. The reason seems to be that Google always chooses Gmail chat as the inbound call destination if there are multiple registrations from the same IP address. So, be reasonable. Do it our way! Set up a dedicated Gmail and Google Voice account, and use it exclusively with The Incredible PBX. Google Voice no longer is by invitation only so, if you're in the U.S. or have a friend that is, head over to the Google Voice site and register. If you're living on another continent, see MisterQ's posting for some tips on getting set up.

You must choose a telephone number (aka DID) for your new account, or Google Voice calling will not work... in either direction. Google used to permit outbound Gtalk calls using a fake CallerID, but that obviously led to abuse so it's over! You also have to tie your Google Voice account to at least one working phone number as part of the initial setup process. Your cellphone number will work just fine. Don't skip this step either. Just enter the provided 2-digit confirmation code when you tell Google to place the test call to the phone number you entered. Once the number is registered, you can disable it if you'd like in Settings, Voice Setting, Phones. But...

IMPORTANT: Be sure to enable the Google Chat option as one of your phone destinations in Settings, Voice Setting, Phones. That's the destination we need for The Incredible PBX to work its magic! Otherwise, all inbound and outbound calls will fail. If you don't see this option, you may need to call up Gmail and enable Google Chat there first. Then go back to the Google Voice Settings.

While you're still in Google Voice Settings, click on the Calls tab. Make sure your settings match these:

  • Call Screening - OFF
  • Call Presentation - OFF
  • Caller ID (In) - Display Caller's Number
  • Caller ID (Out) - Don't Change Anything
  • Do Not Disturb - OFF
  • Call Options (Enable Recording) - OFF
  • Global Spam Filtering - ON

Click Save Changes once you adjust your settings. Under the Voicemail tab, plug in your email address so you get notified of new voicemails. Down the road, receipt of a Google Voice voicemail will be a big hint that something has come unglued on your PBX.

Incredible PBX 2.9 Installation. Log into your server as root and issue the following commands to download and run The Incredible PBX installer:

cd /root
wget http://incrediblepbx.com/incrediblepbx29.x
chmod +x incrediblepbx29.x
./incrediblepbx29.x

When The Incredible PBX install begins, you'll be prompted for your FreePBX maint password. This is required to properly configure CallerID Superfecta for you. Your credentials never leave your server!

Now have another 15-minute cup of coffee, and consider a modest donation to Nerd Vittles... for all of our hard work. 😉 You'll find a link at the top of the page. While you're waiting just make sure that you've heeded our advice and installed your server behind a hardware-based firewall. No ports need to be opened on your firewall to support Incredible PBX. Leave it that way!

One final word of caution is in order regardless of your choice of providers: Do NOT use special characters in any provider passwords, or nothing will work!

Logging in to FreePBX 2.9. Using a web browser, you access the FreePBX GUI by pointing your browser to the IP address of your Incredible PBX. Click on the Users tab. It will change to Admin. Now click the FreePBX button. When prompted for a username, it's maint. When prompted for the password, it's whatever you set up as your maint password when you installed Incredible PBX 2.9. If you forget it, you can always reset it by logging into your server as root and running passwd-master.

Configuring Google Voice Trunks in FreePBX. All trunk configurations now are managed within FreePBX, including Google Voice. This makes it easy to customize your Incredible PBX to meet your specific needs. If you plan to use Google Voice, here's how to quickly configure one or more Google Voice trunks within FreePBX. After logging into FreePBX with your browser, click the Setup tab and choose Google Voice in the Third Party Addons. To Add a new Google Voice account, just fill out the form:

Phone number is your 10-digit Google Voice number. Username is your Google Voice account name without @gmail.com. NOTE: You must use a Gmail.com address in the current version of this module! Password is your Google Voice password. NOTE: Don't use 2-stage password protection in this Google Voice account! Be sure to check all three boxes: Add trunk, Add routes, and Agree to TOS. Then click Submit Changes and reload FreePBX. You can add additional Google Voice numbers by clicking Add GoogleVoice Account option in the right margin and repeating the drill.

While you're still in FreePBX, choose Setup, Extensions, and click on the 701 extension. Write down your extension password which you'll need to configure a phone in a minute.

IMPORTANT LAST STEP: Google Voice will not work unless you restart Asterisk from the Linux command line at this juncture. Using SSH, log into your server as root and issue the following command: amportal restart.

Incredible Fax Installation. If you want the added convenience of having your Incredible PBX double as a free fax machine, run /root/incrediblefax.sh shell script when the Incredible PBX install completes. Plug in your email address for delivery of incoming faxes and enter your home area code when prompted. For every other prompt, just press the Enter key. For complete documentation, see this Nerd Vittles article. Don't forget to REBOOT YOUR SERVER when the install is finished, or faxing won't work!

Also be sure to set up a second, dedicated Google Voice number if you want support for inbound faxing. Once the Google Voice credentials are configured in FreePBX for the additional Google Voice line, simply add an Inbound Route for this DID to point to the FAX misc. destination that comes preconfigured with Incredible PBX 2.9. Just substitute your 10-digit Google Voice number for the DID number shown below. Save your entries and reload FreePBX.

Extension Password Discovery. If you're too lazy to look up your extension 701 password using the FreePBX GUI, you can log into your server as root and issue the following command to obtain the password for extension 701 which we'll need to configure your softphone or color videophone in the next step:

mysql -uroot -ppassw0rd -e"select id,data from asterisk.sip where id='701' and keyword='secret'"

The result will look something like the following where 701 is the extension and 18016 is the randomly-generated extension password exclusively for your Incredible PBX:

+-----+-------+
id         data
+-----+-------+
701      18016
+-----+-------+

Configuring a SIP Phone. There are hundreds of terrific SIP telephones and softphones for Asterisk-based systems. Once you get things humming along, you'll want a real SIP telephone such as the $50 Nortel color videophone we've recommended above. You'll also find lots of additional recommendations on Nerd Vittles and in the PBX in a Flash Forum. If you're like us, we want to make damn sure this stuff works before you shell out any money. So, for today, let's download a terrific (free) softphone to get you started. We recommend X-Lite because there are versions for Windows, Mac, and Linux. So download your favorite from this link. Install and run X-Lite on your Desktop. At the top of the phone, click on the Down Arrow and choose SIP Account Settings, Add. Enter the following information using your actual password for extension 701 and the actual IP address of your Incredible PBX server instead of 192.168.0.251. Click OK when finished. Your softphone should now show: Available.

Incredible PBX Test Flight. The proof is in the pudding as they say. So let's try two simple tests. First, let's place an outbound call. Using the softphone, dial your 10-digit cellphone number. Google Voice should transparently connect you. Answer the call and make sure you can send and receive voice on both phones. Second, from another phone, call the Google Voice number that you've dedicated to The Incredible PBX. Your softphone should begin ringing shortly. Answer the call, press 1 to accept the call, and then make sure you can send and receive voice on both phones. Hang up. If everything is working, congratulations!

Here's a brief video demonstration showing how to set up a softphone to use with your Incredible PBX, and it also walks you through several of the dozens of Asterisk applications included in your system.

Solving One-Way Audio Problems. If you experience one-way audio on some of your phone calls, you may need to adjust the settings in /etc/asterisk/sip_custom.conf. Just uncomment the first two lines by removing the semicolons. Then replace 173.15.238.123 with your public IP address, and replace 192.168.0.0 with the subnet address of your private network. There are similar settings in gtalk.conf that can be activated although we've never had to use them. In fact, we've never had to use any of these settings. After making these changes, save the file(s) and restart Asterisk with the command: amportal restart.

Learn First. Explore Second. Even though the installation process has been completed, we strongly recommend you do some reading before you begin your VoIP adventure. VoIP PBX systems have become a favorite target of the hackers and crackers around the world and, unless you have an unlimited bank account, you need to take some time learning where the minefields are in today's VoIP world. Start by reading our Primer on Asterisk Security. We've secured all of your passwords except your root password and your passwd-master password. We're assuming you've put very secure passwords on those accounts as if your phone bill depended upon it. It does! Also read our PBX in a Flash and VPN in a Flash knols. If you're still not asleep, there's loads of additional documentation on the PBX in a Flash documentation web site.

Choosing a VoIP Provider for Redundancy. Nothing beats free when it comes to long distance calls. But nothing lasts forever. And, in the VoIP World, redundancy is dirt cheap. So we strongly recommend you set up another account with Vitelity using our special link below. This gives your PBX a secondary way to communicate with every telephone in the world, and it also gets you a second real phone number for your new system... so that people can call you. Here's how it works. You pay Vitelity a deposit for phone service. They then will bill you $3.99 a month for your new phone number. This $3.99 also covers the cost of unlimited inbound calls (two at a time) delivered to your PBX for the month. For outbound calls, you pay by the minute and the cost is determined by where you're calling. If you're in the U.S., outbound calls to anywhere in the U.S. are a little over a penny a minute. If you change your mind about Vitelity and want a refund of the balance in your account, all you have to do is ask. The trunks for Vitelity already are preconfigured with The Incredible PBX. Just insert your credentials using FreePBX and uncheck the Disable Trunk checkbox. Then add the Vitelity trunk as the third destination for your default outbound route. That's it. Congratulations! You now have a totally redundant phone system.

We've also included Trunk configurations for a dozen of our favorite hosting providers to get you started. You can sign up for service with any of them, insert your credentials in the existing trunk, uncheck the Disable Trunk checkbox, and then adjust your outbound route and add an inbound route for your new DID (if you get one).

Stealth AutoAttendant. When incoming calls arrive, the caller is greeted with a welcoming message from Allison which says something like "Thanks for calling. Please hold a moment while I locate someone to take your call." To the caller, it's merely a greeting. To those "in the know," it's actually an AutoAttendant (aka IVR system) that gives you the opportunity to press a button during the message to trigger the running of some application on your Incredible PBX. As configured, the only option that works is 0 which fires up the Nerd Vittles Apps IVR. It's quite easy to add additional features such as voicemail retrieval or DISA for outbound calling. Just edit the MainIVR option in FreePBX under Setup, IVR. Keep in mind that anyone (anywhere in the world) can choose these options. So be extremely careful not to expose your system to security vulnerabilities by making certain that any options you add have very secure passwords! It's your phone bill. 😉

Configuring Email. You're going to want to be notified when updates are available for FreePBX, and you may also want notifications when new voicemails arrive. Everything already is set up for you except actually entering your email notification address. Using a web browser, open the FreePBX GUI by pointing your browser to the IP address of your Incredible PBX. Then click Administration and choose FreePBX. To set your email address for FreePBX updates, go to Setup, General Settings and scroll to the bottom of the screen. To configure emails to notify you of incoming voicemails, go to Setup, Extensions, 701 and scroll to the bottom of the screen. Then follow your nose. Be sure to reload FreePBX when prompted after saving your changes.

A Word About Security. Security matters to us, and it should matter to you. Not only is the safety of your system at stake but also your wallet and the safety of other folks' systems. Our only means of contacting you with security updates is through the RSS Feed that we maintain for the PBX in a Flash project. This feed is prominently displayed in the web GUI which you can access with any browser pointed to the IP address of your server. Check It Daily! Or add our RSS Feed to your favorite RSS Reader. We also recommend you follow @NerdUno on Twitter. We'll keep you entertained and provide immediate notification of security problems that we hear about. Be safe!

Enabling Google Voicemail. Some have requested a way to retain Google's voicemail system for unanswered calls in lieu of using Asterisk voicemail. The advantage is that Google offers a free transcription service for voicemail messages. To activate this, you'll need to edit the [googlein] context in extensions_custom.conf in /etc/asterisk. Just modify the last four lines in the context so that they look like this and then restart Asterisk: amportal restart

;exten => s,n(regcall),Answer
;exten => s,n,SendDTMF(1)
exten => s,n(regcall),Set(DIAL_OPTIONS=${DIAL_OPTIONS}aD(:1))
exten => s,n,Goto(from-trunk,gv-incoming,1)

Kicking the Tires. OK. That's enough tutorial for today. Let's play. Using your new softphone, begin your adventure by dialing these extensions:

  • D-E-M-O - Incredible PBX Demo (running on your PBX)
  • 1234*1061 - Nerd Vittles Demo via ISN FreeNum connection to NV
  • 17476009082*1089 - Nerd Vittles Demo via ISN to Google/Gizmo5
  • Z-I-P - Enter a five digit zip code for any U.S. weather report
  • 6-1-1 - Enter a 3-character airport code for any U.S. weather report
  • 5-1-1 - Get the latest news and sports headlines from Yahoo News
  • T-I-D-E - Get today's tides and lunar schedule for any U.S. port
  • F-A-X - Send a fax to an email address of your choice
  • 4-1-2 - 3-character phonebook lookup/dialer with AsteriDex
  • M-A-I-L - Record a message and deliver it to any email address
  • C-O-N-F - Set up a MeetMe Conference on the fly
  • 1-2-3 - Schedule regular/recurring reminder (PW: 12345678)
  • 2-2-2 - ODBC/Timeclock Lookup Demo (Empl No: 12345)
  • 2-2-3 - ODBC/AsteriDex Lookup Demo (Code: AME)
  • Dial *68 - Schedule a hotel-style wakeup call from any extension
  • 1061*1061 - PIAF Support Conference Bridge (Conf#: 1061)
  • 882*1061 - VoIP Users Conference every Friday at Noon (EST)

PBX in a Flash SQLite Registry. Last, but not least, we want to introduce you to the new PBX in a Flash Registry which uses SQLite, a zero-configuration SQL-compatible database engine. After logging into your server as root, just type show-registry for a listing of all of the applications, versions, and install dates of everything on your new server. Choosing the A option will generate registry.txt in the /root folder while the other options will let you review the applications by category on the screen. For example, the G option displays all of The Incredible PBX add-ons that have been installed. Here's the complete list of options:

  • A - Write the contents of the registry to registry.txt
  • B - PBX in a Flash install details
  • C - Extra programs install details
  • D - Update-fixes status and details
  • E - RPM install details
  • F - FreePBX modules install details
  • G - Incredible PBX install details
  • Q - Quit this program

And here's a sample from an install we recently completed.


Special Thanks. It's hard to know where to start in expressing our gratitude for all of the participants that made today's incredibly simple-to-use product possible. To Philippe Sultan and the rest of the Asterisk development team, thank you for finally making Jabber jabber with Asterisk. To Leif Madsen, our special thanks for your early pioneering work with Gtalk and Jabber which got this ball rolling. To Philippe Lindheimer, Tony Lewis, and the rest of the FreePBX development team, thanks for FreePBX 2.9 which really makes Asterisk shine. To Lefteris Zafiris, thank you for making Flite work with Asterisk 1.8 thereby preserving all of the Nerd Vittles text-to-speech applications. To Darren Sessions, thanks for whipping app_swift into shape and restoring Cepstral and commercial TTS applications to the land of the living with Asterisk 1.8. And to our pal, Tom King, we couldn't have done it without you. You rolled up your sleeves and really made CentOS 6 and Asterisk 1.8 and 10 sit up and bark. No one will quite understand what an endeavor that is until they try it themselves. You won't find another CentOS 6 implementation of Asterisk, and Tom has made it look incredibly easy. It wasn't! In fact, when CentOS released 6.1 this week, Tom actually shifted gears (again) and rebuilt PIAF2 (in a couple of days) to take advantage of CentOS 6.1. And, last but not least, to our dozens of beta testers, THANK YOU! We've implemented almost all of your suggestions.

Additional Goodies. Be sure to log into your server as root and look through the scripts added in the /root and /root/nv folders. You'll find all sorts of goodies to keep you busy. There's an all-new incrediblefax.sh script that painlessly installs and configures HylaFax and AvantFax for state-of-the-art faxing. The 32-bit install-cepstral script does just what it says. With Allison's Cepstral voice, you'll have the best TTS implementation for Asterisk available. ipscan is a little shell script that will tell you every working IP device on your LAN. trunks.sh tells you all of the Asterisk trunks configured on your system. purgeCIDcache.sh will clean out the CallerID cache in the Asterisk database. convert2gsm.sh shows you how to convert a .wav file to .gsm. munin.pbx will install Munin on your system while awstats.pbx installs AWstats. s3cmd.faq tells you how to quickly activate the Amazon S3 Cloud Computing service. All the other scripts and apps in /root/nv already have been installed for you so don't install them again.

If you've heeded our advice and purchased a PogoPlug, you can link to your home-grown cloud as well. Just add your credentials to /root/pogo-start.sh. Then run the script to enable the PogoPlug Cloud on your server. All of your cloud resources are instantly accessible in /mnt/pogoplug. It's perfect for off-site backups and is included as one of the backup options in the PBX in a Flash backup utilities.

Don't forget to List Yourself in Directory Assistance so everyone can find you by dialing 411. And add your new number to the Do Not Call Registry to block telemarketing calls. Or just call 888-382-1222 from your new number. Enjoy!

Originally published: Thursday, December 15, 2011


VoIP Virtualization with Incredible PBX: OpenVZ and Cloud Solutions

Safely Interconnecting Asterisk Servers for Free Calling

Adding Skype to The Incredible PBX

Adding Incredible Fax to The Incredible PBX

Adding Incredible Backup... and Restore to The Incredible PBX

Adding Remotes, Preserving Security with The Incredible PBX

Remote Phone Meets Travelin' Man with The Incredible PBX

Continue reading Part II.

Continue reading Part III.

Continue reading Part IV.


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! We maintain a thread with Information, Patches and Bug Fixes for Incredible PBX 2.9. Please have a look. Unlike some forums, ours is extremely friendly and is supported by literally hundreds of Asterisk gurus and thousands of ordinary 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.
Or Try the New, Free PBX in a Flash Conference Bridge.


whos.amung.us If you're wondering what your fellow man is reading on Nerd Vittles these days, wonder no more. Visit our new whos.amung.us statistical web site and check out what's happening. It's a terrific resource both for us and for you.


 

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...

  1. As part of the yum update process, you'll actually end up with CentOS 6.2 minus the 6.2 kernel. []
  2. If you use the recommended Acer Aspire Revo, be advised that it does NOT include a CD/DVD drive. You will need an external USB CD/DVD drive to load the software. Some of these work with CentOS, and some don't. Most HP and Sony drives work; however, we strongly recommend you purchase an external DVD drive from a merchant that will accept returns, e.g. Best Buy, WalMart, Office Depot, Office Max, Staples. You also can run Incredible PBX 2.9 on a virtual machine such as the free Proxmox server. A security vulnerability has been reported in the Proxmox browser so be sure to run your server behind a secure, hardware-based firewall with no port exposure to the actual Proxmox server from the Internet. []