Home » Posts tagged 'XiVO' (Page 2)
Tag Archives: XiVO
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…
XiVO Nirvana: Cloud Hosting with SIP Service for 15¢ a Day
Unlike in the Ma Bell era, the real beauty of VoIP technology is being able to experiment with different providers and never having to put all your eggs in one basket. And today we’re pleased to introduce a new XiVO hosting and trunk combination that provides first-class service at truly incredible price points. For the XiVO cloud provider, we’ve chosen OVH, a cloud platform that was recommended to us by our friends at 3CX. It also works great with the new PIAF5 platform for those exploring a (free) commercial alternative.
$3.49 a month at OVH (No, that is not a typo!) gets you an OpenStack KVM with 2GB RAM, 10GB of SSD storage, and RAID10 redundancy plus a 99.95% uptime SLA. And you have your choice of worldwide data centers with many more on the way. For those in the United States, the closest location for the time being is Québec which also happens to be the hometown of the XiVO developers. Ping times on both U.S. coasts are well under 100 milliseconds so you won’t have to worry about voice quality and latency.
For our XiVO SIP provider today, we’ll walk you through setting up inbound and outbound calling with Anveo Direct, one of the least expensive SIP providers in the world. In addition to great pricing, Anveo also provides SIP URI failover for your Anveo trunks. Just follow our previous tutorial to set up a SIP URI address for your XiVO server. Or you could use the SIP URI of your RingPlus mobile phone if you followed our previous tutorial. Anveo also happens to give you total control over call routing with their highly configurable LCR technology. Pay-by-the-minute incoming SIP calls in the U.S. are a penny per minute. Outgoing U.S. calls typically range from one-tenth to three-tenths of a cent per minute depending upon the destination.
Installing Incredible PBX for XiVO at OVH
To get started with OVH, order the VPS SSD 1 package and choose Debian 8 as your operating system. Once your credentials arrive, log into your server as root using SSH/Putty and immediately change your root password: passwd.
While still logged into your server as root using SSH/Putty, issue the following commands to kick off the base install:
cd /root wget http://incrediblepbx.com/IncrediblePBX13-XiVO.sh chmod +x IncrediblePBX13-XiVO.sh ./IncrediblePBX13-XiVO.sh
After rebooting (it takes about 2 minutes on the OVH platform), log into your server again as root and issue the following command to complete the XiVO and Incredible PBX installation and configuration:
./IncrediblePBX13-XiVO.sh
You now can proceed to Incredible PBX Initial Configuration tutorial to continue your setup. Much of this initial configuration already has been put in place using our XiVO Snapshot technology. Just review the settings and make sure they meet your requirements. Then you’ll be ready to set up your Anveo Direct trunk and routes to handle your SIP calls.
Getting Started with Anveo Direct
We previously have documented how to set up Anveo Direct for Outbound Calling from your XiVO PBX so we won’t repeat it here. Today we’ll show you how to obtain and configure an Anveo Direct DID to enable Inbound Calling to your XiVO PBX. We’re going to walk you through the procedure to install a U.S. DID, but Anveo Direct offers worldwide DIDs. And we’ll show you how to modify the default XiVO setup to support international DIDs should you wish to use them.
After you’ve set up Outbound Calling with Anveo Direct as previously documented, log back into the Anveo Direct portal with your credentials.
Under the Inbound Service tab, choose Order Anveo Direct DID and click Geographic. Then select the United States, your desired State, and your desired City to obtain a DID. Select one or more DIDs as desired and then click ORDER PHONE NUMBERS SELECTED. Choose either the pay-by-the-minute or all-you-can-eat option for your DID depending upon your needs and complete your purchase. There’s a 3-month minimum charge for all DIDs.
Once you complete your DID purchase, choose the Inbound Service tab again and choose Configure Destination SIP Trunks. ADD A NEW SIP TRUNK following the example below and specifying the IP address of your XiVO PBX. Include a Failover SIP URI if you’ve set one up. Don’t confuse the SIP URI entry with the Failover entry. The first is mandatory while the second is not. The SIP URI entry tells Anveo how to send out the SIP calls to your XiVO PBX. It should look like this using your own server’s IP address or FQDN: $[E164]$@1.2.3.4 or $[E164]$@ovh.yourdomain.com. Click SAVE when finished.
Next, choose the Inbound Service tab again and choose Configure AnveoDIDs. Every DID you purchased should already have an entry here. Click the EDIT button to open the options window. Then click the Call Options tab. From the pull-down, choose the Destination SIP Trunk entry that you created in the previous step:
Finally, under the CallerID tab, choose {E164} (no prefix). Then click SAVE. That completes the DID setup process on the Anveo Direct side. Now you simply have to configure XiVO to accept the incoming calls from your Anveo DID.
Configuring Anveo DIDs on Your XiVO PBX
Unlike most SIP providers, Anveo Direct does not require (nor permit) registration of your Anveo trunks. Calls to Anveo DIDs will simply be routed to your XiVO PBX based upon the SIP URI you specified above. If your Incredible PBX for XiVO server was built on or after November 9, 2016, then the Anveo trunk and dialplan are already in place. All you’ll need to do on the XiVO side is to add an Incoming Call route for each DID telling XiVO where to send the calls. If you have an existing Incredible PBX for XiVO server, there’s a little more work to do, and we’ve documented the steps to support Anveo DIDs on the PIAF Forum.
For U.S. DIDs, the DID format is 11 digits beginning with a 1. The example below would route incoming calls from the Anveo DID to the Demo IVR. You could just as easily have specified an extension or ring group to take the calls.
Published: Wednesday, November 9, 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…
The Stealth AutoAttendant for Incredible PBX and PIAF5
This week we’re dusting off an oldie but goodie, The Stealth AutoAttendant. If you missed our original column 8 years ago, here’s a quick refresher. When a call comes into your PBX, a generic greeting is played: "Thanks for calling. Please hold a moment while we locate someone to take your call." Then the call is transferred to an extension or ring group. Stealth comes into play because this is really an AutoAttendant and, while the greeting is played, a caller can press a preassigned key to transfer the call to some other destination. While it’s obviously not a secure method for providing additional phone features to certain callers, it’s nevertheless helpful in opening up additional PBX functionality without making callers feel like they’re dealing with yet another IVR when they call your home or office. Using the 12-button keypad and clever design, features such as conferencing and DISA can be offered while still providing security through added prompts for passwords or PINs.
https://youtu.be/dB-Tr3WnrKE
In addition to releasing GPL voice prompts from Allison Smith, today we’ll show you how to implement this on three different platforms: Incredible PBX 13 with its FreePBX® GPL modules, Incredible PBX for XiVO®, and PBX in a Flash 5 powered by 3CX®.
Stealth AutoAttendant Voice Prompts
Let’s start by getting you the voice prompts to support the Stealth AutoAttendant. What’s included is a copy of the GPL3 license and versions of the voice prompts in both GSM and WAV format. The prompts are identical except one has a two-second pause at the beginning of the prompt. This is helpful to avoid premature playing of the voice prompt when using trunk providers such as Google Voice that take a couple seconds to set up audio on a call. You can experiment with both and see which best meets your own requirements.
For the techies, it’s probably worth documenting how these prompts were created. We started with GSM versions of both our Generic Greeting prompt and the 2-second silence prompt that can be found on most Asterisk® servers. These were then converted to WAV format: sox 2.gsm -s -b 16 2.wav
. Then the WAV files were combined like this:
sox -m 2.wav nv-GenericWelcome.wav nv-GenericWelcome2.wav
Now let’s download the Stealth AutoAttendant prompts to your desktop. The files are available in stealth.zip and stealth.tar.gz format so choose the download that is easiest for you to work with. Once downloaded, unzip or untar the compressed files.
Stealth AutoAttendant with Incredible PBX 13
On the Incredible PBX 13 platform with its FreePBX GPL modules, there are 3 steps to implement the Stealth AutoAttendant. The tricky part in setting up the Stealth AutoAttendant is getting the prompt installed so that it can be used as an Announcement when building an IVR in the GUI. So let’s start there.
1. FreePBX provides a facility for importing existing voice prompts in the GUI. Login as admin to get started. Then go to Admin → System Recordings → Upload and import the generic greeting desired from your desktop. Name the recording and then click Save to add it to your server.
2. Next choose Application → IVR and create a new IVR using the generic greeting as your Announcement. You can follow the IVR Demo template provided with Incredible PBX if you need some hints on how to set up an IVR. Or, better yet, review the Nerd Vittles IVR tutorial.
3. The final step is to point the Inbound Route for one or more of your DIDs to the Stealth AutoAttendant to take incoming calls. Go to Connectivity → Inbound Routes and set the Destination for the DID to the IVR you just created.
Stealth AutoAttendant with Incredible PBX for XiVO
For those using the Incredible PBX for XiVO platform, the voice prompt for the Stealth AutoAttendant already is in place in /usr/local/share/asterisk/sounds. Just copy it to /var/lib/xivo/sounds/playback in order to use it as a voice prompt with your IVRs:
cp -p /usr/local/share/asterisk/sounds/nv-GenericWelcome.wav \\ /var/lib/xivo/sounds/playback/.
Currently, there is no GUI to create IVRs and AutoAttendants with XiVO, but an IVR GUI is in the works so stay tuned. In the meantime, our tutorial and IVR template (ivr-1.conf in /etc/asterisk/extensions_extra.d) will show you how easy it is to create the dialplan code. Just copy it (cp -p) to stealth-aa.conf as a starting point. To use the Stealth AutoAttendant voice prompt, simply change the third line from ivr-Allison and replace it with the new voice prompt: nv-GenericWelcome. It doesn’t get much easier than that.
Finally, using the XiVO GUI, navigate to IPBX → Call Management → Incoming Calls and create a new incoming route for your DID that points to the IVR template you created.
Stealth AutoAttendant with PIAF5 powered by 3CX
On the PIAF5 and 3CX platform, implementing the Stealth AutoAttendant is the easiest of all. It’s all done on a single screen. You get what you pay for. 🙂 Start by logging into the 3CX web portal. When the Dashboard appears, click on Digital Receptionist in the left toolbar. Next click Add. 3CX will automatically assign an extension number for your new IVR, e.g. 800. Assign a new friendly name: Stealth AutoAttendant. Then click the Upload button to upload the WAV prompt from your desktop. Choose the options desired for your Stealth AutoAttendant and designate the DID(s) to use for incoming calls to the Stealth AutoAttendant. In the Destination for no or invalid input, set the Timeout to 2 seconds and choose where to route incoming calls when the caller presses no keys or when the input is invalid. This means the caller has the duration of the greeting plus 2 seconds to press a key and divert the call to another destination. Click OK to save your settings. Told you it’s easy.
Published: Monday, October 31, 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…
Introducing Incredible PBX with XiVO Snapshots
If you’ve been following along in our XiVO adventure with Incredible PBX, you already know that there were a significant number of configuration hoops to jump through once the base install was finished. While these steps are well documented in the original Incredible PBX for XiVO tutorial, there still were plenty of opportunities for typos and skipping steps. Any misstep could spell the difference in a perfectly functioning PBX and one that couldn’t make or receive calls. Today we’re pleased to report that approach is now going the way of cars with a stick shift. If you want to continue to manually configure your XiVO PBX, you still have that option. Just jump to the original tutorial and run the installer choosing the options you wish to activate. But if you prefer a self-driving Tesla, that’s now an option as well. Continue reading, and we’ll walk you through using XiVO Snapshots.
A XiVO Snapshot is just what the name implies. It’s a snapshot of a working XiVO PBX that has virtually everything already configured: SIP settings to work with Asterisk®, a SIP extension to work with a SIP phone, or softphone, or WebRTC plus your cellphone, SIP and Google Voice trunk setups for most of the major commercial providers, and default inbound and outbound routes to ease the task of routing calls into and out of your PBX. Basically, you plug in your credentials from your favorite provider after running the Incredible PBX for XiVO installer with all Incredible PBX options enabled. Then you tell XiVO how to route the calls, and you’re done. You can have a stable and functional PBX making calls to anywhere in the world in a matter of minutes. Then you can review our numerous tutorials to add additional bells and whistles while you’re already enjoying a fully functional PBX.
Incredible PBX 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 for XiVO. By the way, the whole process takes less than an hour!
- 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 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
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.
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 XiVO 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 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 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, October 10, 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…
Type It or Say It: Asterisk SMS Messaging Returns with Incredible PBX for XiVO
We continue our XiVO adventure today with two simple additions to the Incredible PBX for XiVO dialplan that enable SMS messaging both from SIP phones such as the Yealink T46G and using voice recognition from any XiVO phone. To implement SMS messaging, you’ll need at least one Google Voice account configured. To implement the voice recognition option, you’ll also need to first enable voice recognition on your Incredible PBX for XiVO server.
The prerequisites for SMS Messaging from a SIP phone with XiVO look like this:
- Incredible PBX for XiVO Server
- Preconfigured Google Voice Trunk
- SIP Phone capable of SMS Messaging, e.g. Yealink T46G 1
SIP Phone SMS Messaging. To begin, login to your XiVO PBX using your favorite web browser. We need to edit the existing gv.conf file by navigating to IPX Configuration → Configuration Files → gv.conf. The first context in the file should look like this:
[subr-gv-outcall] exten = s,1,Set(XIVO_CALLOPTIONS=r) same = n,Return()
Replace the entire context by cutting and pasting the following code and substituting your actual Google Voice account name and password for yourname and yourpassword below. Then Save the file changes leaving the Reload Dialplan option checked. Be sure that the third from the last line below does NOT wrap to a separate line in the XiVO editor!
;# // BEGIN gv-outcall [subr-gv-outcall] exten = s,1,Set(XIVO_CALLOPTIONS=r) same = n,GotoIf($["${MESSAGE(body)}" = ""]?skipsms) same = n,Set(GVACCT=yourname@gmail.com) same = n,Set(GVPASS=yourpassword) same = n,System(/usr/bin/gvoice -e ${GVACCT} -p ${GVPASS} send_sms ${XIVO_DSTNUM} "${MESSAGE(body)}") same = n(skipsms),Return() ;# // END gv-outcall
Once you get this set up and since we’ll be using plain text passwords to send the SMS messages through Google Voice, you’ll need to perform these two additional steps after first logging into your Google account with a browser: (1) Enable Less Secure Apps and (2) Activate the Google Voice Reset Procedure. Now promptly send an SMS message from a phone registered to your XiVO server.
Sending SMS Messages. We obviously can’t cover the SMS messaging methodology for every SIP phone on the market. But here’s how to send an SMS message using Yealink’s T46G. First, configure one of the buttons on the phone as an extension on your XiVO PBX. Next, press the Menu button. Highlight Messages and press OK. Choose Text Message and OK. Choose New Message and OK. Type your SMS message using the keypad and press Send button. For the From: field, use the left and right arrow keys to select your XiVO extension. Press the down arrow and fill in the SMS number of your recipient just as you would do on your smartphone. Press the Send button. "Sending Message" will appear briefly on the T46G’s display. XiVO’s Asterisk CLI also will show transmission of the SMS message.
Interestingly, the same SMS functionality exists on the $29 UTP E-62 (if you can find one). Choose Menu → Applications → SMS → New. Type your SMS message using the keypad and press Send button. For the From: field, use the left and right arrow keys to select your XiVO extension. Press the down arrow and fill in the SMS number of your recipient just as you would do on your smartphone. Press the Send button. "Sending Message" will appear briefly on the UTP’s display. XiVO’s Asterisk CLI also will show the SMS transmission.
For bargain hunters that can’t find a UTP E-62, Yealink’s $50 YEA-SIP-T19P-E2 Entry-level SIP phone also appears to support SMS messaging. As with the UTP phones, you’ll need a $9 power supply unless your network supports POE.
Receiving SMS Messages. Typically reply messages to Google Voice numbers are forwarded either to an email address or to Hangouts. We don’t recommend enabling incoming mail on your XiVO PBX. Instead, add a New Alternate Email Address to your Google Voice account in Settings → Voicemail & Text. After verifying the new email address, set it as your Voicemail Notification email address and Save changes. Go back into Settings → Voicemail & Text and make certain that you have also checked the Text Forwarding checkbox which now should reflect your alternate email address. Now all of your incoming SMS messages will be delivered to this email address.
TIP: Google will no longer let you forward incoming SMS messages directly to another SMS destination, but you can cheat. If you have your own mail server or a non-Gmail account on which you can redirect incoming mail without verification, then simply set up the alternate email address as documented above. Then reroute that email address to point to an SMS-email gateway that forwards incoming messages to SMS, e.g. 8431234567@txt.att.net to send an SMS message to your AT&T cellphone. The complete list of providers is here.
SMS Dictator for XiVO. Okay. We hear you. Yes, typing SMS messages with a 12-button keypad can be tedious especially if your message is sprinkled with S’s. Pressing the 7 key eight times for every "s" in your text message is painful. If you’ve activated voice recognition on your Incredible PBX for XiVO server, then you can simply dictate your SMS messages by first dialing 767 (S-M-S) from any phone connected to your XiVO PBX. After dictating your message, you have the choice of keying in a 10-digit phone number for the SMS recipient or you can say the name of anyone in your AsteriDex phone book.
To install SMS Dictator on your Incredible PBX for XiVO server, issue the following commands and enter your Google Voice account name (with @gmail.com) and password when prompted:
cd /root wget http://incrediblepbx.com/sms-dictator-xivo.tar.gz tar zxvf sms-dictator-xivo.tar.gz rm -f sms-dictator-xivo.tar.gz ./sms-dictator.sh
3/2/2017 Update: A patched version of pygooglevoice to support SMS messaging is now available here.
Now simply dial S-M-S (767) from any phone connected to your XiVO PBX to send an SMS message. Enjoy!
Originally published: Monday, October 3, 2016
Need help with Asterisk? Come join 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…
- Some of our purchase links refer users to Amazon when we find their prices are competitive for the recommended products. Nerd Vittles receives a small referral fee from Amazon to help cover the costs of our blog. We never recommend particular products solely to generate Amazon commissions. However, when pricing is comparable or availability is favorable, we support Amazon because Amazon supports us. [↩]