Home » Incredible PBX (Page 31)
Category Archives: Incredible PBX
Chasing Rainbows: The VoIP in the Cloud Trifecta
Week after week, the VoIP landscape for Cloud Computing continues to improve. And today we have more terrific news. Not only is there a new release of Wazo with simplified support for WebRTC and FollowMe roaming, but the Wazo 17.02 release also is now available on the RentPBX platform worldwide. Coupling Wazo and RentPBX with a secondary Cloud platform to achieve total VoIP redundancy is the VoIP in the Cloud Trifecta if ever there were one. RentPBX has been a platinum sponsor of Nerd Vittles for many years and, while they may not be the cheapest Cloud provider, they are certainly the best when it comes to VoIP. The reason is simple. Their cloud platform is only used for VoIP so you’re not competing for server resources with a zillion customers that are compiling millions of lines of code all day long. You also get free support! Their worldwide hosting locations translate into crystal clear VoIP calling without jitter using your favorite VoIP providers. With the Nerd Vittles NoGotchas coupon code, monthly service is just $15. For mission critical VoIP platforms, we recommend you set up Wazo with RentPBX as your primary server and configure a secondary server at OVH or Vultr.com or Digital Ocean for an additional $3.50 to $5 per month. Using Wazo’s native High Availability feature, your business gets a fault-tolerant platform with automatic failover for less than $20 a month.
Installing Incredible PBX for Wazo at RentPBX
We want to quickly walk you through the installation procedure at RentPBX because it’s the easiest cloud platform to get up and running, period. First, sign up for an account at RentPBX and order Incredible PBX for Wazo which you’ll find under the PBX in a Flash section of their site. Next, choose your favorite hosting location. We strongly recommend their Miami site if you’re east of the Rockies. For example, ping times to atlanta.voip.ms are under 14 milliseconds. The LA node works great for those on the Left Coast. Then choose Incredible PBX Wazo (Debian 8 Asterisk 14) for your platform. Enter a hostname for your server (HINT: test.rentpbx.com works fine if you don’t have your own) and click Continue. Enter NoGotchas for your Promo Code. Click Validate Code and then Checkout. Once you receive your credentials, login to your new server as root using SSH or Putty. The RentPBX setup procedure is a two-step install. First, you get Debian up to date. Then you reboot and the main Incredible PBX installer will be run.
Because of some new certificates, you will get an exim prompt during the initial phase of the install. Just type q to proceed. After initial reboot, log back in with your root credentials and complete the prompts to add your Wazo web password, a telephone reminders numeric password, and a PPTP username and password. Review your passwords carefully. Then press ENTER to proceed with the installation of Incredible PBX for Wazo. Set your time zone when prompted. After about 5-10 minutes, you will be prompted to verify that the Wazo base install completed successfully. It’s perfectly normal that some of the Wazo services are disabled at this juncture. If you see “Wazo fully booted” after the listing of services, you’re good to go. Just press ENTER to proceed. The installer then will run the Wazo Wizard. Within a minute or two, you will again be asked to verify that it completed successfully. If you see no error messages, press ENTER and go have a cup of coffee. The rest of the install will proceed without further prompting. In 10-20 minutes, your server will be ready to use.
Setting Up SIP and Google Voice Trunks with Wazo
When the installation is finished, you can make toll-free calls in the U.S. and Canada without doing anything except dialing "1″ and the 10-digit number from any phone connected to your server. For other calls, there are two steps in setting up trunks to use with Incredible PBX. First, you have to sign up with the provider of your choice and obtain trunk credentials. These typically include the FQDN of the provider’s server as well as your username and password to use for access to that server. Second, you have to configure a trunk on the Incredible PBX for Wazo server so that you can make or receive calls outside of your PBX. As with the platform tutorials, we have taken the guesswork out of the trunk setup procedure for roughly a dozen respected providers around the globe. In addition, Wazo Snapshots goes a step further and actually creates the trunks for you, minus your credentials, as part of the initial Incredible PBX install.
For Google Voice trunks, log into your server as root and run ./add-gvtrunk. When prompted, insert your 10-digit Google Voice number, your Google Voice email address and OAuth 2 token. The native Google Voice OAuth tutorial explains how to obtain it.
For the other providers, review the setup procedure below and then edit the preconfigured trunk for that provider by logging into the Wazo web GUI and choosing IPX → Trunk Management → SIP Protocol. Edit the setup for your provider (as shown above) and fill in your credentials and CallerID number in the General tab. Activate the trunk in the Register tab after again filling in your credentials. Save your settings when finished. No additional configuration for these providers is required using the Incredible PBX for Wazo Snapshot.
- Wazo Trunks Tutorial: Installing a Vitelity SIP Trunk
- Wazo Trunks Tutorial: Installing a VoIP.ms SIP Trunk
- Wazo Trunks Tutorial: Installing a RingPlus SIP Trunk
- Wazo Trunks Tutorial: Installing a FreeVoipDeal (Betamax) SIP Trunk
- Wazo Trunks Tutorial: Installing a Google Voice-Simonics SIP Trunk
- Wazo Trunks Tutorial: Deploying Native Google Voice with OAuth Trunks
- Wazo Trunks Tutorial: Installing an Anveo Direct Outbound SIP Trunk
- Wazo Trunks Tutorial: Installing a Skype Connect SIP Trunk
- Wazo Trunks Tutorial: Installing a LocalPhone SIP Trunk
- Wazo Trunks Tutorial: Installing a CallCentric SIP Trunk
- Wazo Trunks Tutorial: Installing a FlowRoute SIP Trunk
Directing Incoming Calls from Wazo Trunks
Registered Wazo trunks typically include a DID number. With the exception of CallCentric, this is the number that callers would dial to reach your PBX. With CallCentric, it’s the 11-digit account number of your account, e.g. 17771234567. In the Wazo web GUI, we use IPX → Call Management → Incoming Calls to create inbound routes for every DID and trunk associated with your PBX. Two sample DIDs have been preconfigured to show you how to route calls to an extension or to an IVR. To use these, simply edit their settings and change the DID to match your trunk. Or you can create new incoming routes to send calls to dozens of other destinations on your PBX.
Routing Outgoing Calls from Wazo to Providers
Outgoing calls from extensions on your Wazo PBX must be routed to a trunk provider to reach call destinations outside your PBX. Outgoing call routing is managed in IPX → Call Management → Outgoing Calls. You tell Wazo which trunk provider to use in the General tab. Then you assign a Calling Digit Sequence to this provider in the Exten tab. For example, if NXXNXXXXXX were assigned to Vitelity, this would tell Wazo to send calls to Vitelity if the caller dialed a 10-digit number. Wazo has the flexibility to add and remove digits from a dialed number as part of the outbound call routing process. For example, you might want callers to dial 48NXXNXXXXXX to send calls to a Google Voice trunk where 48 spells "GV" on the phone keypad. We obviously don’t want to send the entire dial string to Google Voice so we tell Wazo to strip the first 2 digits (48) from the number before routing the call out your Google Voice trunk. We’ve included two examples in the Wazo Snapshot to get you started. Skype Connect (shown below) is an example showing how to strip digits and also add digits before sending a call on its way:
Setting Up a Softphone & WebRTC with Wazo
If you’re a Mac user, you’re lucky (and smart). Download and install Telephone from the Mac App Store. Start up the application and choose Telephone:Preference:Accounts. Click on the + icon to add a new account. To set up your softphone, you need 3 pieces of information: the IP address of your server (Domain), and your Username and Password. In the World of Wazo, you’ll find these under IPBX → Services → Lines. Just click on the Pencil icon beside the extension to which you want to connect. Now copy or cut-and-paste your Username and Password into the Accounts dialog of the Telephone app. Click Done when you’re finished, and your new softphone will come to life and should show Available. Dial the IVR (4871) to try things out. With Telephone, you can use over two dozen soft phones simultaneously on your desktop.
For everyone else, 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 Wazo Line. You’ll need the IP address of your server plus your Line username and password associated with the 701 extension. On the Wazo platform, do NOT use an actual extension number for your username with Wazo. Go to IPBX Settings → Lines to decipher the appropriate username and password for the desired extension. Click OK to save your entries.
WebRTC allows you to use your Chrome or Firefox browser as a softphone. Extension 701 comes preconfigured for WebRTC access with Incredible PBX for Wazo. It shares the same password as the Line associated with extension 701, but the username is 701 rather than the username associated with the Line. You can decipher the password by accessing the Wazo Web GUI and then IPBX → Services → Users → Incredible PBX → XiVO Client Password. Or log into your server as root using SSH or Putty and run: /root/show-701-pw
. Wazo introduces several new features to WebRTC including support for the awesome new Opus codec plus voicemail management and even Gravatar support. It’s all preconfigured!
Special Note: Beginning with this version of Wazo (17.02), WebRTC is fully integrated with NGINX on your server, and a simplified method for configuring WebRTC users has been added. When you create a new User account, simply choose the SIP (WebRTC) Protocol when creating a new user account, and all of the Advanced Line options required to support WebRTC will be preconfigured for you.
To use WebRTC, you first need to accept the different SSL certificates associated with the WebRTC app. From your browser, go to the following site and click on each link to accept the certificates. Once you’ve completed this process, visit the Wazo WebRTC site.
Before logging in, click on the Gear icon in the lower right corner and then click on the Pencil icon to edit your Settings. Fill in the public IP address of your Wazo server and specify 443 for the Port. Leave the Backend field blank and click Save. Now login to your WebRTC account with Username 701. The Password is the one you obtained running show-701-pw. The IP Address (if required) is the address of your Wazo PBX.
Implementing FollowMe Roaming with a CellPhone
In addition to ringing your SIP extension when incoming calls arrive, Wazo 17.02 can also ring your cellphone simultaneously. This obviously requires at least one outbound trunk. If that trunk provider also supports CallerID spoofing, then Wazo will pass the CallerID number of the caller rather than the DID associated with the trunk. Incredible PBX for Wazo comes with cellphone support for extension 702 ready to go. To enable it, access the Wazo Web GUI and go to IPBX → Services → Users → Incredible PBX and insert your Mobile Phone Number using the same dial string format associated with the trunk you wish to use to place the calls to your cellphone. You then can answer the incoming calls on either your cellphone or the registered SIP phone. If you answer on your cellphone, you will be prompted whether you wish to accept the call. If you press 1 after observing the CallerID, the caller will be connected. If you decline, the caller will be routed to the Wazo voicemail account of the extension.
Activating Voice Recognition for Wazo
Google has changed the licensing of their speech recognition engine about as many times as you change diapers on a newborn baby. Today’s rule restricts use to “personal and development use.” Assuming you qualify, the very first order of business is to enable speech recognition for your Wazo PBX. Once enabled, the Incredible PBX feature set grows exponentially. You’ll ultimately have access to the Voice Dialer for AsteriDex, Worldwide Weather Reports where you can say the name of a city and state or province to get a weather forecast for almost anywhere, Wolfram Alpha for a Siri-like encyclopedia for your PBX, and Lefteris Zafiris’ speech recognition software to build additional Asterisk apps limited only by your imagination. And, rumor has it, Google is about to announce new licensing terms, but we’re not there yet. To try out the Voice Dialer in today’s demo IVR, you’ll need to obtain a license key from Google. This Nerd Vittles tutorial will walk you through that process. Add your key to /var/lib/asterisk/agi-bin/speech-recog.agi on line 72.
Adding DISA Support to Your Wazo PBX
If you’re new to PBX lingo, DISA stands for Direct Inward System Access. As the name implies, it lets you make calls from outside your PBX using the call resources inside your PBX. This gives anybody with your DISA credentials the ability to make calls through your PBX on your nickel. It probably ranks up there as the most abused and one of the most loved features of the modern PBX.
There are three ways to implement DISA with Incredible PBX for Wazo. You can continue reading this section for our custom implementation with two-step authentication. There also are two native Wazo methods for implementing DISA using a PIN for security. First, you can dedicate a DID to incoming DISA calls. Or you can add a DISA option to an existing IVR. Both methods are documented in our tutorial on the PIAF Forum.
We prefer two-step authentication with DISA to make it harder for the bad guys. First, the outside phone number has to match the whitelist of numbers authorized to use your DISA service. And, second, you have to supply the DISA password for your server before you get dialtone to place an outbound call. Ultimately, of course, the monkey is on your back to create a very secure DISA password and to change it regularly. If all this sounds too scary, don’t install DISA on your PBX.
1. To get started, edit /root/disa-xivo.txt. When the editor opens the dialplan code, move the cursor down to the following line:
exten => 3472,n,GotoIf($["${CALLERID(number)}"="701"]?disago1) ; Good guy
2. Clone the line by pressing Ctrl-K and then Ctrl-U. Add copies of the line by pressing Ctrl-U again for each phone number you’d like to whitelist so that the caller can access DISA on your server. Now edit each line and replace 701 with the 10-digit number to be whitelisted.
3. Move the cursor down to the following line and replace 12341234 with the 8-digit numeric password that callers will have to enter to access DISA on your server:
exten => 3472,n,GotoIf($["${MYCODE}" = "12341234"]?disago2:bad,1)
4. Save the dialplan changes by pressing Ctrl-X, then Y, then ENTER.
5. Now copy the dialplan code into your Wazo setup, remove any previous copies of the code, and restart Asterisk:
cd /root sed -i '\:// BEGIN DISA:,\:// END DISA:d' /etc/asterisk/extensions_extra.d/xivo-extrafeatures.conf cat disa-xivo.txt >> /etc/asterisk/extensions_extra.d/xivo-extrafeatures.conf /etc/init.d/asterisk reload
6. The traditional way to access DISA is to add it as an undisclosed option in an IVR that is assigned to one of your inbound trunks (DIDs). For the demo IVR that is installed, edit the ivr-1.conf configuration file and change the "option 0″ line so that it looks like this. Then SAVE your changes.
exten => 0,1(ivrsel-0),Dial(Local/3472@default)
7. Adjust the inbound calls route of one of your DIDs to point to the demo IVR by changing the destination to Customized with the following Command:
Goto(ivr-1,s,1)
A sample is included in the Wazo Snapshot. Here’s how ours looks for the Demo IVR:
8. Now you should be able to call your DID and choose option 0 to access DISA assuming you have whitelisted the number from which you are calling. When prompted, enter the DISA password you assigned and press #. You then should be able to dial a 10-digit number to make an outside call from within your PBX.
SECURITY HINT: Whenever you implement a new IVR on your PBX, it’s always a good idea to call in from an outside number 13 TIMES and try every key from your phone to make sure there is no unanticipated hole in your setup. Be sure to also let the IVR timeout to see what result you get.
Implementing HA Redundancy with Wazo
With a business phone system, nothing is more important than never missing a call. Wazo’s High Availability (HA) option makes this a no-brainer, and it’s free! Just set up a second server either in the cloud or in your office and walk through our HA tutorial to set up the second server and activate HA. Even though located just across the border in Canada, OVH is hard to beat at $3.49 a month with 2 gigs of RAM and 10 gigs of storage. Vultr.com and Digital Ocean are also good candidates for a slave server, and the cost is still just $5 a month. Their 512MB platforms work fine with a drive cache, especially for a backup server. To get started, create a new Wazo platform using one of the highlighted links above. Be sure to use the same version of Wazo. Once the server is up and running, go to our Wazo HA tutorial and we’ll walk you through installing the NeoRouter Server and completing the Wazo setup. Be sure to configure Google Voice on the backup server before activating HA!
Test Drive Incredible PBX for Wazo
To give you a good idea of what to expect with Incredible PBX for Wazo, just pick up a phone and dial any toll-free number in the U.S. and Canada using a 1 prefix. We’ve also set up a sample IVR using voice prompts from Allison. Try it out from any phone on your PBX by dialing 4871 (IVR1):
Nerd Vittles Demo IVR Options
1 – Call by Name (say "Delta Airlines" or "American Airlines" to try it out)
2 – MeetMe Conference
3 – Wolfram Alpha (Coming Soon!)
4 – Lenny (The Telemarketer’s Worst Nightmare)
5 – Today’s News Headlines
6 – Weather Forecast (enter a 5-digit ZIP code)
7 – Today in History (Coming Soon!)
8 – Speak to a Real Person (or maybe just Lenny if we’re out)
What To Do and Where to Go Next?
Here are a boatload of projects to get you started exploring Wazo on your own. Just plug the keywords into the search bar at the top of Nerd Vittles to find numerous tutorials covering the topics or simply follow our links. Unless there is an asterisk (*) the components already are in place so do NOT reinstall them. Just read the previous tutorials to learn how to configure each component. Be sure to also join the PIAF Forum to keep track of the latest tips and tricks with Wazo. There’s a treasure trove of information that awaits.
- Activate SMS Messaging
- Configure CallerID Superfecta
- Explore Munin Graphics in Wazo
- Integrate Google Calendar Alerts
- Configure NeoRouter and PPTP VPN
- Set Up EndPoint Management in Wazo
- Customize and Create New Wazo IVRs
- Try Out SQLite3 Call Detail Reports
- Learn About Wazo Backups and Upgrades
- Deploy SIP URIs for Free Worldwide Calling
- Develop a PortKnocker Emergency Access Plan
- * Install FCC RoboCall BlackList with WhiteList
- * Install Siri-Like Wolfram Alpha Module
- * Install Lenny, The Robocallers’ Worst Nightmare
Wazo and Incredible PBX Dial Code Cheat Sheets
Complete Wazo documentation is available here. But here are two cheat sheets in PDF format for Wazo Star Codes and Incredible PBX Dial Codes.
Published: Monday, January 30, 2017
Look Before Your Leap: Don’t Jump From the Kettle into the Fire #asterisk https://t.co/OhXlHzEnvV #Home2RealOpenSource #IncrediblePBX #Wazo pic.twitter.com/cRD2my8JE5
— Ward Mundy (@NerdUno) December 16, 2016
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…
Deploying WebRTC with Incredible PBX for Wazo
We continue our open source adventure with Wazo today by introducing Sylvain Boily’s latest masterpiece, WebRTC for Wazo. What started as a simple experiment has now become a full-featured WebRTC implementation that rivals any of the commercial alternatives. Did we mention it’s FREE! Better still, when you install the latest release of Incredible PBX for Wazo with all of its modules, the key components to support WebRTC are already in place thanks to Wazo Snapshots. If you have an earlier version of Incredible PBX for XiVO, we’ve already put together a tutorial on the PIAF Forum to walk you through installing WebRTC.
If you’re new to WebRTC, this slide from AT&T covers it all:
Why WebRTC? Some of you may be asking, “What’s the big deal? Why would I want to deploy WebRTC?” The short answer is it eliminates the need to install and configure a proprietary softphone on every users’ desktop computer before they can communicate. Instead, all the user needs is a web browser that supports Real-Time Communications. By pointing their browser to https://phone.wazo.community/?serverIP=Wazo-ip-address, the user instantly gains a communications platform that’s as feature-rich as the most sophisticated softphone. Not only is it comparable to the dedicated clients of old, but there’s no associated cost nor the hassle of marrying a softphone to every user’s particular desktop operating system! And your web page could easily provide a directory of supported contact names and numbers as part of the user interface. In the case of the Wazo implementation, it does. To make a connection, all an end user needs is the latest Firefox or Chrome browser.
WebRTC Admin Setup with Incredible PBX for Wazo
We’re getting ahead of ourselves. Let’s get WebRTC set up with Incredible PBX for Wazo so your users have something to play with. If you haven’t already installed the latest Incredible PBX for Wazo, start there. This puts all the pieces in place to support WebRTC. Write down the IP address of Incredible PBX for Wazo once you complete the install. You’ll need to provide this IP address to WebRTC users.
The other piece a WebRTC user will need is the random password assigned to their WebRTC extension. Incredible PBX comes with extension 701 preconfigured. You can create additional extensions as needed. Running the /root/show-701-pw script will display the password for the default 701 extension. If you’re missing that script, running the command below from the Linux CLI will display it. Or you can log into the Wazo CLI with your browser and go to IPBX → IPBX Settings → Users. Then edit the Incredible PBX 701 user account by clicking on the Pencil icon and write down the Password assigned to the 701 Wazo Client. By the way, this will be the same password assigned to the Default SIP/m1hqy5f3 Line for the Incredible PBX user.
export PGPASSWORD='proformatique'; psql -P pager=off -U asterisk -d asterisk \\ -c "SELECT secret FROM usersip WHERE id=1"
WebRTC User Setup with Incredible PBX for Wazo
The end user needs 3 pieces of information to get WebRTC running: the IP address of the Incredible PBX for Wazo PBX as well as the end user’s username and password for an extension to be used for WebRTC communications. With those 3 pieces in hand, the actual WebRTC setup is easy.
Here are the steps for the end-user to perform:
(1) Use the extension 701 user credentials as explained above or create a new user account and password choosing SIP (WebRTC) Protocol for the account type.
(2) Using Firefox or Chrome, go to the following link: https://phone.wazo.community/
(3) Before logging in, click on the Gear icon in the lower right corner and click the Pencil icon to edit your Settings. Fill in the public IP address of your Wazo server and specify 443 for the Port. Leave the Backend field blank and click Save.
(4) Login to your WebRTC account with Username 701. The Password is the one you obtained running /root/show-701-pw.
(5) When prompted, authorize WebRTC to use the camera and microphone on the user’s desktop computer.
Once you’re logged in, at Enter number prompt, type in a phone number and click the Phone icon to dial.
There are loads of additional features in the Wazo WebRTC UI. Just follow your nose. Enjoy!
Published: Wednesday, October 26, 2016 Updated: Monday, May 29, 2017
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 Loneliest Number: One Remaining Open Source Distro for Asterisk 14
With Asterisk® World just around the corner, this may come as a surprise to some of you. The Asterisk community that has championed open source software development for the past decade now has only one open source distro still standing. All the rest have morphed into closed source or commercial products. Can you guess which one is still carrying the Asterisk 14 open source banner? AsteriskNOW®? Nope. The FreePBX Distro®? Nope. Ombutel™? Nope. PBX in a Flash™? Nope. Elastix™? Nope. The answer is Wazo 17.01, and the latest Incredible PBX installer makes it a turnkey install in less than 15 minutes. If continuing the FOSS tradition is important to you, you really should take Wazo for a spin.
Funny: Sangoma Reinforces Commitment to Open Source by Offering Migration Tool to its Closed Source Distro https://t.co/8QK22cWyi9 #asterisk
— Ward Mundy (@NerdUno) December 29, 2016
What Went Wrong? The answer is probably nothing. Reality simply set in. We all have to eat. As someone who has been involved in both the shareware and open source revolutions for more than 30 years, I can tell you that earning a living with open source software development is mostly a pipe dream. You can love open source software development and starve. Will some folks donate to the cause? Absolutely. Can you pay your mortgage from the proceeds? Not a chance. So you either find a "real job" that will pay the bills, or you change your business model and develop some sort of recurring revenue stream either through maintenance and support contracts, consulting, or hardware sales. Or you can write a technology blog and hope to find enough advertisers to keep the lights on. 🙂
We don’t mean to suggest that there’s anything wrong with commercial products per se. When it comes to VoIP telephony, commercial solutions make perfect sense. Businesses want their phones to ring when customers call. And the best way to achieve that is with commercially proven software and a support network that stands behind their products 24×7. So then it becomes a matter of comparison shopping for the best price and feature set. With this week’s release of the 3CX commercial product at zero cost to all PIAF users that participate in the PIAF Forum, that really should be a no-brainer. With a network of thousands of 3CX dealers worldwide for support, what have you got to lose? Zero.
#FreePBX Dare to Compare: All PIAF3 users on PIAF Forum get free #3CX Commercial License next wk https://t.co/EkpvG1Mr3G #Not2Late #asterisk pic.twitter.com/uzE2zgs137
— Ward Mundy (@NerdUno) January 12, 2017
Our New Year’s Resolution goes like this. For Nerd Vittles readers and for members of the PIAF community, we want you to have the best of both worlds. So we’ll be pushing our commercial provider to further enhance 3CX with features such as voice recognition and text-to-speech plus a robust API and programming language that makes expandability both simple and participatory. On the open source front, we will continue to work with the Wazo developers to make their platform even more flexible and feature rich than any FOSS product on the market. Please join us on both platforms as we continue our VoIP adventure.
In the meantime, come explore Wazo…
Published: Tuesday, January 17, 2017
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…
VoIPtopia 2017: Choosing the Best, Free VoIP Platform
[iframe-popup id="6″]
Once a year we like to step back and survey the latest and greatest VoIP developments for the coming year. And 2016 was certainly filled with surprises including the release of free versions of 3CX sporting the PIAF5 and Elastix 5.0 monikers. That, in turn, produced a wave of FUD from our friends at Sangoma® urging users to return to their open source roots. But guess what? Sangoma was pitching their FreePBX Distro®, another closed source product just like 3CX. Sure, the Sangoma distro has open source components… just like 3CX and your car for that matter. But it’s disingenuous to diss other products because they’re closed source platforms when yours is too. So today we want to cut through the sales pitches and compare apples to apples while offering our Elastix friends this New Year’s Day Resolution:
Ignore the Hype! Look Before You Leap and Avoid Jumping from the Kettle into the Fire.
Funny: Sangoma Reinforces Commitment to Open Source by Offering Migration Tool to its Closed Source Distro https://t.co/8QK22cWyi9 #asterisk
— Ward Mundy (@NerdUno) December 29, 2016
NEWS FLASH: For PIAF3 and Incredible PBX users who have registered on the PIAF Forum, you’ll be getting an invitation to upgrade to the 8-simultaneous-call 3CX commercial platform at no cost. In addition to unlimited extensions, this one-year license adds unlimited SIP trunks and gateways, 10-participant conferencing, G.729 support, custom FQDNs, BLF support, Call Parking, Call Queueing, Call Pickup, Call Recordings and Management, Call Reporting, Intercom/Paging, remote 3CX bridging support, as well as an integrated fax server and Office 365 and Microsoft Outlook integration. If you haven’t already joined the PIAF Forum, there’s still time. But you’d better hurry.
Choosing a VoIP platform is partially a subjective decision, but there also are some glaring red flags to consider. We suggest you begin by deciding whether your preferences include any must-have’s. Do your requirements mandate an open source solution? Do you need text-to-speech and voice recognition? Does the platform have to include Asterisk®, or are you open to alternatives? Does the operating system have to be Linux-based and, if so, must it be CentOS, Debian, or Ubuntu? If you’ll be using SIP phones, must the platform include phone provisioning software for your phones, or is the ability to purchase it as an add-on sufficient? Is paid support important in making your platform decision and how much are you prepared to pay? Are automatic or pain-free software updates critical in making your selection? Is migration from an existing platform a factor? Does a preconfigured, secure firewall matter, or are you prepared to do it yourself or take your chances? Before choosing to ignore security, read last month’s RIPS analysis of FreePBX®. Here’s a snippet from the article. Read it carefully. It’s your phone bill.
Since FreePBX is written completely in PHP, we decided to throw it into our code analysis tool RIPS. The results were more than surprising…
The total amount of detected vulnerabilities is very high. Luckily, the majority of the detected vulnerabilities are inside the administration control panel, such that attackers either need to steal a valid account or they have to trick an administrator into visiting a malicious website that triggers one of the critical vulnerabilities. For example, a remote command execution vulnerability could be triggered by a less critical cross-site scripting vulnerability. By chaining both vulnerabilities, the severity is increased drastically and can lead to full server compromise.
In choosing which platforms to include today, we eliminated platforms which we considered too complicated for the average new user to configure. We also eliminated any platform that did not offer at least a free tier of service with a reasonably complete feature set as part of their offering. If we’ve inadvertently missed one of your favorites, please feel free to leave a comment, and we will consider including it as well. Happy Hunting!
VoIP Platform Feature Summary
Aggregation: FreePBX Distro a.k.a. AsteriskNOW
License: Closed Source
VoIP Platform: Asterisk 13/14
GUI: FreePBX GPL and Commercial modules
O/S: CentOS-clone
Phone Provisioning: Open Source (minimal) or Commercial
Text-to-Speech/Voice Recognition: Optional/No
Software Updates: Manual
Migration Tools: Yes
Security: Fail2Ban + User-Configured Firewall
Security Rating (as delivered): see above
Comments: Extensive commercial NagWare preinstalled
Aggregation: Incredible PBX for Wazo
License: GPL3 Open Source
VoIP Platform: Asterisk 14 RealTime
GUI: Wazo GPL3 modules
O/S: Debian 8
Phone Provisioning: Extensive Open Source
Text-to-Speech/Voice Recognition: Yes/Yes
Software Updates: Automatic or 2-minute Manual
Migration Tools: No
Security: Fail2Ban + Preconfigured Firewall
Security Rating (as delivered): Secure WhiteList
Comments: High Availability & Call Center GPL3 Modules
Aggregation: Ombutel
License: Closed Source
VoIP Platform: Asterisk 13
GUI: Ombutel with external module support
O/S: Debian 8
Phone Provisioning: Closed Source
Text-to-Speech/Voice Recognition: No/No
Software Updates: Manual
Migration Tools: No
Security: FaiL2Ban + Do-It-Yourself Firewall
Security Rating (as delivered): Insecure
Aggregation: PIAF5 powered by 3CX
License: Closed Source
VoIP Platform: 3CX
GUI: 3CX
O/S: Debian 8
Phone Provisioning: Extensive Closed Source
Text-to-Speech/Voice Recognition: No/No
Software Updates: Semi-Automatic
Migration Tools: Yes
Security: Fail2Ban + Preconfigured Firewall
Security Rating (as delivered): Secure
Comments: Free upgrade provides unlimited SIP trunks with 8 simultaneous calls
Aggregation: Elastix 5.0 powered by 3CX
License: Closed Source
VoIP Platform: 3CX
GUI: 3CX
O/S: Debian 8
Phone Provisioning: Extensive Closed Source
Software Updates: Semi-Automatic
Migration Tools: Yes
Security: Fail2Ban + Preconfigured Firewall
Security Rating (as delivered): Secure
Comments: Free version limited to one SIP trunk & 8 simultaneous calls
Aggregation: Incredible PBX 3
License: GPL2 Open Source
VoIP Platform: Asterisk 13
GUI: FreePBX GPL modules only
O/S: CentOS 6/7, Ubuntu 14, or Raspbian 8
Phone Provisioning: Open Source (minimal)
Text-to-Speech/Voice Recognition: Yes/Yes
Software Updates: Automatic
Migration Tools: Yes
Security: Fail2Ban + Preconfigured Firewall
Security Rating (as delivered): Secure WhiteList
Comments: FreePBX GPL modules only; module signature verification disabled1
Aggregation: Elastix 4.0
License: Open Source GPL
Platform: Asterisk 13
O/S: CentOS 7
Phone Provisioning: Open Source
Text-to-Speech/Voice Recognition: No/No
Software Updates: Semi-Automatic
Migration Tools: No
Security: Fail2Ban + Unconfigured Firewall
Security Rating (as delivered): Insecure
Comments: Currently unavailable but fork announced
Aggregation: PIAF3
License: Open Source GPL with Closed Source Installer
Platform: Asterisk 11/13
O/S: CentOS 6
Phone Provisioning: Open Source (minimal)
Text-to-Speech/Voice Recognition: No/No
Software Updates: Manual
Migration Tools: No
Security: Fail2Ban + Unconfigured Firewall
Security Rating (as delivered): Insecure
Comments: No longer maintained
Published: Sunday, January 1, 2017
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…
- See RIPStech article explaining why FreePBX module signature verification is a very dangerous methodology. [↩]
If It Walks Like a Duck and Quacks Like a Duck, Guess What?
WOW! When we started our 2016, The Year of (real) VoIP Choice series, little did we know everything that was about to unfold. It’s been an interesting last few months in the VoIP community with the introduction of PIAF5 and Elastix 5.0 and Ombutel and ThirdLane and this week’s XiVO fork to Wazo. But, stay calm. There is a bright light at the end of this tunnel. You now have MORE FREE VoIP PBX CHOICES than ever before. And every one of them is a rock-solid performer. If the word "commercial" sends shivers through your spine, then Ombutel and this week’s new Incredible PBX for Wazo introduction will make this a very bright holiday season for you. If commercial backing with 24/7 support is your cup of tea, ThirdLane’s free offering includes 10 extensions with full product functionality while PIAF5’s free edition includes unlimited extensions with 8 simultaneous calls, a 5-user conferencing module, a SIP trunk of your choice… and No NagWare! 3CX1 also has made a generous offer for those of you that want to start your own business. You can sign up as a reseller, obtain a full NFR product license, and get free training! And, reportedly, a new Asterisk® VoIP Gateway to 3CX is in the works that will let you tie your existing Asterisk-based PBX directly to 3CX giving you the best of both worlds.2 What’s not to like?
We often wonder why more Fortune 500 companies haven’t adopted open source VoIP solutions when their organizations have computer rooms full of Linux servers. If this election season taught us anything, it’s this. You can learn an awful lot about people in just 140 characters. Here’s a snippet of our exchange last week with the Digium® Chief Technology Officer and Sangoma® Vice President which speaks volumes:
This screenshot brought to you from the AsteriskNOW ISO. If it looks proprietary and smells proprietary, guess what? #asterisk pic.twitter.com/YHtaygnvPb
— Ward Mundy (@NerdUno) December 8, 2016
amazing how clueless crazy guy is
— Tony Lewis (@tonyclewis) December 8, 2016
What’s really crazy is these same individuals have no qualms pitching THEIR proprietary software and THEIR proprietary phones while playing dumb. So how do you square the rhetoric with the fact that SwitchVox® AND AsteriskNOW® and the FreePBX Distro® are all closed source ISOs. One has to ask where was the moral outrage when the FreePBX® devs sold out to SchmoozeCom® and then to Sangoma® or when they turned the FreePBX ISO into a closed source product. That, of course, was different because it was money in their pockets, not to mention cushy new full-time jobs singing the praises of "open source." But nobody wants to talk about any of that. In the real estate business, these guys are called NIMBYs, an acronym for "Not In My Back Yard." They’re all for change as long as it doesn’t affect their own neighborhood and pocketbook. To translate it into VoIP-speak, these are the folks that would prefer you stick with THEIR code generator and buy boatloads of THEIR commercial, closed source modules and THEIR proprietary phones. To everyone else, keep off our playground! Make no mistake. It’s all about the money!
Not surprisingly, a virtually identical feature set is provided at no cost on the ThirdLane and 3CX platforms. So be sure to compare apples to apples and ignore the rants. After all, IT’S YOUR CHOICE. Kick the tires of all the products and choose the platform that best meets your needs and those of your organization. I’m reminded of an old legal adage: "When the facts are on your side, pound the facts. When the law is on your side, pound the law. And when neither is on your side, pound the table." Those that want to distract you from considering the merits of other products by launching attacks on their competitors are little more than table pounders. So consider the source especially when some of the loudest and most vocal members of the fan club are on the payroll hiding behind a cloak of anonymity. None are innocent bystanders. It’s all about the money!
So… are there any Asterisk®-based products that really are released under an open source license? Actually, there are several. The Incredible PBX platforms for CentOS, Ubuntu, and Raspbian as well as the Incredible PBX 13 ISO are all open source products that include the latest LTS version of Asterisk. And then there’s Incredible PBX for XiVO and (NOW!) Wazo, two virtually identical GPL3 platforms that feature an Asterisk real time environment with a more sophisticated GUI and full API support. We’ll have more to say about the latest Wazo release featuring Asterisk 14 later this week. Stay tuned!
Why Incredible PBX? Glad you asked. Here’s my short answer from the PIAF Forum:
The inspiration for Incredible PBX was to save people the unbelievably steep learning curve we endured when first starting to use Asterisk over a decade ago. And, frankly, the developers liked it that way because many of them made a living configuring Asterisk for people that didn’t know what they were doing.
What you get with Incredible PBX?
- You get a secure server out of the starting gate unlike any other distro.
- You get all the tools and samples to learn how to do anything with Asterisk.
- You get a working system out of the box that can make and receive FREE calls.
- You get a pure open source GPL platform with No Gotchas and No NagWare.
What you don’t get with Incredible PBX?
A college degree in telecommunications or network administration without actually doing the work. Yes, it’s hard. But, with Incredible PBX, it can also be fun AND safe.
Published: Monday, December 12, 2016
Need help with Asterisk? Visit the PBX in a Flash Forum.
Coming Soon to Nerd Vittles: The Autonomous Car
Longer version of self-driving demo with Paint It Black soundtrack https://t.co/YuUmyEaCgR
— Elon Musk (@elonmusk) November 19, 2016
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…
Siriously: It’s Wolfram Alpha for XiVO and Wazo
Ever wished your Asterisk® server could harness the power of a 10,000 CPU Supercomputer to answer virtually any question you can dream up about the world we live in? Well, so long as it’s for non-commercial use, today’s your lucky day. Apple demonstrated with Siri™ just how amazing this technology could be by coupling Wolfram Alpha® to a speech-to-text engine on the iPhone about 5 years ago. And, thanks to Google’s new speech transcription engine and Wolfram Alpha’s API, you can do much the same thing with any Asterisk server. Today, we’ll walk you through the 5-minute setup with XiVO or Wazo.
Five years ago, we had such a good name for this project, Iris, which is Siri spelled backwards. You know the backwards sister and all of that. At last count, there now are about two dozen Iris apps for Android phones so we give up. Instead we give you 4747. You can figure it out from there.
When people ask what exactly Wolfram Alpha is, our favorite answer was provided by Ed Borasky: "It’s an almanac driven by a supercomputer."
That’s an understatement. It’s a bit like calling Google Search a topic index. Unlike Google which provides links to web sites that can provide answers to queries, Wolfram Alpha provides specific and detailed answers to almost any question. Here are a few examples (with descriptions of the functionality) to help you wrap your head around the breadth of information. For a complete list of what’s available, visit Wolfram Alpha’s Examples by Topic. Type a sample query here or use the examples below with your phone once you complete the install today.
Weather in Charleston South Carolina
Weather forecast for Washington D.C.
Next solar eclipse
Otis Redding
Define politician
Who won the 1969 Superbowl? (Broadway Joe)
What planes are now flying overhead? (flying over your server’s location)
Ham and cheese sandwich (nutritional information)
Holidays 2017 (summary of all holidays for 2012 with dates and DOW)
Medical University of South Carolina (history of MUSC)
Star Trek (show history, air dates, number of episodes, and more)
Apollo 11 (everything you ever wanted to know)
Cheapest Toaster (brand and price)
Battle of Gettysburg (sad day 🙂 )
Daylight Savings Time 2017 (date ranges and how to set your clocks)
Tablets by Motorola (pricing, models, and specs from Best Buy)
Doughnut (you don’t wanna know)
Snickers bar (ditto)
Weather (local weather at your server’s location)
Best Question of the Day Award: "How much wood could a woodchuck chuck if a woodchuck could chuck wood?" And the answer: "A woodchuck would chuck all the wood he could chuck if a woodchuck could chuck wood. According to the tongue twister, although the paper ‘The Ability of Woodchucks to Chuck Cellulose Fibers’ by P.A. Paskevich and T.B. Shea in Annals of Improbable Research vol. 1, no. 4, pp. 4-9, July/August 1995, concluded that a woodchuck can chuck 361.9237001 cubic centimeters of wood per day."
Implementation Overview. Today what we’re going to demonstrate is how to configure your Asterisk® server so that you can pick up any phone on your system, dial 4-7-4-7 and ask a question. Then we’ll send your question to Google to convert the spoken words into text. Next, we’ll pass Google’s text translation along to Wolfram Alpha which will provide a plain text answer to your question. Finally, we’ll take that plain text response and use the Flite TTS engine to deliver the results to you over the phone.
Prerequisites. For openers, you’ll need two things: a speech recognition key from Google and a free Wolfram Alpha account. We’ll be using Incredible PBX™ for XiVO and Wazo to demonstrate the setup because almost all the pieces are in place to make this easy. It’s certainly possible to do what we’re demonstrating on other Asterisk server platforms once you get all of the dependencies resolved. But we’ll leave that for the do-it-yourselvers.
Legal Disclaimer. What we’re demonstrating today is how to use two publicly accessible web resources to harness the power of a supercomputer to respond to your queries using a phone connected to an Asterisk server. We’re assuming that both Google and Wolfram Alpha have their legal bases covered and have a right to provide the public services they are offering. We are not vouching for them or the services they are offering in any way. By using our scripts, YOU AGREE TO ASSUME ALL RISKS, LEGAL AND OTHERWISE, ASSOCIATED WITH USE OF THESE FREELY ACCESSIBLE WEB TOOLS. NO WARRANTY EXPRESS OR IMPLIED IS BEING PROVIDED BY US INCLUDING ANY IMPLIED WARRANTY OF FITNESS FOR USE OR MERCHANTABILITY. You, of course, have an absolute right not to use our code if you have reservations of any kind or are unwilling to assume all risks associated with such use. Sorry for the legalese, but it’s the time in which we live I’m afraid. Plain English: "Don’t Shoot the Messenger!"
Configuring XiVO/Wazo for Voice Recognition. As we noted, all of the pieces already are in place on the Incredible PBX for XiVO/Wazo platform to support voice recognition. All you’ll need to do is obtain a key from Google and plug it into the existing voice recognition script that’s already in place. If you haven’t already done this, start here.
Getting a Wolfram Alpha Account. As you can imagine, there have to be some rules when you’re using someone else’s supercomputer for free. So here’s the deal. It’s free for non-commercial, personal use once you sign up for an account. But you’re limited to 2,000 queries a month which works out to almost 70 queries a day. Every query requires your personal application ID, and that’s how Wolfram Alpha keeps track of your queries. Considering the price, we think you’ll find the query limitation pretty generous compared to other web resources.
Sign up for a free Wolfram Alpha API account here. Just provide your email address and set up a password. It takes less than a minute. Log into your account and click on Get An App ID. Make up a name for your application and write down (and keep secret) your APP-ID code. That’s all there is to getting set up with Wolfram Alpha. If you want to explore costs for commercial use, there are links to let you get more information.
Installing Wolfram Alpha Application. Here are the steps to use the one-click installer. Log into your XiVO or Wazo server as root and issue the following commands. Plug in your Wolfram Alpha APP-ID when prompted.
cd /
wget http://incrediblepbx.com/setup-wolfram-wazo.tar.gz
tar zxvf setup-wolfram-wazo.tar.gz
rm -f setup-wolfram-wazo.tar.gz
cd /root
./setup-wolfram.sh
Taking Wolfram Alpha for a Spin. Some sample commands have been documented above to get you started. Just pick up a phone on your Wazo server and dial 4747. When prompted, say one of the commands and press the pound key. Your command will be sent to Google for translation, and then the text result will be played back using Flite or Cepstral. If it says what you meant to say, press 1 to launch the Wolfram Alpha connection and get the answer to your question. If not, press * and try again.
You also can watch the progress of your calls on the Asterisk CLI. We’ve found the Google speech-to-text transcription to be extremely accurate in quiet rooms. One of the variables returned in the [4747@from-internal:5] entry on the Asterisk CLI includes a transcription accuracy measurement which is shown as a decimal number less than 1. This gives you an idea of how well Google is understanding your accent. If the number consistently falls below .9, you may want to move out of the Deep South and try again after you lose your accent. 😉
Tweaking the Abbreviations List. Translating abbreviations into speech is a tricky business, and Flite does a pretty lousy job on some of them. We’ve started the beginnings of an abbreviation list which you will find in the function section of 4747.php which is stored in /var/lib/asterisk/agi-bin. It’s easy to add additional entries. Just clone one of the entries that’s already there. For example, here’s the line that translates Jr. into Junior. HINT: Be careful to surround most unpunctuated abbreviations with spaces, or you may get unexpected results when a word actually begins or ends with the same letters.
$response = str_replace("Jr.","junior",$response);
Originally published: Tuesday, December 6, 2016
Need help with Asterisk? Visit the PBX in a Flash Forum.
Coming Soon to Nerd Vittles: The Autonomous Car
Longer version of self-driving demo with Paint It Black soundtrack https://t.co/YuUmyEaCgR
— Elon Musk (@elonmusk) November 19, 2016
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…
2016, The Year of VoIP Choice: Meet Wazo and XiVO 16.15
UPDATE: Wazo 17.01 has been officially released. The complete tutorial is available here.
And you thought the excitement was over for 2016. Well, not so fast. The core development team at XiVO has now forked the project so this will be the last XiVO-branded release until Wazo 16.16 hits the street. Nothing has changed except the name and a boatload of new features with more to come including a new GUI interface a little further down the road. And you’ll have a front row seat at Nerd Vittles. But lets save that discussion for coming weeks. For today, we’ll set the stage with the latest development release of XiVO featuring Incredible PBX and Asterisk® 14.1.2. Yes, there is an easy migration path for every existing XiVO server. That’s what the 2-minute xivo-upgrade is all about. In the meantime, anyone with the pioneering spirit can take a glimpse into the future. If you know XiVO, then you know that development releases normally are almost as stable as production releases because of their unique development methodology and enormous test suite which checks every change for naughty or nice. And, yes, the development team eats their own dog food! But please note that this is a Development Version of Wazo which means changes are happening regularly. The official release will be available in early December. For the pioneers installing now, be advised that there may be install hiccups from time to time as the developers migrate older components to Wazo. If an install fails for you, don’t get frustrated. Just wait 12 hours and try again.
Introducing the Opus Codec and Asterisk 14
We think you will enjoy this first release of Incredible PBX 14 featuring XiVO 16.15 and Asterisk 14 with integrated support for the Opus codec. If you haven’t heard of Opus, you’re in for a treat. You get the wideband voice quality of G.711U (ULAW) calls requiring 80-90kbps of bandwidth using only 16kbps. And, because it’s a variable bandwidth codec based upon your available Internet pipe, Opus can support narrowband calls with equivalent call quality to G.729 and Speex. Simply stated, you can squeeze FIVE wideband calls into the same bandwidth that one ULAW call used to consume. And, when you have the Internet capacity to support it, Opus calls can scale up to 128kbps for MP3-quality sound. Details.
There’s more good news with Opus. XiVO’s WebRTC client now is preconfigured with the Opus codec when you deploy Incredible PBX 14. And, as if that weren’t enough, the WebRTC client with XiVO 16.15 now includes integrated voicemail support so you can play and delete voicemails without ever leaving the WebRTC client. See our WebRTC tutorial for more.
Finally: A New CDR Reporting Module for XiVO
Here’s another important development that many have requested. The Incredible PBX 14 platform includes a terrific new CDR Reporting Module from Bart Fisher on the PIAF Forum. In the XiVO GUI, goto IPX → Call Management → Call Logs:
FLITE TTS Implemented with New Voices
We’re pleased to announce that FLITE 1.4 is now included in Incredible PBX 14 builds on or after November 26. For the first time, you now have a choice of four different voices:
kal (American male)
rms (American male)
awb (Scottish male)
slt (American female)
While it’s a matter of personal taste, the RMS and SLT voices are dramatic improvements over the previous FLITE implementation. To change the voice, edit /etc/asterisk/flite.conf and replace voice=slt with your favorite. Then restart Asterisk. This post on the PIAF Forum includes dialplan code and will walk you through installing FLITE on existing servers. There’s more good news. You now can build your own FLITE voice for use with FLITE.
The Future Vision for Wazo
We don’t want to spill the beans on everything that lies ahead, but let’s talk briefly about the API Framework behind what will soon be the Wazo Telephony Business Engine. With Incredible PBX 14, you will note that you now have direct access to all available XiVO APIs with more to come. Using a browser, head over to https://ServerIPaddress/api/. A series of tutorials on how to use these APIs will be forthcoming now that we’ve gotten a few lessons from Sylvain Boily. Suffice it to say, the idea behind these APIs is that any developer will be able to quickly produce a customized web GUI for Wazo using nothing but API calls in conjunction with open source web development tools such as Bootstrap and Smarty. Think of it as OpenStack for the Telephony Cloud. And a new Wazo GUI is in the works as well. Here are a few examples to give you some idea of what’s possible in just a matter of hours:
Rather than having a hard-coded GUI that uses spaghetti code to generate obscure Asterisk commands, you now will have a fully-documented development platform where the sky’s the limit. Think of it. You can actually contribute code back to the project while developing custom solutions for your organization. It’s what open source development is all about!
Update Your Address Book: New Wazo Links
Incredible PBX 14 for XiVO Installation Overview
Before we roll up our sleeves and walk you through the installation process, we wanted to provide a quick summary of the 10 Basic Steps in setting up Incredible PBX 14 for XiVO. By the way, the whole process takes less than an hour, half of that in the Cloud.
- Set Up Desired PBX Platform: Stand-alone PC, Virtual Machine, or Cloud-Based Server
- Run the Incredible PBX for XiVO installer and Activate All Options
- Set Up One or More SIP or Google Voice Trunks for Your PBX
- Tell XiVO Where to Direct Incoming Calls from Each Trunk
- Tell XiVO Which Trunk to Use for Every Outbound Calling Digit Sequence
- Set Up a SoftPhone or WebRTC Phone (or both)
- Decide Whether to Activate Simultaneous Ringing on your Cellphone
- Add Google Speech Recognition Key (if desired)
- Activating DISA with Incredible PBX for XiVO (if desired)
- Test Drive Incredible PBX for XiVO
1. Incredible PBX for XiVO Hardware Platform Setup
The first step is to choose your hardware platform and decide whether you want to babysit a server and network or leave those tasks to others. We’ve taken the guesswork out of the setups documented below. The last four options are cloud providers, each of whom provides a generous discount to let you kick the tires. So click on the links below to review the terms and our walkthrough of the setup process on each platform.
- XiVO Platform Tutorial: Installing XiVO on a Dedicated PC
- XiVO Platform Tutorial: Installing XiVO VM on VirtualBox
- XiVO Platform Tutorial: Installing XiVO VM on VMware ESXi
- XiVO Platform Tutorial: Installing XiVO VM at ImpactVPS
- XiVO Platform Tutorial: Installing XiVO VM at Vultr
- XiVO Platform Tutorial: Installing XiVO VM at OVH.com
- XiVO Platform Tutorial: Installing XiVO VM at Digital Ocean
- XiVO Platform Tutorial: Installing XiVO VM at CloudAtCost
- XiVO Platform Tutorial: Manually Installing XiVO and Debian 8
If your situation falls somewhere in between all of these, here’s a quick summary. For stand-alone systems and virtual machine platforms that you own (such as VirtualBox and VMware ESXi), download and install the 64-bit version of XiVO using the XiVO ISO. For most other virtual machine platforms in the Cloud, you’ll start by creating a 64-bit Debian 8 virtual machine with at least 1GB of RAM and a 20GB drive.
2. Running the Incredible PBX for XiVO Installer
Once you have your hardware platform up and running, the rest of the initial setup process is easy. Simply download and run the Incredible PBX 13 for XiVO installer. On some platforms, it first updates Debian 8 to current specs and reboots. Then log back in and rerun the installer a second time. You will be prompted whether to activate about a dozen applications for Incredible PBX. Choose Y for each option if you want to take advantage of the XiVO Snapshot with all components preconfigured. Otherwise, you’ll need to jump over to the original tutorial and manually configure all of the XiVO components.
cd /root wget http://incrediblepbx.com/IncrediblePBX13-XiVO.sh chmod +x IncrediblePBX13-XiVO.sh ./IncrediblePBX13-XiVO.sh
When you have completed the Incredible PBX 13 install, you then can log into your server as root and upgrade to Incredible PBX 14 with Asterisk 14 and the development version of XiVO/WAZO. Here are the steps:
xivo-dist xivo-dev /etc/init.d/netfilter-persistent stop xivo-upgrade iptables-restart # restore Incredible PBX module and ODBC configuration cp -p /etc/asterisk/modules.conf /etc/asterisk/modules.conf-new cp -p /etc/asterisk/res_odbc.conf /etc/asterisk/res_odbc.conf-new cp -p /etc/asterisk/modules.conf.dpkg-old /etc/asterisk/modules.conf cp -p /etc/asterisk/res_odbc.conf.dpkg-old /etc/asterisk/res_odbc.conf # add Google Voice OAuth support for Asterisk 14 cd /usr/src git clone https://github.com/sboily/asterisk-res-xmpp-oauth.git cd asterisk* make patch make make install xivo-service restart # put the Incredible PBX web add-ons back in place cd / wget http://incrediblepbx.com/incredible-nginx.tar.gz tar zxvf incredible-nginx.tar.gz rm -f incredible-nginx.tar.gz ln -s /etc/nginx/locations/https-available/01_incrediblepbx /etc/nginx/locations/https-enabled/. cd /etc/nginx wget http://incrediblepbx.com/nginx-config.tar.gz tar zxvf nginx-config.tar.gz rm -f /etc/nginx/sites-enabled/default /etc/init.d/nginx restart sed -i 's|13.|14.|' /etc/pbx/.version
While this may sound convoluted, there’s a reason for it. The WAZO Development Version is undergoing some major plumbing changes which affect the PostGreSQL database structure. Because Incredible PBX uses database snapshots to preconfigure a number of components, there would be major breakage if the Dev version database structure was different than the Incredible PBX snapshot. By performing an upgrade, we avoid the problem while preserving all of the Incredible PBX settings.
3. Setting Up SIP and Google Voice Trunks with XiVO
There are two steps in setting up trunks to use with Incredible PBX. First, you have to sign up with the provider of your choice and obtain trunk credentials. These typically include the FQDN of the provider’s server as well as your username and password to use for access to that server. Second, you have to configure a trunk on the Incredible PBX for XiVO server so that you can make or receive calls outside of your PBX. As with the platform tutorials, we have taken the guesswork out of the trunk setup procedure for roughly a dozen respected providers around the globe. In addition, XiVO Snapshots goes a step further and actually creates the trunks for you, minus credentials, as part of the initial Incredible PBX install.
For Google Voice trunks, log into your server as root and run ./add-gvtrunk. When prompted, insert your 10-digit Google Voice number, your Google Voice email address and OAuth 2 token. The native Google Voice OAuth tutorial explains how to obtain it.
For the other providers, review the setup procedure below and then edit the preconfigured trunk for that provider by logging into the XiVO web GUI and choosing IPX → Trunk Management → SIP Protocol. Edit the setup for your provider (as shown above) and fill in your credentials and CallerID number in the General tab. Activate the trunk in the Register tab after again filling in your credentials. Save your settings when finished. No additional configuration for these providers is required when using the XiVO Snapshot.
- XiVO Trunks Tutorial: Installing a Vitelity SIP Trunk
- XiVO Trunks Tutorial: Installing a VoIP.ms SIP Trunk
- XiVO Trunks Tutorial: Installing a RingPlus SIP Trunk
- XiVO Trunks Tutorial: Installing a FreeVoipDeal (Betamax) SIP Trunk
- XiVO Trunks Tutorial: Installing a Google Voice-Simonics SIP Trunk
- XiVO Trunks Tutorial: Deploying Native Google Voice with OAuth Trunks
- XiVO Trunks Tutorial: Installing an Anveo Direct Outbound SIP Trunk
- XiVO Trunks Tutorial: Installing a Skype Connect SIP Trunk
- XiVO Trunks Tutorial: Installing a LocalPhone SIP Trunk
- XiVO Trunks Tutorial: Installing a CallCentric SIP Trunk
- XiVO Trunks Tutorial: Installing a FlowRoute SIP Trunk
4. Directing Incoming Calls from XiVO Trunks
Registered XiVO trunks typically include a DID number. With the exception of CallCentric, this is the number that callers would dial to reach your PBX. With CallCentric, it’s the 11-digit account number of your account, e.g. 17771234567. In the XiVO web GUI, we use IPX → Call Management → Incoming Calls to create inbound routes for every DID and trunk associated with your PBX. Two sample DIDs have been preconfigured to show you how to route calls to an extension or to an IVR. To use these, simply edit their settings and change the DID to match your trunk. Or you can create new incoming routes to send calls to dozens of other destinations on your PBX.
5. Routing Outgoing Calls from XiVO to Providers
Outgoing calls from extensions on your XiVO PBX must be routed to a trunk provider to reach call destinations outside your PBX. Outgoing call routing is managed in IPX → Call Management → Outgoing Calls. You tell XiVO which trunk provider to use in the General tab. Then you assign a Calling Digit Sequence to this provider in the Exten tab. For example, if NXXNXXXXXX were assigned to Vitelity, this would tell XiVO to send calls to Vitelity if the caller dialed a 10-digit number. XiVO has the flexibility to add and remove digits from a dialed number as part of the outbound call routing process. For example, you might want callers to dial 48NXXNXXXXXX to send calls to a Google Voice trunk where 48 spells "GV" on the phone keypad. We obviously don’t want to send the entire dial string to Google Voice so we tell XiVO to strip the first 2 digits (48) from the number before routing the call out your Google Voice trunk. We’ve included two examples in the XiVO Snapshot to get you started. Skype Connect (shown below) is an example showing how to strip digits and also add digits before sending a call on its way:
6. Setting Up Softphone & WebRTC to Connect to XiVO
If you’re a Mac user, you’re lucky (and smart). Download and install Telephone from the Mac App Store. Start up the application and choose Telephone:Preference:Accounts. Click on the + icon to add a new account. To set up your softphone, you need 3 pieces of information: the IP address of your server (Domain), and your Username and Password. In the World of XiVO, you’ll find these under IPBX → Services → Lines. Just click on the Pencil icon beside the extension to which you want to connect. Now copy or cut-and-paste your Username and Password into the Accounts dialog of the Telephone app. Click Done when you’re finished, and your new softphone will come to life and should show Available. Dial the IVR (4871) to try things out. With Telephone, you can use over two dozen soft phones simultaneously on your desktop.
For everyone else, 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 XiVO Line. You’ll need the IP address of your server plus your Line username and password associated with the 701 extension. On the XiVO platform, do NOT use an actual extension number for your username with XiVO. Go to IPBX Settings → Lines to decipher the appropriate username and password for the desired extension. Click OK to save your entries.
WebRTC allows you to use your Chrome or Firefox browser as a softphone. Extension 701 comes preconfigured for WebRTC access with Incredible PBX for XiVO. It shares the same password as the Line associated with extension 701, but the username is 701 rather than the username associated with the Line. You can decipher the password by accessing the XiVO Web GUI and then IPBX → Services → Users → Incredible PBX → XiVO Client Password. Or you can log into your server as root and run: /root/show-701-pw
To use WebRTC, you first need to accept the different SSL certificates associated with the WebRTC app. From your browser, go to the following site and click on each link to accept the certificates. Once you’ve completed this process, visit the Wazo WebRTC site. The Username is 701. The Password is the one you obtained above. The IP Address is the address of your XiVO PBX.
7. Setting Up a CellPhone Extension with XiVO
In addition to ringing your SIP extension when incoming calls arrive, XiVO can also ring your cellphone simultaneously. This obviously requires at least one outbound trunk. If that trunk provider also supports CallerID spoofing, then XiVO will pass the CallerID number of the caller rather than the DID associated with the trunk. Incredible PBX for XiVO comes preconfigured with cellphone support for extension 701. To enable it, access the XiVO Web GUI and go to IPBX → Services → Users → Incredible PBX and insert your Mobile Phone Number using the same dial string format associated with the trunk you wish to use to place the calls to your cellphone. You can answer the incoming calls on either your cellphone or the phone registered to extension 701.
8. Activating Voice Recognition for XiVO
Google has changed the licensing of their speech recognition engine about as many times as you change diapers on a newborn baby. Today’s rule restricts use to “personal and development use.” Assuming you qualify, the very first order of business is to enable speech recognition for your XiVO PBX. Once enabled, the Incredible PBX feature set grows exponentially. You’ll ultimately have access to the Voice Dialer for AsteriDex, Worldwide Weather Reports where you can say the name of a city and state or province to get a weather forecast for almost anywhere, Wolfram Alpha for a Siri-like encyclopedia for your PBX, and Lefteris Zafiris’ speech recognition software to build additional Asterisk apps limited only by your imagination. And, rumor has it, Google is about to announce new licensing terms, but we’re not there yet. To try out the Voice Dialer in today’s demo IVR, you’ll need to obtain a license key from Google. This Nerd Vittles tutorial will walk you through that process. Don’t forget to add your key to /var/lib/asterisk/agi-bin/speech-recog.agi on line 72.
9. Adding DISA Support to Your XiVO PBX
If you’re new to PBX lingo, DISA stands for Direct Inward System Access. As the name implies, it lets you make calls from outside your PBX using the call resources inside your PBX. This gives anybody with your DISA credentials the ability to make calls through your PBX on your nickel. It probably ranks up there as the most abused and one of the most loved features of the modern PBX.
There are three ways to implement DISA with Incredible PBX for XiVO. You can continue reading this section for our custom implementation with two-step authentication. There also are two native XiVO methods for implementing DISA using a PIN for security. First, you can dedicate a DID to incoming DISA calls. Or you can add a DISA option to an existing IVR. Both methods are documented in our tutorial on the PIAF Forum.
We prefer two-step authentication with DISA to make it harder for the bad guys. First, the outside phone number has to match the whitelist of numbers authorized to use your DISA service. And, second, you have to supply the DISA password for your server before you get dialtone to place an outbound call. Ultimately, of course, the monkey is on your back to create a very secure DISA password and to change it regularly. If all this sounds too scary, don’t install DISA on your PBX.
1. To get started, edit /root/disa-xivo.txt. When the editor opens the dialplan code, move the cursor down to the following line:
exten => 3472,n,GotoIf($["${CALLERID(number)}"="701"]?disago1) ; Good guy
2. Clone the line by pressing Ctrl-K and then Ctrl-U. Add copies of the line by pressing Ctrl-U again for each phone number you’d like to whitelist so that the caller can access DISA on your server. Now edit each line and replace 701 with the 10-digit number to be whitelisted.
3. Move the cursor down to the following line and replace 12341234 with the 8-digit numeric password that callers will have to enter to access DISA on your server:
exten => 3472,n,GotoIf($["${MYCODE}" = "12341234"]?disago2:bad,1)
4. Save the dialplan changes by pressing Ctrl-X, then Y, then ENTER.
5. Now copy the dialplan code into your XiVO setup, remove any previous copies of the code, and restart Asterisk:
cd /root sed -i '\:// BEGIN DISA:,\:// END DISA:d' /etc/asterisk/extensions_extra.d/xivo-extrafeatures.conf cat disa-xivo.txt >> /etc/asterisk/extensions_extra.d/xivo-extrafeatures.conf /etc/init.d/asterisk reload
6. The traditional way to access DISA is to add it as an undisclosed option in an IVR that is assigned to one of your inbound trunks (DIDs). For the demo IVR that is installed, edit the ivr-1.conf configuration file and change the "option 0″ line so that it looks like this. Then SAVE your changes.
exten => 0,1(ivrsel-0),Dial(Local/3472@default)
7. Adjust the inbound calls route of one of your DIDs to point to the demo IVR by changing the destination to Customized with the following Command:
Goto(ivr-1,s,1)
A sample is included in the XiVO Snapshot. Here’s how ours looks for the Nerd Vittles XiVO Demo IVR:
8. Now you should be able to call your DID and choose option 0 to access DISA assuming you have whitelisted the number from which you are calling. When prompted, enter the DISA password you assigned and press #. You then should be able to dial a 10-digit number to make an outside call from within your PBX.
SECURITY HINT: Whenever you implement a new IVR on your PBX, it’s always a good idea to call in from an outside number 13 TIMES and try every key from your phone to make sure there is no unanticipated hole in your setup. Be sure to also let the IVR timeout to see what result you get.
10. Test Drive Incredible PBX 14 for XiVO
To give you a good idea of what to expect with Incredible PBX for XiVO, we’ve set up a sample IVR using voice prompts from Allison. Give it a call and try out some of the features including voice recognition. Dial 1-843-606-0555.
Nerd Vittles Demo IVR Options
1 – Call by Name (say "Delta Airlines" or "American Airlines" to try it out)
2 – MeetMe Conference
3 – Wolfram Alpha (Coming Soon!)
4 – Lenny (The Telemarketer’s Worst Nightmare)
5 – Today’s News Headlines
6 – Weather Forecast (enter a 5-digit ZIP code)
7 – Today in History (Coming Soon!)
8 – Speak to a Real Person (or maybe just Lenny if we’re out)
What To Do and Where to Go Next?
Here are a Baker’s Dozen projects to get you started exploring XiVO on your own. Just plug the keywords into the search bar at the top of Nerd Vittles to find numerous tutorials covering the topics or simply follow our links. Note that all of these components already are in place so do NOT reinstall them. Just read the previous tutorials to learn how to configure each component. Be sure to also join the PIAF Forum to keep track of the latest tips and tricks with XiVO. There’s a treasure trove of information that awaits.
- Activate SMS Messaging
- Configure CallerID Superfecta
- Explore Munin Graphics in XiVO
- Integrate Google Calendar Alerts
- Configure NeoRouter and PPTP VPN
- Set Up EndPoint Management in XiVO
- Customize and Create New XiVO IVRs
- Try Out SQLite3 Call Detail Reports
- Learn About XiVO Backups and Upgrades
- Deploy SIP URIs for Free Worldwide Calling
- Develop a PortKnocker Emergency Access Plan
- Deploy Redundancy with XiVO High Availability
- Install FCC RoboCall BlackList with WhiteList
- Install Siri-Like Wolfram Alpha Module
XiVO and Incredible PBX 14 Dial Code Cheat Sheets
Complete XiVO documentation is available here. But here are two cheat sheets in PDF format for XiVO Star Codes and Incredible PBX Dial Codes.
Published: Monday, November 28, 2016
Need help with Asterisk? Visit the PBX in a Flash Forum.
Coming Soon to Nerd Vittles: The Autonomous Car
Longer version of self-driving demo with Paint It Black soundtrack https://t.co/YuUmyEaCgR
— Elon Musk (@elonmusk) November 19, 2016
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…
2016, The Year of VoIP Choice: Introducing Ombutel
Today we’re pleased to introduce our last (but not least) Unified Communications platform for 2016. Meet Ombutel, a terrific new GUI-based Asterisk® aggregation that was developed jointly by Telesoft and Xorcom, two familiar faces in the Asterisk community. We racked our brain trying to come up with a simple way to explain all of the things that Ombutel can do. We finally concluded "a picture [really] is worth a thousand words!"
Here’s some additional background on the Ombutel project:
As with the other platforms we’ve introduced this year, we think the best way to get started is to install it yourself and kick the tires. For those familiar with FreePBX® or XiVO®, this will be a walk in the park. You set up an Extension and Device, configure a SIP Trunk to handle your calls, define an Inbound and Outbound Route to direct calls to their proper destination, load your extension credentials into a softphone or SIP phone, and you’re done. We were making calls after loading Ombutel into VirtualBox in less than 30 minutes.
To get started, download Ombutel from their web site. The ISO is approximately 1GB in size.
Installing Ombutel. Using the console interface in VirtualBox, we kicked off the install and went through the typical CentOS 7 setup choosing a language, choosing a keyboard, selecting an install destination, and setting up a root password. When the base install completes, you can log in as root to obtain Ombutel’s IP address. All of the remaining setup is completed using a browser pointed to Ombutel’s IP address. Set up an admin password for your server. Then login as admin with your new password. The Dashboard will display.
Creating an Extension. To get started, create an Extension and let Ombutel automatically populate an associated Device: (1) PBX → (2) Extensions → (3) Extensions. The only required entries are the (4) Extension Number and (5) Name. Be sure to set the NAT entry correctly for your network. Once you’ve completed the entries, click the Save button and then the red Reload icon. Notice the list icon in the right column of the window. Clicking on the List pull-down will show all of the extensions you created and allow you to edit them and decipher whether a particular extension is active.
Adding a SIP Trunk. Adding Trunks is equally straight-forward: (1) PBX → (2) External → (3) Trunks. Then fill in the dozen items with your own credentials and settings. We’ve used a RingPlus SIP trunk as an example. NOTE: Be sure to set the From User field to your 10-digit RingPlus number even though this is not shown in the screenshot below. Once you’ve completed the entries, click the Save button and then the red Reload icon. As previously noted, the list icon in the right column will display all of the Trunks you’ve created.
Configuring an Incoming Route. As with other PBXs, incoming routes define how calls from individual DIDs are routed once they arrive. The minimum requirements to set up an Incoming Route are a Description, a DID Pattern (usually the number associated with the DID), and a Destination for the incoming calls. Once you’ve completed the entries, click the Save button and then the red Reload icon. As previously noted, the list icon in the right column will display all of the Incoming Routes you’ve created and let you edit them.
Configuring an Outgoing Route. As with other PBXs, outbound routes define how calls are routed out of your PBX based upon the dial string. You can choose one ore more trunks to associate with each Outbound Route. The dial string for each outbound route needs to be unique. Once you’ve completed the entries, click Save and then the red Reload icon.
Just to Be Safe, Restart Asterisk. Ombutel still is fairly new code. We’ve found that a quirk occurs once in a while during all of the initial configuration. This typically can be squared away (e.g. extensions not connecting) by restarting Asterisk: /etc/init.d/asterisk restart.
Setting Up a Softphone to Connect to Ombutel. If you’re a Mac user, you’re lucky (and smart). Download and install Telephone from the Mac App Store. Start up the application and choose Telephone:Preference:Accounts. Click on the + icon to add a new account. To set up your softphone, you need 3 pieces of information: the IP address of your server (Domain), and your Username and Password. With Ombutel, choose PBX → Extensions → Extensions. Then click on the List icon and click on the extension to which you want to connect. Now copy or cut-and-paste your User Device number into Username and Password into Password on the Accounts dialog of the Telephone app. Click Done when you’re finished, and your new softphone will come to life and should show Available. Dial the same extension (7001) to test things out. With Telephone, you can use over two dozen soft phones simultaneously on your desktop.
For everyone else, 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 XiVO Line. As with the Telephone app above, you’ll need the IP address of your server plus your User Device and Password associated with the desired extension. Click OK to save your entries.
Some Thoughts on Network Security. We’ll have more to say about the Ombutel security model with FirewallD at another time. Suffice it to say, it’s not our preferred way of securing an Asterisk server. Here’s why. The following ports are all exposed by default:
1 - SIP udp and tcp 5060 2 - DNS tcp and udp 53 3 - NTP udp 123 4 - DHCP udp 67-68 5 - HTTP tcp 80 6 - SSH tcp 22 7 - RTP udp 10000-20000 8 - IAX2 udp 4569 9 - SwitchBoard tcp 4445 10 - mDNS udp 5353 224.0.0.251
You can check these for yourself in /etc/firewalld/services, and you can list the default firewall setup like this: firewall-cmd --list-all-zones
. In fairness to Ombutel, their firewall design is no worse than what you will find with AsteriskNOW or the FreePBX Distro or Elastix. Incredible PBX and PBX in a Flash powered by 3CX take a different approach and don’t put all the responsibility for network security on the system administrator. We simply don’t have sufficient confidence in any Asterisk platform to risk exposing SIP, IAX2, HTTP, and SSH to the Big Bad Internet. For the time being until we can complete work on Incredible PBX for Ombutel, we recommend you run Ombutel behind a hardware-based firewall that does not expose these ports to the Internet for anyone and everyone.
Where To Go From Here. Ombutel has an awesome collection of video tutorials that should be the next stop in your Ombutel adventure. We’ve barely scratched the surface of this powerful platform, and there are still some missing pieces such as Google Voice. For the time being, you can use the Simonics SIP to Google Voice gateway to add this functionality. See this recent tutorial for some hints and a discount coupon.
An Early Stocking Stuffer from Santa. We’ll leave you with a quick tutorial on how to install FLITE so that text-to-speech can be used in your Asterisk custom dialplan.1 In addition, we’re releasing the first of many Incredible PBX components for Ombutel with our Yahoo News application. After installing it, just dial *951 from any extension to listen to the latest Yahoo News Headlines. Both FLITE and the news application are GPL2 open source code. We’ll have more goodies to share with you in coming months.
yum -y upgrade cd /usr/src wget http://incrediblepbx.com/Asterisk-Flite-2.2-rc1-flite1.3.tar.gz tar zxvf Asterisk-Flite* cd Asterisk-Flite* yum -y install gcc asterisk-devel make make install make samples ldconfig /etc/init.d/asterisk restart asterisk -rx "core show application like flite" cd / wget http://incrediblepbx.com/nv-news-ombutel.tar.gz tar zxvf nv-news-ombutel.tar.gz rm -f nv-news-ombutel.tar.gz asterisk -rx "dialplan reload"
A final cautionary note to would-be Ombutel developers. You can’t use Feature Codes such as *951 as Destinations in the Ombutel GUI. Instead, you first will need to create a Custom Application as shown below. Then you can use Custom Applications → Yahoo News as a Destination in components such as IVRs and Inbound Routes. Enjoy!
Published: Monday, November 21, 2016
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…
- Customizations to the dialplan can be made by creating files in /etc/asterisk/ombutel with the filename pattern “extensions__NN-*.conf” where NN defines the order in which to load the files. Numbers above 50 are strongly recommended! [↩]