Home » Posts tagged 'orgasmatron'
Tag Archives: orgasmatron
The Incredible PBX: Meet the New Kid on the Block
As much as we loved the moniker, the Orgasmatron build was in desperate need of a name change to more accurately describe its true heritage. We didn't look too far for just the right name. Meet The Incredible PBX!
Thanks to the Zero Internet Footprint™ design, it's the most secure Asterisk®-based PBX around. What this means is Incredible PBX™ has been engineered to sit safely behind a NAT-based, hardware firewall with no port exposure to your actual server.1 And you won't find a more full-featured Personal Branch Exchange™.
NEWS FLASH: Incredible PBX is now available for Asterisk 1.8! Go here.
Coming January 19: Incredible PBX 11 & Incredible Fax for Asterisk 11 and FreePBX 2.11
The Incredible PBX is much more than just a name change. In addition to all of the Orgasmatron magic including free calling in the U.S. and Canada courtesy of Google Voice, you now get some terrific new features tailored to meet the needs of the individual: randomly generated passwords for all of your extensions, free Skype support and a new backup module both of which we'll introduce over the next few weeks. And CallerID Superfecta now is preconfigured to work out of the box with support from dozens of providers worldwide.
The Incredible PBX Inventory. For those wondering what's included with The Incredible PBX, here's a feature list of components you get in addition to the base install of PBX in a Flash with CentOS 5.4, Asterisk 1.4, FreePBX 2.6, and Apache, SendMail, MySQL, PHP, phpMyAdmin, IPtables Linux firewall, Fail2Ban, and WebMin. Please note that A2Billing, Cepstral TTS, Hamachi VPN, and Mondo Backups are optional and may be installed using provided scripts.
- A2Billing (/root/nv/install-a2billing)
- Amazon S3 Cloud Computing
- AsteriDex
- CallerID Superfecta (FreePBX Module adds Names to CID Numbers)
- CallWho for Asterisk
- Cepstral TTS for 32-bit, Asterisk 1.42 (/root/nv/install-cepstral.sh)
- Preconfigured Email That Works with SendMail
- Extensions (16 preconfigured with random passwords)
- FAX Module using nvfax
- FONmail
- FreePBX Backups
- Gizmo5 (Free Calls to Gizmo5 users worldwide: 1747xxxxxxx*1089)
- Google Voice (preconfigured)
- Hamachi VPN (/root/nv/install-hamachi.x)
- Hotel-Style Wakeup Calls (FreePBX Module)
- ISN: FreeNum SIP Calling from Any Phone
- MeetMe Conference Bridge (just dial C-O-N-F)
- Mondo Full System Backups (/root/nv/install-diskbackup.x)
- NewsClips from Yahoo
- ODBC Database Support
- PogoPlug Cloud Computing
- Reminders by Phone and Web
- SIP URI Outbound Calling (call any SIP URI worldwide for free)
- Skype Inbound & Outbound Calling (Available 4/26)
- TeleYapper
- Tide Reports with xTide
- Trunk Lister Script (/root/nv/trunks.sh)
- Trunks (Vitelity, Fonica, SIPgate, IPkall, and ENUM)
- Twitter Interface (Make Free Calls and Send SMS Messages)
- Weather by Airport Code
- Weather by ZIP Code
- Worldwide Weather
- Zaptel Updater (/root/nv/zaptel-update.sh)
Prerequisites. Here's what you'll need to get started:
- Broadband Internet connection
- $200 PC3 on which to run The Incredible PBX or a Proxmox VM
- dLink Router/Firewall. Low Cost: $35 WBR-2310 Best: DGL-4500
- Free Google Voice account (Available in U.S. without an invite at this link)
- Free SIPgateOne residential account (U.S. cell to get SMS invite) OR
- Free IPkall IAX account (recommended for international users)
Installing The Incredible PBX. The installation process is simple and straight-forward. Just don't skip any steps. Here are the 5 Steps to Free Calling, and The Incredible PBX will be ready to receive and make free U.S./Canada calls:
1. Install the latest version of PBX in a Flash
2. Download & run The Incredible PBX installer
3. Set up your two provider accounts
4. Configure a softphone or SIP telephone
5. Run the configure-gv credentials installer
Installing PBX in a Flash. Here's a quick tutorial to get PBX in a Flash installed. We recommend you install the latest 32-bit version of PBX in a Flash. This new build works much better with newer hardware including Atom-based computers and newer network cards. Unlike other Asterisk aggregations, PBX in a Flash utilizes a two-step install process. The ISO only installs the CentOS 5.5 operating system. Once installed, the server reboots and downloads a payload file that includes Asterisk, FreePBX, and many other VoIP and Linux utilities. We use virtually identical payloads for all versions of PBX in a Flash.
Download the 32-bit, PIAF 1.6 version from Google, SourceForge, Vitelity, Cybernetic Networks, or AdHoc Electronics. The MD5 checksum for the file is e8a3fc96702d8aa9ecbd2a8afb934d36. Or, if you are feeling really adventurous or if you have new, bleeding edge hardware, try our new 32-bit, PIAF 1.7 build which features CentOS 5.5. This new release is available from SourceForge or Google Docs. The MD5 checksum for the PIAF 1.7 build is 184cdb00142ccdd814b11de23fb00082.
Download the brand-new 32-bit PIAF 1.7.5.5. from SourceForge or one of our download mirrors. Burn the ISO to a CD. Then boot from the installation CD and type ksalt press the Enter key to begin.
WARNING: This install will completely erase, repartition, and reformat EVERY DISK (including USB flash drives) connected to your system so disable any disk you wish to preserve! Press Ctrl-C to cancel the install.
On some systems you may get a notice that CentOS can't find the kickstart file. Just tab to OK and press Enter. Don't change the name or location of the kickstart file! This will get you going. Think of it as a CentOS 'feature'. 🙂
At the keyboard prompt, tab to OK and press Enter. At the time zone prompt, tab once, highlight your time zone, tab to OK and press Enter. At the password prompt, make up a VERY secure root password. Type it twice. Tab to OK, press Enter. Get a cup of coffee. Come back in about 5 minutes. When the system has installed CentOS, it will reboot. Remove the CD promptly. After the reboot, choose A choose PIAF-Silver option. Have a 10-minute cup of coffee. After installation is complete, the machine will reboot a second time. Log in as root with your new password and execute the following commands:
update-scripts
update-fixes
status
When prompted, change the ARI password to something really obscure. You're never going to use it! You now have a PBX in a Flash base install. On a stand-alone machine, it takes about 30 minutes. On a virtual machine, it takes about half that time. Write down the dynamic IP address assigned to your server after running the status command. You'll need it shortly.
NOTE: So long as your system is safely sitting behind a hardware-based firewall, we do NOT recommend running update-source with The Incredible PBX. The version of Asterisk installed from our payload file is very stable.
Running The Incredible PBX Installer. Log into your server as root and issue the following commands to download and run The Incredible PBX installer:
cd /root
wget http://incrediblepbx.com/incrediblepbx.x
chmod +x incrediblepbx.x
./incrediblepbx.x
Have another 15-minute cup of coffee. It's a great time to consider a modest donation to the Nerd Vittles project. You'll find a link at the top of the page. When the installer finishes, READ THE SCREEN!
Here's a short video demonstration of the Incredible PBX installer process:
Either a free SIPgate One residential phone number or an IPkall number is a key component in today’s project. If you are eligible, we strongly recommend a SIPgate One residential account for The Incredible PBX. However, you may elect to use an IPkall account as an alternative. Both are free; however, you cannot register The Incredible PBX to IPkall's servers so you'll need to punch a hole in your firewall to receive incoming calls from Google Voice and IPkall. This step is not necessary with SIPgate accounts since there is a permanent registered connection between The Incredible PBX and SIPgate's servers!
One final word of caution is in order regardless of your choice of providers: Do NOT use special characters in any provider passwords, or nothing will work! Continue reading whichever section below applies to you.
Configuring SIPgate. If you live in the U.S. and have a cellphone, we'd recommend the SIPgate option since no adjustment of your hardware-based firewall is required. Otherwise, skip to the IPkall setup below. Step #1 is to request a SIPgate invite at this link. You'll need to enter your U.S. cellphone number to receive the SMS message with your invitation code. Don't worry. You can erase your cellphone number from your account once it is set up and working properly. Once you receive the invite code, enter it and choose the option to set up a residential account. Next, choose a phone number and write it down. The area code really doesn't matter because Google Voice is the only one that will be calling this number after we get things set up. For now, leave your cellphone number in place so that you can receive your confirmation call from Google Voice in the next step. After that, you'll want to revisit SIPgate and remove all parallel calling numbers. Finally, click on the Settings link and write down your SIP ID and SIP Password. You'll need these in a few minutes to complete the configuration of The Incredible PBX. Now place a call to your new SIPgate number and make certain that your cellphone rings before proceeding.
Configuring IPkall. If you're using IPkall as your intermediate provider, first log in to your hardware-based firewall/router and map UDP port 45694 to the private IP address that you just wrote down. This tells your firewall to pass all IAX2 traffic from the Internet directly to your new server. Don't worry. We have severely restricted which IP addresses can actually send IAX data through the PBX in a Flash IPtables firewall which is an integral part of this build. And, remember, no hardware firewall adjustments are necessary if you're using SIPgate instead of IPkall.
After your firewall is properly configured, you'll need to register for a free IPkall number. This is actually a two-step process. Set it up as a SIP connection when you first register. Then we'll change it to IAX once your new phone number is provided. So your initial IPkall request should look like this:
We recommend area code 425 for your requested number because IPkall appears to have lots of them. If they don't have an available number, your request apparently goes in the bit bucket. You'll know because IPkall typically turns these requests around in a few minutes. Don't worry about the mothership entry. We'll change it shortly. The other issue here is your public IP address. If you have a dedicated IP address, no worries. Just plug in the IP address for SIP Proxy. If it's dynamic, then you'll need to set up a fully-qualified domain name (FQDN) with a provider such as dyndns.com. Once you've got it set up, enter your credentials in the Dynamic DNS tab of your hardware-based firewall to assure that your dynamic IP address is always synchronized with your FQDN. Then enter the FQDN for your SIP Proxy address in the IPkall form. Be sure to make up a VERY secure password. Now send it off and wait for the return email with your new phone number.
When you receive your new phone number, you'll need to revisit the IPkall site and log in with your phone number and the password you chose above. Make the changes shown below using your actual IPkall phone number instead of 4259876543:
It's worth stressing that these settings are extremely important so check your work carefully. Be sure the IAX option is selected. Be sure there are no typos in your two phone number entries. And be sure your FQDN or public IP address is correct. Then save your new settings.
TIP: Be aware that IPkall cancels an assigned phone number after 30 consecutive days of inactivity. If you will be using your number infrequently, it's a good idea to schedule a Weekly Reminder to call the number with a prerecorded message. This will assure that your number stays functional.
Configuring Google Voice. Google Voice no longer is by invitation only so, if you're in the U.S. or have a friend that is, head over to the Google Voice site and register. After you've chosen a telephone number, plug in your new SIPgate or IPkall number as the destination for your Google Voice calls and choose Office as the Phone Type.
Google places a test call to your number so you'll have to delay it a bit for IPkall. If you're using SIPgate, go ahead and tell Google to place the test call which will be forwarded to your cellphone. Enter the two-digit code that's displayed when you're prompted to do so. With IPkall, wait until we finish running the credentials configurator below.
While you're still in Google Voice Settings, click on the Calls tab. Make sure your settings match these:
- Call Screening - OFF
- Call Presentation - OFF
- Caller ID (In) - Display Caller's Number
- Caller ID (Out) - Don't Change Anything
- Do Not Disturb - OFF
Click Save Changes once you adjust your settings. Under the Voicemail tab, plug in your email address so you get notified of new voicemails. Down the road, receipt of a Google Voice voicemail will be a big hint that something has come unglued on your PBX.
If you're using SIPgate and you've confirmed your number, revisit SIPgate and remove all parallel calling numbers including your cell number.
Adding Your Credentials to The Incredible PBX. We're ready to insert your credentials and SIPgate/IPkall information into The Incredible PBX. You'll need several pieces of information: your 10-digit Google Voice phone number, your Google Voice account name (which is the email address you used to set up your GV account), your GV password (no spaces!), and your 10-digit SIPgate or IPkall RingBack DID. You'll also need to reenter your passwd-master password which is used to configure CallerID Superfecta. Finally, you'll need to tell the configurator whether you're using a SIPgate or IPkall account. In the case of SIPgate, you'll also be prompted to enter your SIP ID and SIP password. These are NOT the same as your account credentials!!
Log back into your server as root and issue the following command to kick off the configurator: ./configure-gv.x. Check your entries carefully. If you make a typo in entering any of your data, press Ctrl-C to cancel the script and then run it again!! Once you've checked and double-checked your entries, press Enter and The Incredible PBX setup will be completed. You'll need to press Enter again when the script finishes to reboot your PBX. After the reboot, your system will have randomly-generated passwords for every extension and voicemail box that is preconfigured on your system. The DISA password also has been changed. We generate five-digit passwords. If you will sleep better with longer passwords, be our guest. They are easily reset using the FreePBX web interface described elsewhere in this article.
Finally, log back into your server as root and issue the following command to obtain the password for extension 701 which we'll need to configure your softphone in the next step:
mysql -uroot -ppassw0rd -e"select id,data from asterisk.sip where id='701' and keyword='secret'"
The result will look something like the following where 701 is the extension and 18016 is the randomly-generated extension password exclusively for your Incredible PBX:
+-----+-------+
id data
+-----+-------+
701 18016
+-----+-------+
Configuring a SIP Phone. There are hundreds of terrific SIP telephones and softphones for Asterisk-based systems. Once you get things humming along, you'll want a real SIP telephone, and you'll find lots of recommendations on Nerd Vittles. For today, let's download a terrific (free) softphone to get you started. We recommend X-Lite because there are versions for Windows, Mac, and Linux. So download your favorite from this link. Install and run X-Lite on your Desktop. At the top of the phone, click on the Down Arrow and choose SIP Account Settings, Add. Enter the following information using your actual password for extension 701 and the actual IP address of your Incredible PBX server instead of 192.168.0.251. Click OK when finished. Your softphone should now show: Available.
If you're using SIPgate as your provider with Google Voice, you're ready to place a test call. If you're using IPkall, we still need to verify your IPkall number with Google Voice. Return to Google Voice and tell it to place the test call to your IPkall number which you've already entered as your destination number. Your softphone will ring momentarily. Enter the two-digit code provided by Google Voice, and you're all set.
Incredible PBX Test Flight. The proof is in the pudding as they say. So let's try two simple tests. First, from another phone, call your Google Voice number. Your softphone should begin ringing shortly. Answer the call and make sure you can send and receive voice on both phones. Hang up. Now let's place an outbound call. Using the softphone, dial your cellphone number. Google Voice should transparently connect you. Answer the call and make sure you can send and receive voice on both phones. If everything is working, congratulations!
Here's a brief video demonstration showing how to set up a softphone to use with your Incredible PBX, and it also walks you through several of the dozens of Asterisk applications included in your system.
Solving One-Way Audio Problems. If you experience one-way audio on some of your phone calls, you may need to adjust the settings in /etc/asterisk/sip_custom.conf. Just uncomment the first two lines by removing the semicolons. Then replace 173.15.238.123 with your public IP address, and replace 192.168.0.0 with the subnet address of your private network. Save the file and restart Asterisk with the command: amportal restart.
Learn First. Explore Second. Even though the installation process has been completed, we strongly recommend you do some reading before you begin your VoIP adventure. VoIP PBX systems have become a favorite target of the hackers and crackers around the world and, unless you have an unlimited bank account, you need to take some time learning where the minefields are in today's VoIP world. Start by reading our Primer on Asterisk Security. We've secured all of your passwords except your root password and your passwd-master password, and we're assuming you've put very secure passwords on those accounts as if your phone bill depended upon it. It does! Also read our PBX in a Flash and VPN in a Flash knols. If you're still not asleep, there's loads of additional documentation on the PBX in a Flash documentation web site.
Choosing a VoIP Provider. For this week, we'll point you to some things to play with on your new server. Then, in the subsequent articles below, we'll cover in detail how to customize every application that's been loaded. Nothing beats free when it comes to long distance calls. But nothing lasts forever. So we'd recommend you set up another account with Vitelity using our special link below. This gives your PBX a secondary way to communicate with every telephone in the world, and it also gets you a second real phone number for your new system... so that people can call you. Here's how it works. You pay Vitelity a deposit for phone service. They then will bill you $3.99 a month for your new phone number. This $3.99 also covers the cost of unlimited inbound calls (two at a time) delivered to your PBX for the month. For outbound calls, you pay by the minute and the cost is determined by where you're calling. If you're in the U.S., outbound calls to anywhere in the U.S. are a little over a penny a minute. If you change your mind about Vitelity and want a refund of the balance in your account, all you have to do is ask.
The VoIP world is new territory for some of you. Unlike the Ma Bell days, there's really no reason not to have multiple VoIP providers especially for outbound calls. Depending upon where you are calling, calls may be cheaper using different providers for calls to different locations. So we recommend having at least two providers. Visit the PBX in a Flash Forum to get some ideas on choosing alternative providers.
A Word About Security. Security matters to us, and it should matter to you. Not only is the safety of your system at stake but also your wallet and the safety of other folks' systems. Our only means of contacting you with security updates is through the RSS Feed that we maintain for the PBX in a Flash project. This feed is prominently displayed in the web GUI which you can access with any browser pointed to the IP address of your server. Check It Daily! Or add our RSS Feed to your favorite RSS Reader. Be safe!
Kicking the Tires. OK. That's enough tutorial for today. Let's play. Using your new softphone, begin your adventure by dialing these extensions:
- D-E-M-O - Incredible PBX Demo (running on your PBX)
- 1234*1061 - Nerd Vittles Demo via ISN FreeNum connection to NV
- 17476009082*1089 - Nerd Vittles Demo via ISN to Google/Gizmo5
- Z-I-P - Enter a five digit zip code for any U.S. weather report
- 6-1-1 - Enter a 3-character airport code for any U.S. weather report
- 5-1-1 - Get the latest news and sports headlines from Yahoo News
- T-I-D-E - Get today's tides and lunar schedule for any U.S. port
- F-A-X - Send a fax to an email address of your choice
- 4-1-2 - 3-character phonebook lookup/dialer with AsteriDex
- M-A-I-L - Record a message and deliver it to any email address
- C-O-N-F - Set up a MeetMe Conference on the fly
- 1-2-3 - Schedule regular/recurring reminder (PW: 12345678)
- 2-2-2 - ODBC/Timeclock Lookup Demo (Empl No: 12345)
- 2-2-3 - ODBC/AsteriDex Lookup Demo (Code: AME)
- Dial *68 - Schedule a hotel-style wakeup call from any extension
- 1061*1061 - PBX in a Flash Support Conference Bridge
- 882*1061 - VoIP Users Conference every Friday at Noon (EST)
Homework. Your homework for this week is to do some exploring. FreePBX is a treasure trove of functionality, and The Incredible PBX adds a bunch of additional options. See if you can find all of them. Also check out Tweet2Dial which uses Twitter to make Google Voice calls, send free SMS messages, and manage your Incredible PBX.
Be sure to log into your server as root and look through the scripts added in the /root/nv folder. You'll find all sorts of goodies to keep you busy. s3cmd.faq tells you how to quickly activate the Amazon S3 Cloud Computing service. And, if you've heeded our advice and purchased a PogoPlug, you can link to your home-grown cloud as well. Just add your credentials to /root/pogo-start.sh. Then run the script to enable the PogoPlug Cloud on your server. All of your cloud resources are instantly accessible in /mnt/pogoplug. It's perfect for off-site backups which we'll cover in a few weeks.
Don't forget to List Yourself in Directory Assistance so everyone can find you by dialing 411. And add your new number to the Do Not Call Registry to block telemarketing calls. Or just call 888-382-1222 from your new number. Finally, try out the included Stealth AutoAttendant by dialing your own number and pressing 0 while the greeting is played. This will reroute your call to the demo applications option in the IVR.
Originally published: Monday, April 19, 2010
VoIP Virtualization with Incredible PBX: OpenVZ and Cloud Solutions
Adding Skype to The Incredible PBX
Adding Incredible Backup... and Restore to The Incredible PBX
Adding Multiple Google Voice Trunks to The Incredible PBX
Adding Remotes, Preserving Security with The Incredible PBX
Remote Phone Meets Travelin' Man with The Incredible PBX
Support Issues. With any application as sophisticated as this one, you're bound to have questions. Blog comments are a terrible place to handle support issues although we welcome general comments about our articles and software. If you have particular support issues, we encourage you to get actively involved in the PBX in a Flash Forums. It's the best Asterisk tech support site in the business, and it's all free! We maintain a thread with the latest Patches and Bug Fixes for Incredible PBX. Please have a look. Unlike some forums, ours is extremely friendly and is supported by literally hundreds of Asterisk gurus and thousands of ordinary users just like you. So you won't have to wait long for an answer to your questions.
Coming Soon. We haven't forgotten. We'll cover setting up multiple Google Voice accounts for simultaneous calling on multiple channels very soon. And the new (free) Skype Gateway to Asterisk for The Incredible PBX is now available. The FreePBX components already are in place to support inbound and outbound calling via Skype. You can even try a test call to our Aspire One Revo today by dialing nerdvittles from your favorite Skype client. Beginning today, this article will be available on http://IncrediblePBX.com. Then Nerd Vittles will return to our (almost) weekly schedule of new articles. Enjoy!
Need help with Asterisk? Visit the PBX in a Flash Forum.
Or Try the New, Free PBX in a Flash Conference Bridge.
whos.amung.us If you're wondering what your fellow man is reading on Nerd Vittles these days, wonder no more. Visit our new whos.amung.us statistical web site and check out what's happening. It's a terrific resource both for us and for you.
Special Thanks to Our Generous Sponsors
FULL DISCLOSURE: ClearlyIP, Skyetel, Vitelity, DigitalOcean, Vultr, VoIP.ms, 3CX, Sangoma, TelecomsXchange and VitalPBX have provided financial support to Nerd Vittles and our open source projects through advertising, referral revenue, and/or merchandise. As an Amazon Associate and Best Buy Affiliate, we also earn from qualifying purchases. We’ve chosen these providers not the other way around. Our decisions are based upon their corporate reputation and the quality of their offerings and pricing. Our recommendations regarding technology are reached without regard to financial compensation except in situations in which comparable products at comparable pricing are available from multiple sources. In this limited case, we support our sponsors because our sponsors support us.
BOGO Bonaza: Enjoy state-of-the-art VoIP service with a $10 credit and half-price SIP service on up to $500 of Skyetel trunking with free number porting when you fund your Skyetel account. No limits on number of simultaneous calls. Quadruple data center redundancy. $25 monthly minimum spend required. Tutorial and sign up details are here.
The lynchpin of Incredible PBX 2020 and beyond is ClearlyIP components which bring management of FreePBX modules and SIP phone integration to a level never before available with any other Asterisk distribution. And now you can configure and reconfigure your new Incredible PBX phones from the convenience of the Incredible PBX GUI.
VitalPBX is perhaps the fastest-growing PBX offering based upon Asterisk with an installed presence in more than 100 countries worldwide. VitalPBX has generously provided a customized White Label version of Incredible PBX tailored for use with all Incredible PBX and VitalPBX custom applications. Follow this link for a free test drive!
Special Thanks to Vitelity. Vitelity is now Voyant Communications and has halted new registrations for the time being. Our special thanks to Vitelity for their unwavering financial support over many years and to the many Nerd Vittles readers who continue to enjoy the benefits of their service offerings. We will keep everyone posted on further developments.
Some Recent Nerd Vittles Articles of Interest...
- Requires a SIPgate One account. [↩]
- For Asterisk 1.6 or for 64-bit systems with Asterisk 1.4 or 1.6, use the Cepstral install procedures outlined in this Nerd Vittles article. [↩]
- If you use the recommended Acer Aspire Revo, be advised that it does NOT include a CD/DVD drive. You will need an external USB drive to load the software. Some of these work with CentOS, and some don't. Most HP and Sony drives work; however, we strongly recommend you purchase an external DVD drive from a merchant that will accept returns, e.g. Best Buy, WalMart, Office Depot, Office Max, Staples. [↩]
- Mapping a port on your firewall to a private IP address unblocks certain Internet packets and allows them to pass through your firewall directly to an IP device "inside" your firewall for further processing. [↩]
The Incredible PBX: Adding Multiple Google Voice Trunks
About the only drawback to Google Voice's free U.S. and Canada calling with the Incredible PBX has been the fact that you could only make one outbound call at a time... at least on Google's nickel. So today we'll fix that, and you can enjoy simultaneous outbound calls using as many Google Voice trunks as you have signed up for. If you're in the U.S., you're eligible and no invitation is required. Just head over to the Google Voice site to register.
Today's Incredible PBX enhancement also will permit you to set up multiple inbound DIDs for different area codes across the country which may save your out-of-town friends and relatives a little change when they want to contact you. And to think we had $200 a month phone bills in our college days just to call the hometown honey. The wonders of modern technology!
Prerequisites. Here's what you'll need to get started today. First, you need a functioning Incredible PBX. So start by installing Incredible PBX. Second, you'll need a second Google Voice account. And finally, you'll need an additional SIPgate One number.
Installation Assumptions. We'll walk you through the steps to get a second account activated with the Incredible PBX. If you need more than two, just repeat the steps below and substitute a new number for 2 in every step. As with baking cookies, if you skip a step, the cookies taste like crap. 🙂 For security reasons, we're using an additional SIPgate One account for the second setup. This avoids having to open up SIP access in your firewall which would require additional locking down of IPtables to specific SIP IP addresses.
Setting Up New SIPgate and Google Voice Accounts. As was true with the initial Incredible PBX setup, the first steps in activating a second line are to create and configure your SIPgate account and then tie that number into your new Google Voice account. For ease of reference, we've repeated below the pertinent portions of the original Nerd Vittles article.
Configuring SIPgate. If you live in the U.S. and have a cellphone, we'd recommend the SIPgate option since no adjustment of your hardware-based firewall is required. Otherwise, skip to the IPkall setup below. Step #1 is to request a SIPgate invite at this link. You'll need to enter your U.S. cellphone number to receive the SMS message with your invitation code. Don't worry. You can erase your cellphone number from your account once it is set up and working properly. Once you receive the invite code, enter it and choose the option to set up a residential account. Next, choose a phone number and write it down. The area code really doesn't matter because Google Voice is the only one that will be calling this number after we get things set up. For now, leave your cellphone number in place so that you can receive your confirmation call from Google Voice in the next step. After that, you'll want to revisit SIPgate and remove all parallel calling numbers. Finally, click on the Settings link and write down your SIP ID and SIP Password. You'll need these in a few minutes to complete the configuration of The Incredible PBX. Now place a call to your new SIPgate number and make certain that your cellphone rings before proceeding.
Configuring Google Voice. Once you've signed up for a new Google Voice account, choose a telephone number and plug in your new SIPgate number as the destination for your Google Voice calls and choose Office as the Phone Type.
Google Voice will place a test call to your number which SIPgate will forward to your cellphone. Enter the two-digit code that's displayed when you're prompted to do so.
While you're still in Google Voice Settings, click on the Calls tab. Make sure your settings match these:
- Call Screening - OFF
- Call Presentation - OFF
- Caller ID (In) - Display Caller's Number
- Caller ID (Out) - Don't Change Anything
- Do Not Disturb - OFF
Click Save Changes once you adjust your settings. Under the Voicemail tab, plug in your email address so you get notified of new voicemails. Down the road, receipt of a Google Voice voicemail will be a big hint that something has come unglued on your PBX.
Once you've confirmed your Google Voice number, revisit SIPgate and remove all parallel calling numbers including your cell number. Be sure you've written down your SIPid and SIPpassword while you're there!
FreePBX Overview. Don't be intimidated by the FreePBX setup instructions which follow. All we're really doing is cloning the original pieces of information that made Google Voice work in the initial Incredible PBX setup. For most of the items, we'll just tack a 2 onto the names previously used. Nothing prevents your adding 3, 4, and 5 accounts down the road if you have additional Google Voice and SIPgate accounts to support each iteration.
To begin, use a web browser to open FreePBX on your Incredible PBX. Using the actual private IP address of your server, go to the following link: http://192.168.0.33/admin.
Adding Parking Lot Slots. As originally configured, the Incredible PBX provides 5 parking lot slots for use on your PBX. These are numbers that let you temporarily "park" calls so that they can be picked up on another extension. One of those slots (75) is used by the Incredible PBX to place outbound Google Voice calls. If you want the ability to place simultaneous outbound Google Voice calls using multiple trunks, then we need additional parking lot slots for each simultaneous call. We recommend bumping up the number of parking lot slots from 5 to 9. Then you can use 75-79 for up to 5 simultaneous outbound calls with Google Voice. Here's how. In FreePBX, choose Setup, Parking Lot, Number of Slots: 9. Your entries should look like this screen shot:
When you've made the change, click Submit Changes, Apply Configuration Changes, Continue with Reload.
Creating Additional Custom Destinations. You'll recall that Google Voice actually places two calls when you make an outbound call. First, Google Voice calls you back. Then Google Voice places a call to your desired destination. The callback to you is handled transparently in Incredible PBX using pygooglevoice and Asterisk®'s parking lot feature. To handle multiple simultaneous calls, you'll need additional custom destinations. Here's how. In FreePBX, choose Tools, Custom Destinations, Add Custom Destination. Then make your new entries for custom-park2 look like this:
When you've made the entries and carefully checked them, click Submit Changes, Apply Configuration Changes, Continue with Reload.
Creating Additional Inbound Routes. Now we need an additional Inbound Route to handle the second incoming call generated by Google Voice. Here's how. In FreePBX, choose Setup, Inbound Routes, Add Incoming Route, gv-ringback2. Make the entries shown in the screenshot below substituting your 10-digit SIPgate/IPkall and Google Voice numbers in the appropriate fields. Be sure to choose Custom GV-Park2 as the Custom Destination for this Inbound Route. Check your entries carefully, a typo here will kill completion of the calls!
When you've made the entries and carefully checked them, click Submit, Apply Configuration Changes, Continue with Reload.
Creating Additional Custom Trunks. With every telephony provider, Asterisk needs a Trunk. In the case of Google Voice, we need a Custom Trunk for each Google Voice number to be used on your Incredible PBX. Think of a trunk as the bucket where Asterisk dumps an outbound call for processing. Two calls require two buckets. Three calls, three buckets. And so on. Well, that's almost true. Some providers can handle multiple calls, but Google Voice doesn't. So we need to make two changes in your trunk setup. First, we'll adjust the original Custom Trunk for Google Voice and limit it to one simultaneous call at a time. Then, we'll add a new Custom Trunk to support the second Google Voice account. Here's how.
In FreePBX, choose Setup, Trunks. In the right column, you'll see a list of all your existing trunks. Click on the second entry that looks like this: local/$OUTNUM$@ (custom). Be sure the Custom Dial String looks like what is shown below. If not, choose another trunk until you find the right one. Then make an entry of 1 in the Maximum Channels field:
When you've made the entry and carefully checked it, click Submit Changes, Apply Configuration Changes, Continue with Reload.
Now we're ready to Add the additional Custom Trunk. In FreePBX, choose Setup, Trunks, Add Custom Trunk. Make your entries look like what's shown below:
When you've made the Maximum Channels and Custom Dial String entries shown above and carefully checked them, click Submit Changes, Apply Configuration Changes, Continue with Reload.
Creating Additional Outbound Routes. FreePBX uses Outbound Routes to do just what the name implies: to route outbound calls to their destination. Outbound Routes are processed in the order in which they appear in the FreePBX Outbound Routes listing. We need to make three changes in the Outbound Routes processing to support a second Google Voice call path. First, we want to modify the existing Default Outbound Route to accommodate the second Google Voice account. Second, we want to add a new Outbound Route for the second Google Voice account so that calls can be placed directly with this route using a different dialing prefix. You'll recall that Google Voice calls in the Incredible PBX can optionally be dialed using the 48 prefix followed by a 10-digit number. The 48 spells GV on the phone key pad. So we'll add a new Outbound Route with a 482 (GV2) prefix which will tell Asterisk to route these calls out using the second Google Voice account. These prefixes can be anything you desire incidentally. Third, we'll need to move this new route UP the routes list so that it appears above and gets processed before the Default route. Here's how.
In FreePBX, choose Setup, Outbound Routes, Default. In the blank Trunk Sequence pulldown, choose the following entry: local/$OUTNUM#@custom-gv2. Now click the Add button. This should leave you with 3 outbound routes numbered 0, 1, and 2. Be sure your entries match the following:
When you've made the entry and carefully checked it, click Submit Changes, Apply Configuration Changes, Continue with Reload.
Now we're ready to add a new Outbound Route to support a custom dialing prefix for the second Google Voice account. In FreePBX, choose Setup, Outbound Routes. In the Add Route form, make the following entries:
When you've made the entries, click Submit Changes, Apply Configuration Changes, Continue with Reload.
Finally, look at the listing of Routes in the Right Margin. Using the arrow beside GoogleVoice2, move it up until it is just beneath the GoogleVoice entry. Then click Apply Config Changes, Continue with Reload.
Adding Additional SIPgate Trunks. If you set up your Incredible PBX originally using IPkall, then there already will be a sipgate trunk that can be used for this second line. Otherwise, you'll need to create a new sipgate2 trunk and clone the setup from the original sipgate trunk. Within FreePBX, goto Setup, Trunks and either Add a new SIP trunk or edit the existing sipgate trunk if it isn't already in use. If this is a newly added trunk, enter sipgate2 as the Trunk Name. The PEER Details under Outgoing Settings should be added so they look like this (substituting your actual SIPid and SIPpassword that were obtained from the SIPgate registration page:
type=peer
username=SIPid
fromuser=SIPid
secret=SIPpassword
context=from-trunk
host=sipgate.com
fromdomain=sipgate.com
insecure=very
caninvite=no
canreinvite=no
nat=yes
disallow=all
allow=ulaw&alaw
Blank out any data that's entered in the Incoming Settings section of the form. Then enter a Registration String with your actual SIPid, SIPpassword, and 10-digit SIPgate phone number:
SIPid:SIPpassword@sipgate.com/SIPphonenumber
Check your entries carefully for typos. Then click Submit Changes, Apply Configuration Changes, Continue with Reload.
Now is a good time to check and be sure the new SIPgate trunk registered with SIPgate. In FreePBX, choose Tools, Asterisk Info, SIP Info. Your newly created SIPgate trunk should display as Registered. If it says Request Sent, then you've got a typo in your credentials.
That takes care of all the FreePBX settings needed to support a second Google Voice number. Now we just need to add a chunk of dialplan code to Asterisk and restart Asterisk. Then you'll be ready to go. All of this is handled by a simple Nerd Vittles script so... not to worry! It's easy.
Adding Dialplan Code for Additional Trunks. Log into your server as root, and issue the following commands to download and run the dialplan configuration script. For future reference, be advised that there are configuration scripts for gv2, gv3, gv4, and gv5 with corresponding names.
cd /root
wget http://incrediblepbx.com/configure-gv2
chmod +x configure-gv2
./configure-gv2
When prompted, enter your 10-digit Google Voice phone number, your Google Voice email address, your Google Voice password, and your 10-digit SIPgate RingBack number. Check your work and then press the Enter key to adjust your dialplan and reload Asterisk. You now have a 2-line Incredible PBX. Enjoy!
The Incredible PBX: Basic Installation Guide
Adding Skype to The Incredible PBX
Adding Incredible Backup... and Restore to The Incredible PBX
Adding Remotes, Preserving Security with The Incredible PBX
Remote Phone Meets Travelin' Man with The Incredible PBX
Continue reading Basic Installation Guide, Part II.
Continue reading Basic Installation Guide, Part III.
Continue reading Basic Installation Guide, Part IV.
Support Issues. With any application as sophisticated as this one, you're bound to have questions. Blog comments are a terrible place to handle support issues although we welcome general comments about our articles and software. If you have particular support issues, we encourage you to get actively involved in the PBX in a Flash Forums. It's the best Asterisk tech support site in the business, and it's all free! We maintain a thread with the latest Patches and Bug Fixes for Incredible PBX. Please have a look. Unlike some forums, ours is extremely friendly and is supported by literally hundreds of Asterisk gurus and thousands of ordinary users just like you. So you won't have to wait long for an answer to your questions.
Need help with Asterisk? Visit the PBX in a Flash Forum.
Or Try the New, Free PBX in a Flash Conference Bridge.
whos.amung.us If you're wondering what your fellow man is reading on Nerd Vittles these days, wonder no more. Visit our new whos.amung.us statistical web site and check out what's happening. It's a terrific resource both for us and for you.
Special Thanks to Our Generous Sponsors
FULL DISCLOSURE: ClearlyIP, Skyetel, Vitelity, DigitalOcean, Vultr, VoIP.ms, 3CX, Sangoma, TelecomsXchange and VitalPBX have provided financial support to Nerd Vittles and our open source projects through advertising, referral revenue, and/or merchandise. As an Amazon Associate and Best Buy Affiliate, we also earn from qualifying purchases. We’ve chosen these providers not the other way around. Our decisions are based upon their corporate reputation and the quality of their offerings and pricing. Our recommendations regarding technology are reached without regard to financial compensation except in situations in which comparable products at comparable pricing are available from multiple sources. In this limited case, we support our sponsors because our sponsors support us.
BOGO Bonaza: Enjoy state-of-the-art VoIP service with a $10 credit and half-price SIP service on up to $500 of Skyetel trunking with free number porting when you fund your Skyetel account. No limits on number of simultaneous calls. Quadruple data center redundancy. $25 monthly minimum spend required. Tutorial and sign up details are here.
The lynchpin of Incredible PBX 2020 and beyond is ClearlyIP components which bring management of FreePBX modules and SIP phone integration to a level never before available with any other Asterisk distribution. And now you can configure and reconfigure your new Incredible PBX phones from the convenience of the Incredible PBX GUI.
VitalPBX is perhaps the fastest-growing PBX offering based upon Asterisk with an installed presence in more than 100 countries worldwide. VitalPBX has generously provided a customized White Label version of Incredible PBX tailored for use with all Incredible PBX and VitalPBX custom applications. Follow this link for a free test drive!
Special Thanks to Vitelity. Vitelity is now Voyant Communications and has halted new registrations for the time being. Our special thanks to Vitelity for their unwavering financial support over many years and to the many Nerd Vittles readers who continue to enjoy the benefits of their service offerings. We will keep everyone posted on further developments.
Some Recent Nerd Vittles Articles of Interest...
Orgasmatron 5.2: The Secure Swiss Army Knife for Asterisk
It’s been an exciting couple of weeks watching the overwhelmingly positive response to our release of Orgasmatron 5.1. With this version, we introduced a new Asterisk® security model that took into account the ever-increasing security risks posed by exposing web and telephony servers to direct Internet access. The bottom line is this. If your telecom requirements still can be accomplished by placing a server securely behind a $35 hardware-based Internet firewall with no Internet exposure, then it makes absolutely no sense to dangle such a tempting target in front of the world’s most nefarious creeps.
News Flash: Incredible PBX 4.0 is now available with FreePBX 2.10 support!
Coming January 19: Incredible PBX 11 & Incredible Fax for Asterisk 11 and FreePBX 2.11
Our experience suggests that the only trade off with this new approach is the inability to receive anonymous SIP calls… a small price to pay considering the potential financial and computer risks involved. You still can place outbound VoIP calls as well as placing and receiving calls using any of the phone numbers registered on your new PBX in a Flash server. And, thanks to Google Voice, SIPgate, and IPkall, all inbound calls are free, and all outbound calls to numbers in the U.S. and Canada are free as well.
If a SIP URI and your own Freenum/ISN number are simply features you can’t live without, sign up for a voip.ms IAX account, and you’ll get a SIP URI for free. Inbound SIP URI and Freenum/ISN calls will set you back $1 for every 1,000 minutes billed in 6 second increments.
Or you can sign up for a free IP Freedom CallCentric account and configure a new SIP trunk in FreePBX by following these directions. Once configured, your new server SIP URI will be 1777xxxxxxx@in.callcentric.com where xxxxxxx is your assigned 7-digit CallCentric number.
Keep in mind that a new security vulnerability has been found with either Asterisk or FreePBX almost monthly. The chart below tells you why. With virtually limitless attack surfaces because of the number of interrelated components in CentOS, Asterisk, and FreePBX comes enormous and recurring potential for remote compromise of these systems. Rather than play this cat-and-mouse security game with the underworld, the Orgasmatron design changes the paradigm. It lets you use any (secure or insecure) version of Asterisk and FreePBX without worrying about any outside attacks. Do passwords on your new server matter? Not really… unless there is someone inside your firewall that you don’t trust. 🙄 Are we going to secure them anyway? Absolutely. But instead of the constant worry over new security vulnerabilities, Orgasmatron 5.2 lets you enjoy exploring the world of Asterisk and VoIP telephony with an incredibly rich feature set that you won’t find anywhere else, period! We’ll resist making any other device analogies, but the idea here is to protect the good guy (you!) while keeping the bad guys out. No penetration. No worries. Simple as that.
In our former life working for a living, we actually procured and managed multimillion dollar PBXs as part of our "other duties as assigned." Without qualification, we can tell you that the feature set that Orgasmatron 5.2 brings to the table for free runs circles around anything you could buy (then or now) in the commercial marketplace. And, at one time or another, we purchased every Nortel feature good money could buy. There’s one other difference. Orgasmatron 5.2 runs swimmingly on a $200 Atom-based PC that you can purchase at any Best Buy as well as hundreds of other stores including Amazon, NewEgg, and Buy.com. We paid more than $200 to provision an additional extension on our Nortel switch! You, of course, can add as many extensions as you like. De nada.
So, why a new version of Orgasmatron in only a few weeks? Well, it’s not security-related. In fact, there is nothing wrong with continuing on with Orgasmatron 5.1. Unfortunately, it relied exclusively upon SIPgate to make free Google Voice calls in the U.S. and Canada. And SIPgate required an invite using an SMS message from a U.S.-based cellphone. That pretty well knocked out all of our friends living outside the United States. Today’s version fixes that by letting anyone sign up for a free IPkall phone number in Washington state. All you need is a valid email address. The setup process is a bit more complex because IPkall doesn’t support registered connections to their servers. But we’ll walk you through the additional steps and, once completed, your server will be just as secure as the SIPgate approach we set up with Orgasmatron 5.1. And few, if any, Linux skills are required to set up or manage Orgasmatron 5.2. As we’ve noted previously, if you can handle slice and bake cookies, you’ve got the necessary skillset! Be aware this is about a one-hour project, and you need to track through the article carefully, or the entire house of cards comes down.
New Asterisk Security Model. Orgasmatron 5.2 maintains our design goal of running an absolutely secure Asterisk PBX from behind a hardware-based firewall with either NO INBOUND PORTS exposed to the Internet with SIPgate or an IP-address-restricted IAX port for IPkall. Don’t defeat this security mechanism by exposing additional ports on your PBX in a Flash server to Internet access. And choose your NAT-based firewall/router carefully. All of these devices are not created equally. Not only do some perform better than others, but certain models are notoriously bad at handling NAT-based routing tasks, a critical requirement in the Asterisk VoIP environment. In almost every case of problems with one-way audio, the real culprit can be traced back to a crappy router. For $35, you really can’t go wrong with the dLink WBR-2310. If you want traffic shaping functionality as well, take a look at dLink’s Gaming Router, our personal favorite.
As long as your router, Google Voice, SIPgate, and IPkall passwords are secure, you can sleep like a baby. We use an intermediate SIP provider for Google Voice to set up free outbound Google Voice calls in the U.S. and Canada because Google Voice actually places two calls to connect you to your destination. First, you get a call back. And then the party you’re calling is connected. The SIPgate or IPkall trunk is used by Google Voice to call you back so the inbound call is always free. We handle the interconnection magic with Asterisk transparently so your calls appear to be processed as if you were using a standard telephone to dial out. Just refrain from using extension 75 in Asterisk for personal conferencing!
The choice is yours. You can use SIPgate with no incoming ports exposed to your server from the Internet. Or you can use IPkall and map UDP port 4569 (IAX2) on your hardware-based firewall to the internal IP address of your new PBX in a Flash server. Even with the IPkall setup, we’ve locked down IPtables (our Linux firewall) to restrict IAX access to several specific IP addresses so your server remains absolutely secure. We’ve also included support for FonicaTec’s IAX offering for those that want a backup IAX provider. We’ll have much more to say about IPtables in coming weeks.
If you’ve already installed Orgasmatron 5.1 and it’s working for you, do you need to upgrade? NO. With the exception of the new IAX support for IPkall, the code in Orgasmatron 5.2 is identical.
We, of course, continue to recommend that you sign up with Vitelity so you have an alternate communications vehicle in the event of a problem with your free service. Vitelity also can provide 911 emergency service for your home or home office. You can save a little money while supporting the PBX in a Flash project by using the links at the end of this article.
Swiss Army Knife Inventory. There’s no need for a Swiss Army Knife if you don’t know what all the blades are for. So, for those that are wondering what’s included in the Orgasmatron 5.2 build, here’s a feature list of the components you get in addition to the base PBX in a Flash build with CentOS 5.4, Asterisk 1.4, FreePBX 2.6, and Apache, SendMail, MySQL, PHP, phpMyAdmin, IPtables Linux firewall, Fail2Ban, and WebMin. Please note that A2Billing, Cepstral TTS, Hamachi VPN, and Mondo Backups are optional and may be installed using the scripts that are provided.
- A2Billing (/root/nv/install-a2billing)
- Amazon S3 Cloud Computing
- AsteriDex
- CallerID Superfecta (FreePBX Module)
- CallWho for Asterisk
- Cepstral TTS (/root/nv/install-cepstral.sh)
- Preconfigured Email That Works with SendMail
- Extensions (16 preconfigured)
- Fax Module using nvFax
- FONmail
- FreePBX Backups
- Gizmo5 (Free Calls to Gizmo5 users worldwide: 1747xxxxxxx*1089)
- Google Voice (preconfigured)
- Hamachi VPN (/root/nv/install-hamachi.x)
- Hotel-Style Wakeup Calls (FreePBX Module)
- ISN: FreeNum SIP Calling from Any Phone
- MeetMe Conference Bridge (just dial C-O-N-F)
- Mondo Full System Backups (/root/nv/install-diskbackup.x)
- NewsClips from Yahoo
- ODBC Database Support
- PogoPlug Cloud Computing
- Reminders by Phone and Web
- SIP URI Outbound Calling (call any SIP URI worldwide for free)
- TeleYapper
- Tide Reports with xTide
- Trunk Lister Script (/root/nv/trunks.sh)
- Trunks (Vitelity, Fonica, SIPgate, IPkall, and ENUM)
- Twitter Interface (Make Free Calls and Send SMS Messages)
- Weather by Airport Code
- Weather by ZIP Code
- Worldwide Weather
- Zaptel Updater (/root/nv/zaptel-update.sh)
Prerequisites. Here’s what you’ll need to get started:
- Broadband Internet connection
- Rock-solid NAT router/firewall. Recommend: $35 dLink WBR-2310
- $200 PC on which to run PBX in a Flash or a Proxmox Virtual Machine
- Free Google Voice account (HINT: Under $2 on eBay)
- Free SIPgateOne residential account (Use cell to get SMS invite) OR
- Free IPkall IAX account
Learn First. Install Second. Even though the installation process is now a No-Brainer, you are well-advised to do some reading before you begin. VoIP PBX systems have become a favorite target of the hackers and crackers around the world and, unless you have an unlimited bank account, you need to take some time learning where the minefields are in today’s VoIP world. Start by reading our Primer on Asterisk Security. Then read our PBX in a Flash and VPN in a Flash knols. If you’re still not asleep, there’s loads of additional documentation on the PBX in a Flash documentation web site.
Today’s Drill. The installation process is straight-forward, but a little different than the Orgasmo 5.1 scenario because of the need to accommodate IPkall. Just don’t skip any steps. In a nutshell, here are the 6 Steps to Free Calling and an incredibly versatile, preconfigured Asterisk PBX:
1. Install the latest version of PBX in a Flash
2. Run the Orgasmatron 5.2 Installer
3. Configure a softphone or SIP telephone
4. Configure Providers for Orgasmatron 5.2
5. Enter your Google Voice and SIPgate/IPkall credentials
6. Change existing passwords to secure your system
Installing PBX in a Flash. Here’s a quick tutorial to get PBX in a Flash installed. We recommend you install the latest PIAF 1.6 beta on a new Atom-based PC. This beta is virtually identical to version 1.4 except it uses CentOS 5.4 instead of CentOS 5.2. This means it works better with newer hardware including Atom-based computers and newer network cards. Unlike other Asterisk aggregations, PBX in a Flash utilizes a two-step install process. The ISO only installs the CentOS operating system. Once installed, the server reboots and downloads a payload file that includes Asterisk, FreePBX, and many other VoIP and Linux utilities. We use the identical payload for versions 1.3, 1.4, 1.5, and 1.6 of PBX in a Flash. The beta label simply means we haven’t had time to sufficiently test CentOS. But this is not a Microsoft-style beta so fear not!
Download the 32-bit, PIAF 1.6 version from SourceForge, Vitelity, Cybernetic Networks, or AdHoc Electronics. The MD5 checksum for the file is e8a3fc96702d8aa9ecbd2a8afb934d36. Burn the ISO to a CD. Then boot from the installation CD and type ksalt to begin.
WARNING: This install will completely erase, repartition, and reformat ALL disks on your system! Press Ctrl-C to cancel the install.
On some systems you may get a notice that CentOS can’t find the kickstart file. Just tab to OK and press Enter. Don’t change the name or location of the kickstart file! This will get you going. Think of it as a CentOS ‘feature’. 🙂
At the keyboard prompt, tab to OK and press Enter. At the time zone prompt, tab once, highlight your time zone, tab to OK and press Enter. At the password prompt, make up a VERY secure root password. Type it twice. Tab to OK, press Enter. Get a cup of coffee. Come back in about 5 minutes. When the system has installed CentOS, it will reboot. Remove the CD promptly. After the reboot, choose A option. Have a 10-minute cup of coffee. After installation is complete, the machine will reboot a second time. Log in as root with your new password and execute the following commands:
update-scripts
update-fixes
When prompted, change the ARI password to something really obscure. You’re never going to use it! You now have a PBX in a Flash base install. On a stand-alone machine, it takes about 30 minutes. On a virtual machine, it takes about half that time.
NOTE: So long as your system is safely sitting behind a hardware-based firewall, we do NOT recommend running update-source on the Orgasmatron builds because of parking lot issues in the latest releases of Asterisk.
Running the Orgasmatron 5.2 Installer. Log into your server as root and issue the following commands to run the Orgasmatron 5.2 installer:
cd /root
wget http://pbxinaflash.net/orgasmo52.x
chmod +x orgasmo52.x
./orgasmo52.x
Have another 15-minute cup of coffee. It’s a great time to consider a modest donation to the Nerd Vittles project. You’ll find a link at the top of the page. When the installer finishes, READ THE SCREEN!
Now run passwd-master1. Set your FreePBX passwords to something very secure but different from your Linux root password.
Next, type status2 and press Enter. Write down the IP address of your new server.
If you’re using IPkall, now’s the time to log in to your hardware-based firewall/router and map UDP port 45693 to the private IP address that you just wrote down. This tells your firewall to pass all IAX2 traffic from the Internet directly to your new server. Don’t worry. We have severely restricted which IP addresses can actually send IAX data through the PBX in a Flash IPtables firewall which is an integral part of this build. And, remember, no hardware firewall adjustments are necessary if you’re using SIPgate instead of IPkall.
For good measure, we recommend you reboot your server at this point. The command to type is simple: reboot4
Configuring a SIP Phone. There are hundreds of terrific SIP telephones and softphones for Asterisk-based systems. Once you get things humming along, you’ll want a real SIP telephone, and you’ll find lots of recommendations on Nerd Vittles. For today, let’s download a terrific (free) softphone to get you started. We recommend X-Lite because there are versions for Windows, Mac, and Linux. So download your favorite from this link. Install and run X-Lite on your Desktop. At the top of the phone, click on the Down Arrow and choose SIP Account Settings, Add. Enter the following information using 82812661 as the password for extension 701 and the actual IP address of your PBX in a Flash server instead of 192.168.0.251. Click OK when finished. Your softphone should now show: Available.
Don’t Forget! After you change your extension passwords later in this tutorial, you will need to update the password entry in X-Lite, or you will no longer be able to place calls! In fact, you will get locked out of your server for 90 minutes after three failed password attempts. So put this on a sticky note so you don’t forget, or you’ll regret it in about 15 minutes.
Either a free SIPgate One residential phone number or an IPkall number is a key component in today’s project. And there’s really no reason you can’t use both if they’re available in your location. Do NOT use special characters in your provider passwords, or nothing will work! Continue reading whichever section below applies to you.
Configuring SIPgate. If you live in the U.S. and have a cellphone, we’d recommend the SIPgate option since no adjustment of your hardware-based firewall is required. Otherwise, skip to the IPkall setup below. Step #1 is to request a SIPgate invite at this link. You’ll need to enter your U.S. cellphone number to receive the SMS message with your invitation code. Don’t worry. You can erase your cellphone number from your account once it is set up. Once you receive the invite code, enter it and choose the option to set up a residential account. Next, choose a phone number and write it down. The area code really doesn’t matter because Google Voice is the only one that will be calling this number after we get things set up. For now, leave your cellphone number in place so that you can receive your confirmation call from Google Voice in the next step. After that, you’ll want to revisit SIPgate and remove all parallel calling numbers. Finally, click on the Settings link and write down your SIP ID and SIP Password. You’ll need these in a few minutes to configure PBX in a Flash. Now place a call to your new SIPgate number and make certain that your cellphone rings before proceeding.
Configuring IPkall. If you’ve opted to use IPkall, here’s the drill. First, you’ll need to register for a free IPkall number. This is actually a two-step process. Set it up as a SIP connection when you first register. Then we’ll change it to IAX once your new phone number is provided. So your initial IPkall request should look like this:
We recommend area code 425 for your requested number because IPkall appears to have lots of them. If they don’t have an available number, your request apparently goes in the bit bucket. You’ll know because IPkall typically turns these requests around in a few minutes. Don’t worry about the mothership entry. We’ll change it shortly. The other issue here is your public IP address. If you have a dedicated IP address, no worries. Just plug in the IP address for SIP Proxy. If it’s dynamic, then you’ll need to set up a fully-qualified domain name (FQDN) with a provider such as dyndns.com. Once you’ve got it set up, enter your credentials in the Dynamic DNS tab of your hardware-based firewall to assure that your dynamic IP address is always synchronized with your FQDN. Then enter the FQDN for your SIP Proxy address in the IPkall form. Be sure to make up a VERY secure password. Now send it off and wait for the return email with your new phone number.
When you receive your new phone number, you’ll need to revisit the IPkall site and log in with your phone number and the password you chose above. Make the changes shown below using your actual IPkall phone number instead of 4259876543:
It’s worth stressing that these settings are extremely important so check your work carefully. Be sure the IAX option is selected. Be sure there are no typos in your two phone number entries. And be sure your FQDN or public IP address is correct. Then save your new settings.
We’re going to be making some entries in FreePBX which is the web-GUI that manages PBX in a Flash. For now, we simply need to enter your new IPkall phone number so that incoming calls to your IPkall number will actually ring on your softphone. Later, we’ll make some further adjustments once we get Google Voice humming along.
Using a web browser from your desktop, log in to FreePBX 2.6 at the following link substituting your server’s private IP address for ipaddress: http://ipaddress/admin. You’ll be prompted for a user name (maint) and password (the one you just created with passwd-master).
When FreePBX loads, choose Setup, Trunks, ipkall (iax). In the USER Context field, enter your 10-digit IPkall phone number. Click Submit Changes, Apply Configuration Changes, Continue with Reload to save your settings.
TIP: Be aware that IPkall cancels an assigned phone number after 30 consecutive days of inactivity. If you will be using your number infrequently, it’s a good idea to schedule a Weekly Reminder to call the number with a prerecorded message. This will assure that your number stays functional.
Now let’s test your new phone number. Call your IPkall number from a cellphone or some other phone. Your softphone should ring. Answer the call, and be sure you have voice in both directions! Do not proceed without success here, or the rest of the adventure is a waste of your time.
Configuring Google Voice. Google Voice still is by invitation only so the first thing you’ll need is an invite. If you’re in a hurry, then stroll over to eBay where you’ll find lots of them for under $2. Once you have your invite in hand, click on the email link to set up your account. After you’ve chosen a telephone number, plug in your new SIPgate or IPkall number as the destination for your Google Voice calls and choose Office as the Phone Type. Trust us.
Google then will place a call to your number and ask you to enter a confirmation code that’s been provided. When your cellphone (SIPgate) or softphone (IPkall) rings, answer it and punch in the number. Wait for confirmation. Then hang up.
As we mentioned earlier, there’s no reason you can’t set up both SIPgate and IPkall forwarding numbers in Google Voice. Just repeat the drill with the other provider’s number if you wish to activate both numbers for use with Google Voice. They’re not both going to ring simultaneously as you will see in a minute.
While you’re still in Google Voice Settings, click on the Calls tab. Make sure your settings match these:
- Call Screening – OFF
- Call Presentation – OFF
- Caller ID (In) – Display Caller’s Number
- Caller ID (Out) – Don’t Change Anything
- Do Not Disturb – OFF
Click Save Changes once you adjust your settings. Under the Voicemail tab, plug in your email address so you get notified of new voicemails. Down the road, receipt of a Google Voice voicemail will be a big hint that something has come unglued on your PBX.
Finally, place a test call to your new Google Voice number and be sure your cellphone or softphone rings. Don’t move forward until you’ve been able to successfully place a call to your phone by dialing your Google Voice number. Once this is working, revisit SIPgate and remove all parallel calling numbers including your cell number.
Adding Your Credentials to PBX in a Flash. We’re ready to insert your Google Voice credentials and SIPgate/IPkall number into PBX in a Flash. You’ll need four pieces of information: your 10-digit Google Voice phone number, your Google Voice account name (which is the email address you used to set up your GV account), your GV password (no spaces!), and your 11-digit SIPgate or IPkall RingBack DID (beginning with a 1). Don’t get the 10-digit GV number mixed up with the 11-digit SIPgate/IPkall RingBack DID, or nothing will work. 🙂
Log back into your server as root and issue the following command: ./configure-gv. Check your entries carefully. If you make a typo in entering any of your data, press Ctrl-C to cancel the script and then run it again!!
Configuring FreePBX. Now shift back to your Desktop and, using a web browser, log in to FreePBX 2.6 at the following link substituting your actual IP address for ipaddress: http://ipaddress/admin. You’ll be prompted for a user name (maint) and password (the one you just created with passwd-master). Depending upon which intermediate provider you’re using, do the following:
SIPgate Setup. When FreePBX loads, choose Setup, Trunks, sipgate. In Peer Details, replace both instances of sipID with your actual SipGate SIP ID. In Peer Details, replace sipPassword with your actual SipGate SIP Password. In Register String, replace sipID with your SipGate SIP ID, replace sipPassword with your SipGate SIP Password, and replace 3333333333 with your 10-digit SipGate Phone Number. When finished, the Register String should look something like the following:
7004484f0:B8TTW3@sipgate.com/4155201234
Click Submit, Apply Configuration Changes, Continue with Reload to save your changes.
SIPgate and IPkall Setup. While still in FreePBX with your browser, click Setup, Inbound Routes, gv-ringback. In DID Number, replace 3333333333 with your 10-digit SIPGate or IPkall Phone Number. In CallerID Number, replace 7777777777 with your 10-digit Google Voice Number.
Click Submit, Apply Configuration Changes, Continue with Reload to save your changes.
Securing FreePBX. You’re almost done. While still in FreePBX, choose each of the 16 preconfigured extensions on your new server and change the extension AND voicemail passwords. Here’s the drill: Setup, Extensions, 501, Submit. After changing secret and Voicemail Password, repeat with the next extension number instead of 501. Then Apply Config Changes, Continue when you’ve finished with all of them.
Now change the default DISA password: Setup, DISA, DISAmain, PIN, Submit Changes, Apply Config Changes, Continue.
Don’t forget to adjust your X-Lite password to match the password entry you made for extension 701!
Orgasmatron Test Flight. The proof is in the pudding as they say. So let’s try two simple tests. First, from another phone, call your Google Voice number. Your softphone should begin ringing shortly. Answer the call and make sure you can send and receive voice on both phones. Hang up. Now let’s place an outbound call. Using the softphone, dial your cellphone number. Google Voice should transparently connect you. Answer the call and make sure you can send and receive voice on both phones. If everything is working, congratulations!
Solving One-Way Audio Problems. If you experience one-way audio on some of your phone calls, you may need to adjust the settings in /etc/asterisk/sip_custom.conf. Just uncomment the first two lines by removing the semicolons. Then replace 173.15.238.123 with your public IP address, and replace 192.168.0.0 with the subnet address of your private network. Save the file and restart Asterisk with the command: amportal restart.
Choosing a VoIP Provider. For this week, we’ll point you to some things to play with on your new server. Then, in the subsequent articles below, we’ll cover in detail how to customize every application that’s been loaded. Nothing beats free when it comes to long distance calls. But nothing lasts forever. So we’d recommend you set up another account with Vitelity using our special link below. This gives your PBX a secondary way to communicate with every telephone in the world, and it also gets you a second real phone number for your new system… so that people can call you. Here’s how it works. You pay Vitelity a deposit for phone service. They then will bill you $3.99 a month for your new phone number. This $3.99 also covers the cost of unlimited inbound calls (two at a time) delivered to your PBX for the month. For outbound calls, you pay by the minute and the cost is determined by where you’re calling. If you’re in the U.S., outbound calls to anywhere in the U.S. are a little over a penny a minute. If you change your mind about Vitelity and want a refund of the balance in your account, all you have to do is ask.
The VoIP world is new territory for some of you. Unlike the Ma Bell days, there’s really no reason not to have multiple VoIP providers especially for outbound calls. Depending upon where you are calling, calls may be cheaper using different providers for calls to different locations. So we recommend having at least two providers. Visit the PBX in a Flash Forum to get some ideas on choosing alternative providers.
Kicking the Tires. OK. That’s enough tutorial for today. Let’s play. Using your new softphone, begin your adventure by dialing these extensions:
- D-E-M-O – Nerd Vittles Orgasmatron Demo (running on your PBX)
- 1234*1061 – Nerd Vittles Demo via ISN FreeNum connection to NV
- 17476009082*1089 – Nerd Vittles Demo via ISN to Google/Gizmo5
- Z-I-P – Enter a five digit zip code for any U.S. weather report
- 6-1-1 – Enter a 3-character airport code for any U.S. weather report
- 5-1-1 – Get the latest news and sports headlines from Yahoo News
- T-I-D-E – Get today’s tides and lunar schedule for any U.S. port
- F-A-X – Send a fax to an email address of your choice
- 4-1-2 – 3-character phonebook lookup/dialer with AsteriDex
- M-A-I-L – Record a message and deliver it to any email address
- C-O-N-F – Set up a MeetMe Conference on the fly
- 1-2-3 – Schedule regular/recurring reminder (PW: 12345678)
- 2-2-2 – ODBC/Timeclock Lookup Demo (Empl No: 12345)
- 2-2-3 – ODBC/AsteriDex Lookup Demo (Code: AME)
- Dial *68 – Schedule a hotel-style wakeup call from any extension
- 1061*1061 – PBX in a Flash Support Conference Bridge
- 882*1061 – VoIP Users Conference every Friday at Noon (EST)
Homework. Your homework for this week is to do some exploring. FreePBX is a treasure trove of functionality, and the Orgasmatron build adds a bunch of additional options. See if you can find all of them. For starters, you’ll want to activate CallerID Lookups in FreePBX. Choose Setup, CID Superfecta, Default and enter the maint password you created with passwd-master. Then choose Tools, Module Administration, CallerID Lookup, Enable, Process and Save the Settings. Then edit each of the Inbound Routes and choose CallerID Superfecta as the CID Lookup Source. Save your changes. Finally, choose Setup, CallerID Lookup Sources, CallerID Superfecta and be sure your maint password created with passwd-master is correct here, too. If not, update it. For additional tips, visit the forums.
Be sure to log into your server as root and look through the scripts added in the /root/nv folder. You’ll find all sorts of goodies to keep you busy. s3cmd.faq tells you how to quickly activate the Amazon S3 Cloud Computing service. And, if you’ve heeded our advice and purchased a PogoPlug, you can link to your home-grown cloud. Just add your credentials to /root/pogo-start.sh. Then run the script to enable the PogoPlug Cloud on your server. All of your cloud resources are instantly accessible in /mnt/pogoplug. It’s also perfect for off-site backups!
Also check out Tweet2Dial which lets you use Twitter to make Google Voice calls, send free SMS messages, and manage your new Asterisk server. Don’t forget to List Yourself in Directory Assistance so everyone can find you by dialing 411. And add your new number to the Do Not Call Registry to block telemarketing calls. Or just call 888-382-1222 from your new number. Finally, try out the included Stealth AutoAttendant by dialing your own number and pressing 0 while the greeting is played. This will reroute your call to the demo applications option in the IVR.
Support Issues. With any application as sophisticated as this one, you’re bound to have questions. Blog comments are a terrible place to handle support issues although we welcome general comments about our articles and software. If you have particular support issues, we encourage you to get actively involved in the PBX in a Flash Forums. It’s the best Asterisk tech support site in the business, and it’s all free! We maintain a thread with the latest Patches for Orgasmatron 5.1 and 5.2. Please have a look. Unlike some forums, ours is extremely friendly and is supported by literally hundreds of Asterisk gurus and thousands of ordinary users just like you. So you won’t have to wait long for an answer to your questions.
Coming Attractions. In our next episode, we’ll walk you through the process of adding a second, third, fourth, and fifth Google Voice line to your server so that you’ll never run out of free calling on your server. Enjoy!
Need help with Asterisk? Visit the PBX in a Flash Forum.
Or Try the New, Free PBX in a Flash Conference Bridge.
whos.amung.us If you’re wondering what your fellow man is reading on Nerd Vittles these days, wonder no more. Visit our new whos.amung.us statistical web site and check out what’s happening. It’s a terrific resource both for us and for you.
Special Thanks to Our Generous Sponsors
FULL DISCLOSURE: ClearlyIP, Skyetel, Vitelity, DigitalOcean, Vultr, VoIP.ms, 3CX, Sangoma, TelecomsXchange and VitalPBX have provided financial support to Nerd Vittles and our open source projects through advertising, referral revenue, and/or merchandise. As an Amazon Associate and Best Buy Affiliate, we also earn from qualifying purchases. We’ve chosen these providers not the other way around. Our decisions are based upon their corporate reputation and the quality of their offerings and pricing. Our recommendations regarding technology are reached without regard to financial compensation except in situations in which comparable products at comparable pricing are available from multiple sources. In this limited case, we support our sponsors because our sponsors support us.
BOGO Bonaza: Enjoy state-of-the-art VoIP service with a $10 credit and half-price SIP service on up to $500 of Skyetel trunking with free number porting when you fund your Skyetel account. No limits on number of simultaneous calls. Quadruple data center redundancy. $25 monthly minimum spend required. Tutorial and sign up details are here.
The lynchpin of Incredible PBX 2020 and beyond is ClearlyIP components which bring management of FreePBX modules and SIP phone integration to a level never before available with any other Asterisk distribution. And now you can configure and reconfigure your new Incredible PBX phones from the convenience of the Incredible PBX GUI.
VitalPBX is perhaps the fastest-growing PBX offering based upon Asterisk with an installed presence in more than 100 countries worldwide. VitalPBX has generously provided a customized White Label version of Incredible PBX tailored for use with all Incredible PBX and VitalPBX custom applications. Follow this link for a free test drive!
Special Thanks to Vitelity. Vitelity is now Voyant Communications and has halted new registrations for the time being. Our special thanks to Vitelity for their unwavering financial support over many years and to the many Nerd Vittles readers who continue to enjoy the benefits of their service offerings. We will keep everyone posted on further developments.
Some Recent Nerd Vittles Articles of Interest…
- passwd-master is the PIAF utility for setting a master password for FreePBX access with the maint user account. [↩]
- status is the PIAF utility program that displays the current status of most major applications running on your server. [↩]
- Mapping a port on your firewall to a private IP address unblocks certain Internet packets and allows them to pass through your firewall directly to an IP device "inside" your firewall for further processing. [↩]
- reboot is the Linux command for restarting your server. It’s functionally equivalent to shutdown -r now. [↩]
It’s Orgasmatron 5.1: The Ultimate Asterisk Kitchen Sink
For those that want a turnkey Asterisk® VoIP PBX with every bell and whistle, today is your very lucky day. This tutorial will walk you through every step. In less than an hour, you'll have your very own, fully functional Asterisk PBX. No Linux skills are required for this setup. There's no charge for any outbound call made to any number in the U.S. or Canada. And inbound calls are free as well.
News Flash: Incredible PBX 4.0 is now available with FreePBX 2.10 support!
Coming January 19: Incredible PBX 11 & Incredible Fax for Asterisk 11 and FreePBX 2.11
New Asterisk Security Model. Orgasmatron 5.1 has an all-new design which is intended to let you run an absolutely secure Asterisk PBX in your home from behind a secure firewall with NO INBOUND PORTS exposed to the Internet. So long as your router, Google Voice, and SIPgate passwords are secure, you can sleep like a baby. Today's Magic uses SIPgate as an intermediate SIP provider for Google Voice to set up free outbound Google Voice calls in the U.S. and Canada. Remember that Google Voice actually places two calls to connect you to your destination. First, you get a call back. And then the party you're calling is connected. The SIPgate trunk is used by Google Voice to call you back so the inbound SIPgate call is free. We handle all of the interconnection magic with Asterisk transparently so your calls appear to be processed as if you were using a standard telephone to dial out. Just remember not to use extension 75 in Asterisk for your personal conferences!
Because we register your SIP connection with SIPgate permanently, there is no need to open the SIP or IAX Internet ports on your router. In short, your SIP connection with SIPgate works just as if you were using a browser behind a firewall. The return port will automatically be mapped by your NAT-based router. Hence, no security worries! We, of course, do recommend that you sign up with Vitelity so you have an alternate communications vehicle in the event of a problem with your free service. Vitelity also can provide 911 emergency service for your home or home office. You can save a little money while supporting the PBX in a Flash project by using the links at the end of this article.
Kitchen Sink Inventory. No kitchen is complete without an inventory. So, for those that are wondering what's included in the Orgasmatron 5.1 build, here's a feature list of the components you get in addition to the base PBX in a Flash build with Asterisk 1.4, FreePBX 2.6, and Apache, SendMail, MySQL, PHP, phpMyAdmin, IPtables Linux firewall, Fail2Ban, and WebMin. A2Billing, Cepstral, Hamachi VPN, and Mondo Backups are optional and may be installed using the scripts that are provided.
- A2Billing (/root/nv/install-a2billing)
- Amazon S3
- AsteriDex
- CallerID Superfecta (FreePBX Module)
- CallWho for Asterisk
- Cepstral TTS (/root/nv/install-cepstral.sh)
- Preconfigured Email That Works with SendMail
- Extensions (16 preconfigured)
- Fax Module using nvFax
- FONmail
- FreePBX Backups
- Gizmo5 (Free Calls to Gizmo5 users worldwide: 1747xxxxxxx*1089)
- Google Voice (preconfigured)
- Hamachi VPN (/root/nv/install-hamachi.x)
- Hotel-Style Wakeup Calls (FreePBX Module)
- ISN: FreeNum SIP Calling from Any Phone
- MeetMe Conference Bridge (just dial C-O-N-F)
- Mondo Full System Backups (/root/nv/install-diskbackup.x)
- NewsClips from Yahoo
- ODBC Database Support
- Reminders by Phone and Web
- SIP URI Outbound Calling (call any SIP URI worldwide for free)
- TeleYapper
- Tide Reports with xTide
- Trunk Lister Script (/root/nv/trunks.sh)
- Trunks (Vitelity, Fonica, SIPgate, and ENUM)
- Twitter Interface (Make Free Calls and Send SMS Messages)
- Weather by Airport Code
- Weather by ZIP Code
- Worldwide Weather
- Zaptel Updater (/root/nv/zaptel-update.sh)
Prerequisites. Here's what you'll need to get started:
- Broadband Internet connection
- Rock-solid NAT router/firewall. Recommend: $35 dLink WBR-2310
- $200 PC on which to run PBX in a Flash or a Proxmox Virtual Machine
- Free Google Voice account (HINT: Under $2 on eBay)
- Free SIPgateOne residential account (Use cell to get SMS invite)
Learn First. Install Second. Even though the installation process is now a No-Brainer, you are well-advised to do some reading before you begin. VoIP PBX systems have become a favorite target of the hackers and crackers around the world and, unless you have an unlimited bank account, you need to take some precautions to protect your phone bill. Start by reading our Primer on Asterisk Security. Then read our PBX in a Flash and VPN in a Flash knols. If you're still not asleep, there's loads of additional documentation on the PBX in a Flash documentation web site.
Today's Drill. The installation process is straight-forward. Just don't skip any steps. In a nutshell, here are the 6 Steps to Free Calling and an incredibly versatile, preconfigured Asterisk PBX:
1. Configure SIPgate and Google Voice for Orgasmatron 5.1
2. Install the latest version of PBX in a Flash
3. Run the Orgasmatron 5.1 Installer
4. Enter your Google Voice and SIPgate credentials
5. Change existing passwords to secure your system
6. Configure a softphone or SIP telephone
Configuring SIPgate. A free SIPgate One residential phone number is a key component in today's project. This allows you to receive free incoming calls on your SIPgate number. Step #1 is to request an invite at this link. You'll need to enter your U.S. cellphone number to receive the SMS message with your invitation code. Don't worry. You can erase your cellphone number from your account once it is set up. Once you receive the invite code, enter it and choose the option to set up a residential account. Next, choose a phone number and write it down. The area code really doesn't matter because Google Voice is the only one that will be calling this number after we get things set up. For now, leave your cellphone number in place so that you can receive your confirmation call from Google Voice in the next step. After that, you'll want to revisit SIPgate and remove all parallel calling numbers. Finally, click on the Settings link and write down your SIP ID and SIP Password. You'll need these in a few minutes to configure PBX in a Flash. Now place a call to your new SIPgate number and make certain that your cellphone rings before proceeding.
Configuring Google Voice. Google Voice still is by invitation only so the first thing you'll need is an invite. If you're in a hurry, then stroll over to eBay where you'll find lots of them for under $2. Once you have your invite in hand, click on the email link to set up your account. After you've chosen a telephone number, plug in your new SIPgate number as the destination for your Google Voice calls and choose Office as the Phone Type. Trust us.
Google then will place a call to your SIPgate number and ask you to enter a confirmation code that's been provided. When your cellphone rings, answer it and punch in the number. Wait for confirmation. Then hang up.
While you're still in Google Voice Settings, click on the Calls tab. Make sure your settings match these:
- Call Screening - OFF
- Call Presentation - OFF
- Caller ID (In) - Display Caller's Number
- Caller ID (Out) - Don't Change Anything
- Do Not Disturb - OFF
Click Save Changes once you adjust your settings. Under the Voicemail tab, plug in your email address so you get notified of new voicemails. Down the road, receipt of a Google Voice voicemail will be a big hint that something has come unglued on your PBX.
Now place a test call to your new Google Voice number and be sure your cellphone rings. Don't move forward until you've been able to successfully place a call to your cellphone by dialing your Google Voice number. Once this is working, revisit SIPgate and remove all parallel calling numbers including your cell number.
Installing PBX in a Flash. Now for the fun part. Here's a quick tutorial to get PBX in a Flash installed. We recommend you install the latest PIAF 1.6 beta which is virtually identical to version 1.4 except it uses CentOS 5.4 instead of CentOS 5.2. This means it works better with newer hardware including Atom-based computers and newer network cards. Download the 32-bit, PIAF 1.6 version from here, here, or here. The MD5 checksum for the file is e8a3fc96702d8aa9ecbd2a8afb934d36. Burn the ISO to a CD. Then boot your system from the installation CD and type ksalt to begin.
WARNING: This install will completely erase, repartition, and reformat ALL disks on your system! Press Ctrl-C to cancel the install.
On some systems you may get a notice that CentOS can't find the kickstart file. Just tab to OK and press Enter. Don't change the name or location of the kickstart file! This will get you going. Think of it as a CentOS 'feature'. 🙂
At the keyboard prompt, tab to OK and press Enter. At the time zone prompt, tab once, highlight your time zone, tab to OK and press Enter. At the password prompt, make up a VERY secure root password. Type it twice. Tab to OK, press Enter. Get a cup of coffee. Come back in about 5 minutes. When the system has installed CentOS, it will reboot. Remove the CD promptly. After the reboot, choose A option. Have a 10-minute cup of coffee. After installation is complete, the machine will reboot a second time. Log in as root with your new password and execute the following commands:
update-scripts
update-fixes
When prompted, change the ARI password to something really obscure. You're never going to use it! You now have a PBX in a Flash base install. On a stand-alone machine, it takes about 30 minutes. On a virtual machine, it takes about half that time.
Running the Orgasmatron 5.1 Installer. Log into your server as root and issue the following commands to run the Orgasmatron 5.1 installer:
cd /root
wget http://pbxinaflash.net/orgasmo51.x
chmod +x orgasmo51.x
./orgasmo51.x
Have another 15-minute cup of coffee. It's a great time to consider a modest donation to the Nerd Vittles project. You'll find a link at the top of the page. When the installer finishes, READ THE SCREEN!
Adding Your Credentials to PBX in a Flash. Now we're ready to insert your Google Voice credentials and SIPgate number into PBX in a Flash. You'll need four pieces of information: your 10-digit Google Voice phone number, your Google Voice account name (which is the email address you used to set up your GV account), your GV password (no spaces!), and your 11-digit SIPgate RingBack DID (beginning with a 1). Don't get the 10-digit GV number mixed up with the 11-digit SIPgate RingBack DID, or nothing will work. 🙂
While logged into your server as root, issue the following command: ./configure-gv. Check your entries carefully. If you make a typo in entering any of your data, press Ctrl-C to cancel the script and then run it again!!
Next, run passwd-master and set your FreePBX passwords to something equally secure but different from your Linux root password.
Finally, type status and press Enter. Write down the IP address of your new server. You'll need it in the next step.
Configuring FreePBX. Using a web browser, log in to FreePBX 2.6 at the following link substituting your actual IP address for ipaddress: http://ipaddress/admin. You'll be prompted for a user name (maint) and password (the one you just created with passwd-master).
When FreePBX loads, choose Setup, Trunks, sipgate. In Peer Details, replace both instances of sipID with your actual SipGate SIP ID. In Peer Details, replace sipPassword with your actual SipGate SIP Password. In Register String, replace sipID with your SipGate SIP ID, replace sipPassword with your SipGate SIP Password, and replace 3333333333 with your 10-digit SipGate Phone Number. When finished, the Register String should look something like the following:
7004484f0:B8TTW3@sipgate.com/4155201234
Click Submit Changes, Apply Configuration Changes, Continue with Reload to save your settings.
Now click Setup, Inbound Routes, gv-ringback. In DID Number, replace 3333333333 with your 10-digit SIPGate Phone Number. In CallerID Number, replace 7777777777 with your 10-digit Google Voice Number.
Click Submit, Apply Configuration Changes, Continue with Reload to save your changes.
Securing FreePBX. You're almost done. While still in FreePBX, choose each of the 16 preconfigured extensions on your new server and change the extension AND voicemail passwords. Here's the drill: Setup, Extensions, 501, Submit. After changing secret and Voicemail Password, repeat with the next extension number instead of 501. Then Apply Config Changes, Continue when you've finished with all of them.
Now change the default DISA password: Setup, DISA, DISAmain, PIN, Submit Changes, Apply Config Changes, Continue.
Whew! We recommend you reboot your server at this juncture just to be sure everything gets initialized correctly. Then all we need is a phone and you're all set.
Configuring a SIP Phone. There are hundreds of terrific SIP telephones and softphones for Asterisk-based systems. Once you get things humming along, you'll want a real SIP telephone, and you'll find lots of recommendations on Nerd Vittles. For today, let's download a terrific (free) softphone to get you started. We recommend X-Lite because there are versions for Windows, Mac, and Linux. So download your favorite from this link. Install and run X-Lite on your Desktop. At the top of the phone, click on the Down Arrow and choose SIP Account Settings, Add. Enter the following information using your actual password for extension 701 and the actual IP address of your PBX in a Flash server instead of 192.168.0.251. Click OK when finished.
Orgasmatron Test Flight. The proof is in the pudding as they say. So let's try two simple tests. First, from another phone, call your Google Voice number. Your softphone should begin ringing shortly. Answer the call and make sure you can send and receive voice on both phones. Hang up. Now let's place an outbound call. Using the softphone, dial your cellphone number. Google Voice should transparently connect you. Answer the call and make sure you can send and receive voice on both phones. If everything is working, congratulations!
Solving One-Way Audio Problems. If you experience one-way audio on some of your phone calls, you may need to adjust the settings in /etc/asterisk/sip_custom.conf. Just uncomment the first two lines by removing the semicolons. Then replace 173.15.238.123 with your public IP address, and replace 192.168.0.0 with the subnet address of your private network. Save the file and restart Asterisk with the command: amportal restart.
Choosing a VoIP Provider. For this week, we'll point you to some things to play with on your new server. Then, in the subsequent articles below, we'll cover in detail how to customize every application that's been loaded. Nothing beats free when it comes to long distance calls. But nothing lasts forever. So we'd recommend you set up another account with Vitelity using our special link below. This gives your PBX a secondary way to communicate with every telephone in the world, and it also gets you a second real phone number for your new system... so that people can call you. Here's how it works. You pay Vitelity a deposit for phone service. They then will bill you $3.99 a month for your new phone number. This $3.99 also covers the cost of unlimited inbound calls (two at a time) delivered to your PBX for the month. For outbound calls, you pay by the minute and the cost is determined by where you're calling. If you're in the U.S., outbound calls to anywhere in the U.S. are a little over a penny a minute. If you change your mind about Vitelity and want a refund of the balance in your account, all you have to do is ask.
The VoIP world is new territory for some of you. Unlike the Ma Bell days, there's really no reason not to have multiple VoIP providers especially for outbound calls. Depending upon where you are calling, calls may be cheaper using different providers for calls to different locations. So we recommend having at least two providers. Visit the PBX in a Flash Forum to get some ideas on choosing alternative providers.
Kicking the Tires. OK. That's enough tutorial for today. Let's play. Using your new softphone, begin your adventure by dialing these extensions:
- D-E-M-O - Nerd Vittles Orgasmatron Demo (running on your PBX)
- 1234*1061 - Nerd Vittles Demo via ISN FreeNum connection to NV
- 17476009082*1089 - Nerd Vittles Demo via ISN to Google/Gizmo5
- Z-I-P - Enter a five digit zip code for any U.S. weather report
- 6-1-1 - Enter a 3-character airport code for any U.S. weather report
- 5-1-1 - Get the latest news and sports headlines from Yahoo News
- T-I-D-E - Get today's tides and lunar schedule for any U.S. port
- F-A-X - Send a fax to an email address of your choice
- 4-1-2 - 3-character phonebook lookup/dialer with AsteriDex
- M-A-I-L - Record a message and deliver it to any email address
- C-O-N-F - Set up a MeetMe Conference on the fly
- 1-2-3 - Schedule regular/recurring reminder (PW: 12345678)
- 2-2-2 - ODBC/Timeclock Lookup Demo (Empl No: 12345)
- 2-2-3 - ODBC/AsteriDex Lookup Demo (Code: AME)
- Dial *68 - Schedule a hotel-style wakeup call from any extension
- 1061*1061 - PBX in a Flash Support Conference Bridge
- 882*1061 - VoIP Users Conference every Friday at Noon (EST)
Homework. Your homework for this week is to do some exploring. FreePBX is a treasure trove of functionality, and the Orgasmatron build adds a bunch of additional options. See if you can find all of them. For starters, you'll want to activate CID Superfecta in FreePBX. For tips, start here in the forums. Then log into your server as root and look through the scripts added in the /root/nv folder. You'll find all sorts of goodies to keep you busy. And, be sure to check out Tweet2Dial which lets you use Twitter to make Google Voice calls, send free SMS messages, and manage your new Asterisk server. Finally, don't forget to List Yourself in Directory Assistance so everyone can find you by dialing 411. And be sure to add your new number to the Do Not Call Registry to block telemarketing calls. Or just call 888-382-1222 from your new number. Enjoy!
Support Issues. With any application as sophisticated as this one, you're bound to have questions. Blog comments are a terrible place to handle support issues although we welcome general comments about our articles and software. If you have particular support issues, we encourage you to get actively involved in the PBX in a Flash Forums. It's the best Asterisk tech support site in the business, and it's all free! We maintain a thread with the latest Patches for Orgasmatron 5.1. Please have a look. Unlike some forums, ours is extremely friendly and is supported by literally hundreds of Asterisk gurus and thousands of ordinary users just like you. So you won't have to wait long for an answer to your questions.
Upgrading Previous Orgasmatron V Installs. The question we hear over and over is "How do I upgrade from an existing Orgasmatron V install or from an existing Asterisk system?" The short answer is you can't. But there is some good news. For those with existing Orgasmatron V installs, we think we can fix your system so that it makes calls reliably. First, be sure your sipgate and gv-incoming settings match what is shown above in this article. Second, be sure you have configured a sipgate trunk with your proper sipgate credentials. Finally, log into your server as root and issue the following commands:
cd /root
wget http://pygooglevoice.googlecode.com/files/pygooglevoice-0.5.tar.gz
tar zxvf pygooglevoice-0.5*
cd pygooglevoice-0.5
python setup.py install
cd /etc/asterisk
sed -i 's|\${RINGBACK}|\${RINGBACK} 3|' extensions_custom.conf
asterisk -rx "dialplan reload"
Early Adopter WARNING. Current downloads are bug-free as best we can tell. But, for those that installed Orgasmatron 5.1 before 2:20 PM (EST) on Saturday, 2/27/2010, a couple of issues have arisen that need to be addressed. Please visit the following link to Orgasmatron 5.1 patches and apply those applicable to your particular situation. Without these patches, a security vulnerability may exist if you expose your server to web access from the Internet and a number of dialplan errors will cause unexpected behavior. It takes less than a minute to apply all of the patches! I'm reminded of the old Wild West adage: "You can always tell the pioneers by the arrows in their back."
Originally published: February 25, 2010
Need help with Asterisk? Visit the PBX in a Flash Forum.
Or Try the New, Free PBX in a Flash Conference Bridge.
whos.amung.us If you're wondering what your fellow man is reading on Nerd Vittles these days, wonder no more. Visit our new whos.amung.us statistical web site and check out what's happening. It's a terrific resource both for us and for you.
Special Thanks to Our Generous Sponsors
FULL DISCLOSURE: ClearlyIP, Skyetel, Vitelity, DigitalOcean, Vultr, VoIP.ms, 3CX, Sangoma, TelecomsXchange and VitalPBX have provided financial support to Nerd Vittles and our open source projects through advertising, referral revenue, and/or merchandise. As an Amazon Associate and Best Buy Affiliate, we also earn from qualifying purchases. We’ve chosen these providers not the other way around. Our decisions are based upon their corporate reputation and the quality of their offerings and pricing. Our recommendations regarding technology are reached without regard to financial compensation except in situations in which comparable products at comparable pricing are available from multiple sources. In this limited case, we support our sponsors because our sponsors support us.
BOGO Bonaza: Enjoy state-of-the-art VoIP service with a $10 credit and half-price SIP service on up to $500 of Skyetel trunking with free number porting when you fund your Skyetel account. No limits on number of simultaneous calls. Quadruple data center redundancy. $25 monthly minimum spend required. Tutorial and sign up details are here.
The lynchpin of Incredible PBX 2020 and beyond is ClearlyIP components which bring management of FreePBX modules and SIP phone integration to a level never before available with any other Asterisk distribution. And now you can configure and reconfigure your new Incredible PBX phones from the convenience of the Incredible PBX GUI.
VitalPBX is perhaps the fastest-growing PBX offering based upon Asterisk with an installed presence in more than 100 countries worldwide. VitalPBX has generously provided a customized White Label version of Incredible PBX tailored for use with all Incredible PBX and VitalPBX custom applications. Follow this link for a free test drive!
Special Thanks to Vitelity. Vitelity is now Voyant Communications and has halted new registrations for the time being. Our special thanks to Vitelity for their unwavering financial support over many years and to the many Nerd Vittles readers who continue to enjoy the benefits of their service offerings. We will keep everyone posted on further developments.
Some Recent Nerd Vittles Articles of Interest...
Tweet2Dial: Free Google Voice Calling & SMS with Twitter
To celebrate the New Year, it seemed only fitting to bring Google Voice calling out of the cloud and into our favorite social hangout. For our special New Year's project, we're pleased to introduce Tweet2Dial. It lets you use Twitter or your favorite Twitter client to make free outbound calls through Google Voice to anyone in the United States or Canada. Just send a Direct Message to your new Twitter account and, in less than a minute, your phone will ring connecting you to the person's phone number you specified in your Twitter message. In addition, you also can send SMS messages to anyone with an SMS-capable device in the U.S. and Canada. All of this magic is managed on your existing Asterisk® server or almost any Linux server or Mac. There's no Asterisk overhead to process the calls and SMS messages because Asterisk isn't required! But, to start 2010 off on the right foot, we've included a little bonus at the end of this article for all the Asterisk administrators in the house. If you happen to be using an Asterisk server, you now can manage it from Twitter with Tweet2Dial, too.
For those with cellphone plans that let you designate certain numbers for free, unlimited calling (such as Sprint, AT&T, Verizon, and T-Mobile), adding your Google Voice number to your preferred number list will mean that all of your Tweet2Dial-originated cellphone calls to anyone and everyone throughout the U.S. and Canada will now also be totally free with no impact on your bucket of call minutes.
Yes, we know Jajah is working on something similar for Twitter. But you have to be invited to participate in Jajah's beta (we didn't make the cut!), free calls are limited to two minutes, and both parties have to have a Twitter account which doesn't work too well for calling grandma. So why put up with all the limitations and restrictions of Jajah when you can do it yourself?
There's been some tech chatter that the procedure we've outlined below is complicated. If you can paint by number or bake cookies from the back of a Nestle's bag, trust me. You can handle this! Getting a Mac or a Linux server set up to support Tweet2Dial only takes a minute or two. So ignore the trade rags. Some of them can barely read. 🙂
If you've already gone through our Google Voice tutorial which enables free Google Voice calling on your Asterisk server, or if you've installed our all-in-one Orgasmatron V build on your Asterisk server, or if you have a Mac or you've built your own Linux server without Asterisk, there's no need to wait for Jajah and no need to limit your calls to two minutes or to those with Twitter accounts! You can call anyone in the United States or Canada right now, talk as long as you like, and do it all for free with Tweet2Dial, Twitter, and Google Voice! If you're a Windows user, check out the Google Voice Dialer for Windows.
Prerequisites. To get started, you can use your Asterisk server configured for Google Voice as we've outlined above. We won't actually be using Asterisk to place the calls, but our previous tutorials get your server properly set up with Google Voice and the latest, awesomest1 pygooglevoice to support Tweet2Dial. Any of the Asterisk aggregations such as PBX in a Flash will work great.
If you don't have a PBX in a Flash server with Google Voice already configured, shame on you! Just kidding. Actually, any recent CentOS or Fedora Linux server will work just as well today. Log into your server as root. Run rpm -q python to make sure you have at least Python 2.4 installed on your system. If not, run: yum update python. Then execute the following commands:
cd /root
yum install python-setuptools
easy_install simplejson
wget http://pygooglevoice.googlecode.com/files/pygooglevoice-0.5.tar.gz
tar zxvf pygooglevoice*
cd pygooglevoice-0.5
python setup.py install
Tweet2Dial also will run just fine on any Mac of recent vintage. We've actually tested it with Snow Leopard. Basically, to get Python and Apache set up properly, you have to enable root access, switch to root user access with su in Terminal, activate PHP support in Apache, turn on Web Sharing in System Preferences->Sharing, run easy_install simplejson as root to install simplejson (the Python Setup Tools already are in place!), using a browser download pygooglevoice to your Downloads folder, untar it as root in Terminal with the same command as above, and then while still logged into Terminal as root, go to the Downloads/pygooglevoice-0.5 folder and run the following command: python setup.py install. The only variations in the Tweet2Dial setup will be the storage location for Tweet2Dial (there is no root folder on a Mac) and the methodology for setting up the crontab entry (HINT: we'll run crontab -e to add a crontab entry since there is no /etc/crontab file). Just follow along using the Mac-specific instructions below for details, and everything will work swimmingly.
To test whether your server is properly configured for Tweet2Dial, log in as root and type: gvoice. You should be prompted for an email address. If so, press Ctrl-C to exit. You're ready to roll. If not, pygooglevoice has not been properly installed on your server.
You'll obviously need a Google Voice account. Request an invite here or just post a brilliant comment below, and one might magically appear in your inbox. Configure your Google Voice account with all the phone numbers from which you want to place outbound calls. One of these numbers will already be the go-between number for Google Voice and your PBX in a Flash server (IPkall or SIPgate) if you've followed our previous tutorials. Now simply add additional numbers that you want to use to place outbound Google Voice calls. This would include numbers such as your cellphone, your vacation home, and your direct-dial office number. You do not need to enable them for ringing when inbound calls arrive on your GV number.
For today's project, you'll also need a new Twitter account even if you already have one. Why? Because you can't send a Direct Message to yourself with Twitter. So we'll use your primary Twitter account to send Direct Messages with dialing instructions to your secondary Twitter account. Then we'll use Tweet2Dial to poll your secondary account and retrieve the dialing instructions to actually place the outbound calls with pygooglevoice through your server. It sounds harder than it actually is. Honest! Assuming you already have Google Voice running on your Asterisk server, you'll be tweeting away in 10 minutes. If you have a current Linux server, add an extra 2 minutes to install pygooglevoice using the steps above.
Usage Considerations. Before someone asks, let's address Question #1. Can others send messages to my Twitter account in order to make outbound calls through my server using Google Voice? And the answer is yes and no. We're going to configure your new secondary Twitter account with Protect My Tweets enabled. This means you have to approve friends and also become their friend before they could send a Direct Message to your secondary Twitter account. So, yes, if you approve, any Twitter user could theoretically place calls using your Twitter secondary account. For the average reader, we wouldn't recommend it for a couple of reasons. Here's why.
Google Voice only lets you link a handful of phone numbers to your GV account. So, for your friends to be able to place calls using your GV credentials, you'd have to forfeit one of your allotted quota of numbers for each person... or their phone would never ring to place the outbound calls. Yours unfortunately would! Remember, Google Voice always places two calls to complete a connection: one to you (using one of the phone numbers defined in your GV account) and one to the person with whom you wish to speak.
The other reason for not opening this up to other callers is that Google Voice limits your account to one outbound call at a time. If others are using Twitter to make calls using your GV credentials, it means you can't. And there's no mechanism for easily identifying when a call already is in progress. So our recommendation is to keep your secondary Twitter account private and set up Following and Follower linkage only with your primary Twitter account. This will mean that Direct Messages to your secondary Twitter account can only originate from your primary Twitter account. You can still place outbound calls to anybody, but others can't!
Having said all of that, we've designed Tweet2Dial so that you can allow others to use your secondary Twitter account to place Google Voice calls using their own GV credentials. This saves them the aggravation of setting all of this up, but it means they have to trust you enough to share their Google Voice credentials. After all, what are friends for? 😉 At the end of this article, we'll walk you through how to do this if you really have the urge. We would hasten to add that the actual processing load on your server is virtually zero so don't be deterred by performance concerns. Pygooglevoice sends the calling instructions to Google Voice, and then your server is completely out of the call loop. We've still limited outbound call setup to one call per minute, but these calls do not have any impact on Asterisk resources and only very minimal impact on your server. The only drawback to hosting Tweet2Dial for your friends is that, if five simultaneous Twitter messages are sitting in the queue, it would mean the last call request won't be processed until about 5 minutes after the Twitter message was sent. But, unless you have a bunch of extremely chatty friends, call request congestion shouldn't be a problem.
One final word of caution. Twitter currently permits a maximum of 150 Twitter API calls per hour per account. There is some good news. Within the next few weeks, this limit will be increased to 1500 per hour, but it hasn't happened yet. This application is designed to poll your secondary Twitter account once a minute to retrieve and then discard your oldest, existing Direct Message. So it uses 120 of your allotted 150 API calls per hour to work its magic. You are well advised NOT to run any third-party Twitter applications with this secondary Twitter account, or you will quickly exceed the current connection limitation. When the API limit is reached, it means none of your pending call requests would be processed until the next hour rolls around... at least until Twitter raises this connection limit. Once Twitter raises the API limit, we may revisit our code and eliminate the current one call per minute limitation. So stay tuned!
Creating A Secondary Twitter Account. First, let's get your secondary Twitter account set up. Go to twitter.com and create a new account with a very secure password! You must enter a different email address than the one used for your primary account. Use one you can actually access! Log into your new account and choose Settings. Scroll down to Protect my tweets and check the box by clicking on it. Save your settings. NOTE: This check box is critically important. It keeps the entire world from being able to access your server! There are other layers in the security model, but this one is VERY IMPORTANT so verify it twice! Now log back into your primary account. Then goto http://twitter.com/SecondaryAccountName and request access. You'll get a message that your request for access has been sent. Log out and back into your secondary account once again. Authorize your primary account name as a Follower. Now log out and back into your Primary Account. We'll use it to send a Direct Message to your secondary account in a few minutes.
Installation and Configuration. To install Tweet2Dial, log into your server as root and issue the following commands:
cd /root
wget http://pbxinaflash.net/source/twitter/tweet2dial.tgz
tar zxvf tweet2dial.tgz
rm tweet2dial.tgz
If you're doing this on a Mac, there is no wget application and no root folder so you'll need to download tweet2dial.tgz with your browser. Save it to your Downloads folder. Then open a Terminal window and execute this command:
tar zxvf Downloads/tweet2dial.tgz
Now let's configure the application:
nano -w tweet2dial.php
At the top of the file, you'll see the following lines:
// Your SECONDARY Twitter account username and password
$username = "TwitterUsername";
$password = "TwitterPassword";// Authorized Twitter users with corresponding GV credentials go below
$user['twitname'][1]="YourPrimaryTwitterUsername";
$user['gvemail'][1]="YourGoogleVoiceEmailAddress@gmail.com";
$user['gvpass'][1]="YourGoogleVoicePassword";
$user['gvcall'][1]="6781234567";// *** Leave everything below this line alone. 🙂
Begin by entering your secondary Twitter name and password by replacing TwitterUsername and TwitterPassword with your actual credentials. Be careful here. Capitalization matters! If you set up your Twitter username as gvNerdUno, don't enter gvnerduno! Now move down to the four $user entries. The first is your primary Twitter account name. Replace YourPrimaryTwitterUsername with your actual Twitter account name. Again be careful of capitalization! Next, enter the login email address for your Google Voice account replacing YourGoogleVoiceEmailAddress@gmail.com. Next, enter your Google Voice password replacing YourGoogleVoicePassword. Finally, enter one of the 10-digit ringback numbers you've configured in your Google Voice account by replacing 6781234567. Do NOT use the one that's reserved for use by Asterisk! This is the number that will be called by default whenever you place an outbound call with Twitter. You'll have the option of overriding it, but this saves your having to enter both a destination phone number and a callback number each time you wish to place a call. Be sure to preserve the quotes around each of the entries. Once you've double-checked all of your entries for typos, save your changes: Ctrl-X, Y, then Enter.
Tweet2Dial Test Drive. Now that everything is set up, let's place a test call to be sure everything is working. Log into your primary Twitter account. Click on Direct Messages. Choose your secondary Twitter account from the pulldown menu. In the block below Send a Direct Message, enter a 10-digit number in the U.S. or Canada that's different from your default callback number. Then click the Send button. It's that simple! Once Twitter tells you the message has been sent, log into your Asterisk server and execute the following commands.
cd /root
./tweet2dial.php
If you're on a Mac, just open a Terminal window and type ./tweet2dial.php. In either case, you should get a response indicating that your call has been placed, and your default phone number should begin to ring. When you answer it, Google Voice will place a call to the 10-digit number that you entered in your Twitter direct message above.
Now, just for fun, run Tweet2Dial again: ./tweet2dial.php. If everything is working properly, you will see the following message: Nothing to do.
Finally, assuming you have configured another callback number in Google Voice that is close at hand and not your Asterisk callback number, send another Twitter direct message with the following syntax: 8439876543:6781234567 where 8439876543 is the 10-digit number of someone you wish to call and 6781234567 is a 10-digit ringback number already set up in your Google Voice account. Once the message has been sent, run Tweet2Dial again from the command prompt.
When you're sure everything is working reliably, add the following entry to the bottom of /etc/crontab unless you're using a Mac. This will run the application once a minute around the clock looking for incoming Twitter messages:
* * * * * root /root/tweet2dial.php > /dev/null
If you're running this on a Mac, add an entry to your crontab like this. From the Terminal window, run: crontab -e. Once the vi editor opens, type:
* * * * * /users/youracct/tweet2dial.php
Substitute the name of your Mac account for youracct. Then press the Esc key followed by :wq. Check your work by typing: crontab -l. Your entry should look like this:
* * * * * /users/youracct/tweet2dial.php
Sending SMS Messages with Twitter. To send SMS messages using Twitter, you'll use the same scenario outlined above to place free phone calls. Just send a direct message to your secondary Twitter account. Only those that you have authorized as friends can send direct messages to this account so it's as secure as you want it to be. The syntax for an SMS message looks like this where 6781234567 is the cellphone or Google Voice number of the SMS recipient:
SMS:6781234567:Here is a sample SMS message
Any replies to an SMS message which you send using Twitter will be forwarded to the email address that you used to set up your Google Voice account.
For Whiz Kids Only. Now let's say you want to let your spouse use her Twitter account to place calls using her very own Google Voice credentials. First, you need to authorize her as a follower in your secondary Twitter Account. Second, you need to add a new block of code in tweet2dial.php that looks like the following. Place it immediately below the existing $user entries in the file:
$user['twitname'][2]="SpousePrimaryTwitterUsername";
$user['gvemail'][2]="SpouseGoogleVoiceEmailAddress@gmail.com";
$user['gvpass'][2]="SpouseGoogleVoicePassword";
$user['gvcall'][2]="6781234567";// *** Leave everything below this line alone. 🙂
Notice that the only change is this array subset is numbered [2] while the original was numbered [1]. You can add as many as you like so long as you increment this number and provide the credentials for each user. Now you have your own little Jajah-like sandbox, and it's absolutely free.
For Asterisk Administrators Only. Want to manage your Asterisk server from Twitter? There's an app for that. We promised you a New Year's bonus so here it is. First, read our last article which explains how to manage your Asterisk server using email messages and the Asterisk CLI. Now you can do exactly the same thing using Twitter direct messages. The only Twitter user that can do this on your server is the Twitter account name you specified in the #1 $user slot above. So you don't have to worry about your pals trashing your Asterisk server if you give them privileges with Tweet2Dial. The syntax for issuing CLI commands using Tweet2Dial looks like this:
CLI: database show cidname 8437978000
Just be sure Direct Messages from your primary Twitter account begin with CLI in all CAPS followed by a colon, a space, and then the desired CLI command. That's all there is to it. You'll get a confirmation Direct Message in your main Twitter account once the command has been executed assuming you have established Following and Follower linkage between your primary and secondary Twitter accounts. Test sending DMs in both directions to double-check it. And if you've enabled email delivery for Direct Messages in your Twitter configuration, you'll get an email confirmation as well. Because of Twitter's 140 character limitation, some commands such as help don't provide all of the output you normally would receive from the CLI. You'll only get the last line. Aside from that, the CLI functionality is identical to interacting directly with the Asterisk CLI and the email implementation we outlined previously. Here's the CLI response:
Before you can use the CLI interface in Tweet2Dial, you have to enable it. Edit tweet2dial.php and change $CLIenable=false to $CLIenable=true. And, yes, we understand there are some of you that don't trust Twitter to keep your commands secure. Well, first of all, in order to penetrate your Asterisk server, someone would have to send a Twitter Direct Message from your primary Twitter account. So they'd need your password and they'd need to know the syntax for Asterisk CLI commands AND the syntax for sending them via Twitter. But, there's always a Cracker Rapper2 somewhere. Right? So we've also built a password into the system at your server's end so you can sleep more comfortably. The default password is CLI. But feel free to change it to anything you like. Just edit tweet2dial.php and find this line: $CLIpword = "CLI";. Replace CLI (between the quotes only!) with whatever password you'd like. After saving your changes, you'll need to adjust your Twitter messages accordingly. For example, if you changed your password to FooBar, then your future Twitter CLI command syntax would look like this: FooBar: help. Enjoy!
Special Thanks. As Nerd Vittles prepares to celebrate its Fifth Birthday, we want to take a moment to thank those that have made Nerd Vittles and the PBX in a Flash project possible. Without the generous financial support of Vitelity and Google's AdSense program plus the unwavering support of our hosting providers who provide free downloads of PBX in a Flash around the globe, all of what we do would be much more difficult and expensive! It's not too late for you to kick in a nickel or two as well if a fleeting moment of generosity should strike. 😉 There's a Donate button at the top of the page. Finally, we want to thank Digium® for their continuing support of the Asterisk project and their generous contribution of hardware to the PBX in a Flash development team during 2009. Happy New Year everybody!
Need help with Asterisk? Visit the PBX in a Flash Forum.
Or Try the New, Free PBX in a Flash Conference Bridge.
whos.amung.us If you're wondering what your fellow man is reading on Nerd Vittles these days, wonder no more. Visit our new whos.amung.us statistical web site and check out what's happening. It's a terrific resource both for us and for you.
Special Thanks to Our Generous Sponsors
FULL DISCLOSURE: ClearlyIP, Skyetel, Vitelity, DigitalOcean, Vultr, VoIP.ms, 3CX, Sangoma, TelecomsXchange and VitalPBX have provided financial support to Nerd Vittles and our open source projects through advertising, referral revenue, and/or merchandise. As an Amazon Associate and Best Buy Affiliate, we also earn from qualifying purchases. We’ve chosen these providers not the other way around. Our decisions are based upon their corporate reputation and the quality of their offerings and pricing. Our recommendations regarding technology are reached without regard to financial compensation except in situations in which comparable products at comparable pricing are available from multiple sources. In this limited case, we support our sponsors because our sponsors support us.
BOGO Bonaza: Enjoy state-of-the-art VoIP service with a $10 credit and half-price SIP service on up to $500 of Skyetel trunking with free number porting when you fund your Skyetel account. No limits on number of simultaneous calls. Quadruple data center redundancy. $25 monthly minimum spend required. Tutorial and sign up details are here.
The lynchpin of Incredible PBX 2020 and beyond is ClearlyIP components which bring management of FreePBX modules and SIP phone integration to a level never before available with any other Asterisk distribution. And now you can configure and reconfigure your new Incredible PBX phones from the convenience of the Incredible PBX GUI.
VitalPBX is perhaps the fastest-growing PBX offering based upon Asterisk with an installed presence in more than 100 countries worldwide. VitalPBX has generously provided a customized White Label version of Incredible PBX tailored for use with all Incredible PBX and VitalPBX custom applications. Follow this link for a free test drive!
Special Thanks to Vitelity. Vitelity is now Voyant Communications and has halted new registrations for the time being. Our special thanks to Vitelity for their unwavering financial support over many years and to the many Nerd Vittles readers who continue to enjoy the benefits of their service offerings. We will keep everyone posted on further developments.
Some Recent Nerd Vittles Articles of Interest...
Free U.S. & Canada Calls: Google Voice Dialer for Windows
There now are a number of ways to make free calls to anyone in the U.S. and Canada using Google Voice without having to jump through the hoops of calling into your voicemail and having Google Voice call you back. There’s our Asterisk® implementation using pygooglevoice which lets you transparently place calls through Google Voice using any phone connected to your PBX in a Flash system. You also can set up a Sip Sorcery account and make free calls through that interface using a SIP phone. And now there’s Dogface05’s stand-alone Dialer for Windows that lets you place calls from the Windows command line in seconds. Because this is such a simple alternative, everyone should add it to their Windows toolkit. Here’s how.
Prerequisites. You’ll obviously need a Google Voice account. If you don’t have one, just register for an invite. Next, you’ll need a phone number to use for placing the outbound calls. And, finally, you’ll need to download and install Dogface05’s dialer on your Windows system.
Google Voice Setup. Log into your Google Voice account and click Settings, Phones, Add Another Phone. Add the area code and phone number of the phone you’ll be using to place calls and mark it as an Office phone. You’ll have to go through Google’s confirmation drill to successfully register the number with Google Voice. After the number is confirmed, be sure there’s a check mark beside this Google Voice destination so that incoming calls to your GV number will be routed to this number.
While you’re still in the Google Voice Setup, click on the General tab. Uncheck Enable Call Screening. Turn Call Presentation Off. And set CallerID to Display Caller’s Number. Finally, uncheck Do Not Disturb. Now click the Save Changes button.
Dialer Setup for Windows. From your Windows machine, open a browser and download the Google Voice dialer to your Desktop. Unzip the downloaded file and drag gvdial.exe to your \windows directory so that it’s in your path.
Placing a Call. Let’s first make sure everything is working properly. Open a command prompt window from the Windows Desktop and enter a dialing command using the following syntax:
gvdial username password destination ani [phonetype]
where:
- username = your Google Voice email address
- password = your Google Voice password
- destination = 10-digit number of person to call
- ani = your 10-digit phone number registered with Google Voice
- phonetype = 3
The phonetype is actually optional and can be ignored unless you happen to be using a Gizmo number in which case it needs to be 7. Never enter the brackets. That merely signifies that the entry is optional.
Assuming your registered email address with Google Voice is joe@gmail.com, your password is secret, the number you wish to call is 6781234567, and your number is 4049876543, the dial string should look like this:
gvdial joe@gmail.com secret 6781234567 4049876543
Your phone should ring at this point, and Google Voice will complete the outbound call to 678-123-4567.
Creating Speed Dial Batch Files. Using Notepad, you now can create batch files for frequently dialed numbers. For example, the entry above could be saved in a batch file called joe.bat. Then simply create a desktop icon for Joe and link it to joe.bat. Double-click on the Joe icon whenever you wish to place a call to Joe. Here’s how the batch file might look:
echo off
cls
gvdial joe@gmail.com secret 6781234567 4049876543
echo Press ENTER key after the called party answers.
pause
Surfing the Google Wave. We’ve got a dozen Google Wave invites to give away during the next week. Just post a comment on any Nerd Vittles article, and we’ll put your name in the hat. Be sure to provide a Gmail address with your comment as this is required to take advantage of the Google Wave Preview. Here’s a sample for you to try once you have Google Wave credentials:
Need help with Asterisk? Visit the PBX in a Flash Forum.
Or Try the New, Free PBX in a Flash Conference Bridge.
whos.amung.us If you’re wondering what your fellow man is reading on Nerd Vittles these days, wonder no more. Visit our new whos.amung.us statistical web site and check out what’s happening. It’s a terrific resource both for us and for you.
Special Thanks to Our Generous Sponsors
FULL DISCLOSURE: ClearlyIP, Skyetel, Vitelity, DigitalOcean, Vultr, VoIP.ms, 3CX, Sangoma, TelecomsXchange and VitalPBX have provided financial support to Nerd Vittles and our open source projects through advertising, referral revenue, and/or merchandise. As an Amazon Associate and Best Buy Affiliate, we also earn from qualifying purchases. We’ve chosen these providers not the other way around. Our decisions are based upon their corporate reputation and the quality of their offerings and pricing. Our recommendations regarding technology are reached without regard to financial compensation except in situations in which comparable products at comparable pricing are available from multiple sources. In this limited case, we support our sponsors because our sponsors support us.
BOGO Bonaza: Enjoy state-of-the-art VoIP service with a $10 credit and half-price SIP service on up to $500 of Skyetel trunking with free number porting when you fund your Skyetel account. No limits on number of simultaneous calls. Quadruple data center redundancy. $25 monthly minimum spend required. Tutorial and sign up details are here.
The lynchpin of Incredible PBX 2020 and beyond is ClearlyIP components which bring management of FreePBX modules and SIP phone integration to a level never before available with any other Asterisk distribution. And now you can configure and reconfigure your new Incredible PBX phones from the convenience of the Incredible PBX GUI.
VitalPBX is perhaps the fastest-growing PBX offering based upon Asterisk with an installed presence in more than 100 countries worldwide. VitalPBX has generously provided a customized White Label version of Incredible PBX tailored for use with all Incredible PBX and VitalPBX custom applications. Follow this link for a free test drive!
Special Thanks to Vitelity. Vitelity is now Voyant Communications and has halted new registrations for the time being. Our special thanks to Vitelity for their unwavering financial support over many years and to the many Nerd Vittles readers who continue to enjoy the benefits of their service offerings. We will keep everyone posted on further developments.
Some Recent Nerd Vittles Articles of Interest…
Introducing the Orgasmatron V, Google Voice Edition
It's been an interesting couple of weeks watching many of our readers flock to Google Voice in order to make free calls in the U.S. and Canada. The only problem with our Google Voice solution was the skill set required to get everything humming along as it should. For those new to the Asterisk® world, it only made sense to create a special installer that would build an Instant PBX.
Check Out the Latest! The Incredible PBX
Coming January 19: Incredible PBX 11 & Incredible Fax for Asterisk 11 and FreePBX 2.11
In putting this together, we couldn't help noticing the dilemma posed on the new FreePBX web site: "Looking for Phone Service? We can't quite give you the phone service for the same price (free) as the PBX..." Well, maybe they can't, but we certainly can thanks to our friends at Google Voice. So today we're pleased to introduce the first Truly Free™ Asterisk PBX. If you've mastered slice-and-bake cookies, you'll have no trouble with today's recipe.
Welcome to the Orgasmatron V Installer, the wonderscript that lets you create a turnkey Asterisk system with free U.S. and Canada calling through Google Voice in less than 15 minutes! When you're finished you'll have a PBX in a Flash system with every bell and whistle on the planet. Not only is the PBX absolutely free but so are all of your outbound and incoming calls throughout the United States and Canada. All you'll need is an Internet connection and any garden variety PC that's less than 3 years old. Or you can splurge and buy yourself a new Atom-based PC or NetBook and have a state-of-the-art PBX that may last you close to a decade. While you'll still need to change a few passwords and plug in some phones, the Orgasmatron V build reduces the Asterisk learning curve to almost zero. Out of the box, email works. Faxing works. ENUM works. And free calling in the U.S. and Canada works. Just plug in your Google Voice credentials, and you can start placing calls to every phone in the U.S. and Canada for free in just a few minutes.
For those that are wondering what's included in the Orgasmatron V build, here's a feature list of the components you get in addition to the base PBX in a Flash build with Asterisk 1.4, FreePBX 2.5, and Apache, SendMail, MySQL, PHP, phpMyAdmin, IPtables Linux firewall, Fail2Ban, and WebMin:
- AsteriDex
- CallerID Superfecta (FreePBX Module)
- CallWho for Asterisk
- Cepstral TTS (installer script only)
- Email That Works with SendMail
- Extensions (15 preconfigured)
- Fax Module using nvFax
- FONmail
- FreePBX Backups
- Gizmo5 (FreePBX Module)
- Google Voice (preconfigured)
- Hamachi VPN (installer script only)
- Hotel-Style Wakeup Calls (FreePBX Module)
- ISN: Free SIP Calling from Any Phone
- MeetMe Conferences
- Mondo Full System Backups
- NewsClips from Yahoo
- ODBC Database Support
- Reminders by Phone and Web
- SIP URI support (fax, mothership, e164, nv-demo, gv-ringback)
- TeleYapper
- Tide Reports with xTide
- Trunk Lister Script
- Trunks (Vitelity, Fonica, Gizmo, ENUM, Remote Peer)
- Weather by Airport Code
- Weather by ZIP Code
- Worldwide Weather
- Zaptel Updater (script only)
Getting Started. Even though the installation process is now a No-Brainer, you are well-advised to do some reading before you begin. VoIP PBX systems have become a favorite target of the hackers and crackers around the world and, unless you have an unlimited bank account, you need to take some precautions to protect your phone bill. Start by reading our Primer on Asterisk Security. Then read our PBX in a Flash and VPN in a Flash knols. If you're still not asleep, there's loads of additional documentation on the PBX in a Flash documentation web site.
Prerequisites. You obviously still need a free Google Voice account. If you don't have one, you can request an invite here. At last report, it's only taking a few days from application to invite which is really great news. Don't use a space in your Google Voice password! Once you have a Google Voice account and phone number (Google has reserved several million of them so... not to worry!), then you'll need a DID that provides unlimited, free incoming calls. We'll use it as your Google Voice RingBack DID and will explain all of this after we get your PBX up and running. We'd recommend a free IPkall or SIPgate DID, but we'll get to that.
Installation. Here's a quick tutorial to get you going. First, install the 32-bit, Asterisk 1.4 version of PBX in a Flash. Boot your system from the installation CD and type ksalt to begin. As your machine reboots, remove the CD and choose option A to load the most stable payload. When the install completes, reboot your system once again and login as root with the password you chose when you built your system. Now issue the following commands to bring your system current and protect your system passwords: update-scripts, update-fixes, passwd-master. You now have a PBX in a Flash base install. On a stand-alone machine, it takes about 30 minutes. On a virtual machine, it takes about half that time.
Now you're ready to run the Orgasmatron V Installer. While still logged into your new server as root, issue the following commands:
cd /root
wget http://pbxinaflash.net/orgasmatron/orgasmatron-gv.x
chmod +x orgasmatron-gv.x
./orgasmatron-gv.x
reboot
Stick around while the install script is running. Parts of it are interactive. For now, choose the Flite option when you're prompted twice for your text-to-speech preferences. That way you'll have a working system when you're finished. Once the Orgasmatron V installer script is finished, type status and write down the IP address of your server. You'll need it in the next step to log into FreePBX.
If you'd prefer to pick and choose the apps to install, use this fully-interactive installer instead:
cd /root
wget http://pbxinaflash.net/orgasmatron/orgasmatron-interactive.x
chmod +x orgasmatron-interactive.x
./orgasmatron-interactive.x
reboot
Using a web browser, open FreePBX on your new server with a command like this (substituting the IP address you wrote down above). When prompted for your account name, type maint and use the password you assigned when running passwd-master above:
http://192.168.0.123/admin/
You're NOT done yet!
These next three steps are important. They get all of the FreePBX modules installed and then restore the FreePBX backup set that's at the heart of the Orgasmatron build. Just follow along here. If you're using the new OpenVZ template for PBX in a Flash, start at step 3 and then complete step 1 and 2. Otherwise...
1. Choose Module Admin, Check for Updates online, Upgrade All, Process, Confirm, Return, Apply Config Changes, Continue.
2. Choose Module Admin, Check for Updates online, Download All, Process, Confirm, Return, Apply Config Changes, Continue.
3. Click on the Tools tab and choose Backup & Restore, Restore, RightNow, and select the .tar.gz file that is displayed. Then choose Restore Entire Backup Set, OK, Apply Config Changes, and Continue.
Securing Your System. You're almost done. We always like to reboot the server just to make sure nothing got lost in the shuffle. When the reboot is finished, log into FreePBX with a browser again. Before you do anything else, choose each of the 16 preconfigured extensions on your new server and change the extension AND voicemail passwords. Here's the drill: Setup, Extensions, 501, Submit after changing secret and Voicemail Password. Repeat with the next extension number instead of 501. Then Apply Config Changes, Continue when you've finished with all of them.
Now let's change the default DISA password: Setup, DISA, DISAmain, PIN, Submit Changes, Apply Config Changes, Continue. Whew! Your system now is relatively secure. Follow the steps in the tutorials we recommended, and you're ready to experiment. Plug in a couple of SIP phones or softphones and configure them using the available extensions (701-715) together with the secrets for those extensions. Place a test call between the extensions to make sure you have a working PBX. Now we're ready to add the pieces so that people from outside your system can call you and so that you can call them as well.
Setting Up An IPkall RingBack DID. Step #1 is obtaining a free DID which will be used to handle RingBack calls from Google Voice. If you're new to Google Voice, here's a quick primer. Whenever you place an outbound call through Google Voice, GV actually places two calls. It returns your call to a number you designate as your RingBack number, and then GV places the call to the destination number you've chosen. We will transparently merge the two calls together behind the scenes so the caller will think it's a "normal" long distance call. But, before Google Voice calling will work with Asterisk, you'll need another DID (in addition to your new Google Voice number) to transparently handle these RingBack calls into Asterisk.
Shown above is the IPkall request form to sign up for a free DID. Make your form look like the one above but change 3 pieces of information: (1) the SIP Proxy which is the public IP address of your Asterisk server or its fully-qualified domain name, (2) a working Email Address which will be used to confirm your request for a free DID, and (3) a password to protect your DID at IPkall. Leave the other entries the way they're shown, especially the SIP Phone Number, gv-ringback, which is preconfigured to route incoming SIP calls on your new PBX to any phones connected to extensions 701-715. Once you have confirmed your request by email, you will be assigned a phone number. Assuming you've already connected a phone to your new PBX on one of the above extensions, it should ring when you call your new IPkall number. Don't proceed until you get this working because it must be functional before you can complete the set up of your Google Voice account.
Setting Up A SIPgate RingBack DID. If you elect to use a SIPgate DID, the process is a bit more complicated. Once you've registered for a free DID on their site, you'll get an email with your credentials. You then will need to create a new trunk using FreePBX with the following entries replacing SIP-ID and SIP-Password with your actual credentials. Use sipgate for the Trunk Name and fill in the following in the Outgoing Settings section of the form:
type=peer
username=SIP-ID
fromuser=SIP-ID
secret=SIP-Password
context=from-trunk
host=sipgate.com
fromdomain=sipgate.com
insecure=very
caninvite=no
canreinvite=no
nat=no
disallow=all
allow=ulaw&alaw
Leave the Incoming Settings blank, and enter the following Registration String using your actual credentials:
Save your entries and then create an Inbound Route called sipgate. Enter your 10-digit SIPgate number in the DID Number field and choose Ring Group: 700 as the Destination for the inbound calls to this number. Reload your Asterisk dialplan when prompted to do so. Connect a phone to an extension on your PBX and be sure the phone rings when you call your new SIPgate DID number before proceeding.
Google Voice Setup. Once you get your RingBack DID set up on your Asterisk system, we need to configure your new Google Voice account. Log into your GV account and click Settings, Phones, Add Another Phone. Add the area code and phone number of your RingBack DID. Be sure a phone is connected to one of the existing extensions (701-715) on your PBX since you have to go through Google's confirmation drill to successfully register the number with GV. After the DID is confirmed, be sure there's a check mark beside this Google Voice destination so that incoming calls to your GV number will be routed to your Asterisk server.
While you're still in the Google Voice Setup, click on the General tab. Uncheck Enable Call Screening. Turn Call Presentation Off. And set CallerID to Display Caller's Number. Remember NOT to include a space in your Google Voice password! Finally, uncheck Do Not Disturb. Now click the Save Changes button.
Adding Your GV Credentials to PBX in a Flash. Now we're ready to insert your Google Voice credentials into PBX in a Flash. You'll need four pieces of information: your 10-digit Google Voice phone number, your Google Voice account name (which is the email address you used to set up your GV account), your GV password (no spaces!), and your 11-digit RingBack DID (beginning with a 1) from either IPkall or SIPgate. Don't get the 10-digit GV number mixed up with the 11-digit RingBack DID, or nothing will work. 🙂 Now log back into your server as root and issue the following commands. Check your entries carefully. If you make a typo in entering any of your data, press Ctrl-C to cancel the script and then run it again!!
cd /root
wget http://pbxinaflash.net/orgasmatron/configure-gv
chmod +x configure-gv
./configure-gv
Updating pyGoogleVoice. Since this article was initially released, Google has made some changes in the way Google Voice processes incoming calls. To address this, you'll need to update the version of pyGoogleVoice installed with this build. While still logged into your server as root, issue the following commands:
cd /root
wget http://pygooglevoice.googlecode.com/files/pygooglevoice-0.5.tar.gz
tar zxvf pygooglevoice-0.5*
cd pygooglevoice-0.5
python setup.py install
Modifying Your RingBack Inbound Route. The last step in the setup process is to reroute your gv-ringback incoming route so that it points to a custom context to process your Google Voice ringback calls transparently. Log back into FreePBX with a web browser and choose Setup, Inbound Routes, gv-ringback. Change the Destination for these calls to Custom Destinations: Custom GV-Park. If you're using SIPgate instead of IPkall, be sure to change the other settings to look like this:
Description: gv-ringback
DIDNumber: *Your 10-digit-SIPgate-Number*
CallerId: *Your 10-digit-Google-Voice-Number*
Save your changes by clicking the Submit button and then reload your dialplan when prompted.
Choosing a VoIP Provider. For this week, we'll point you to some things to play with on your new server. Then, in the subsequent articles below, we'll cover in detail how to customize every application that's been loaded. Nothing beats free when it comes to long distance calls. But nothing lasts forever. So we'd recommend you set up another account with Vitelity using our special link below. This gives your PBX a secondary way to communicate with every telephone in the world, and it also gets you a second real phone number for your new system... so that people can call you. Here's how it works. You pay Vitelity a deposit for phone service. They then will bill you $3.99 a month for your new phone number. This $3.99 also covers the cost of unlimited inbound calls (two at a time) delivered to your PBX for the month. For outbound calls, you pay by the minute and the cost is determined by where you're calling. If you're in the U.S., outbound calls to anywhere in the U.S. are a little over a penny a minute. If you change your mind about Vitelity and want a refund of the balance in your account, all you have to do is ask.
The VoIP world is new territory for some of you. Unlike the Ma Bell days, there's really no reason not to have multiple VoIP providers especially for outbound calls. Depending upon where you are calling, calls may be cheaper using different providers for calls to different locations. So we recommend having at least two providers. Visit the PBX in a Flash Forum to get some ideas on choosing alternative providers.
Kicking the Tires. OK. That's enough tutorial for today. Let's play. After you've connected a phone to your new system, begin your adventure by dialing these 10 numbers:
- D-E-M-O - Check out the Nerd Vittles Orgasmatron Demo
- Z-I-P - Enter a five digit zip code for any U.S. weather report
- 6-1-1 - Enter a 3-character airport code for any U.S. weather report
- 5-1-1 - Get the latest news and sports headlines from Yahoo News
- T-I-D-E - Get today's tides and lunar schedule for any U.S. port
- F-A-X - Send a fax to an email address of your choice
- 4-1-2 - 3-character phonebook lookup/dialer with AsteriDex
- M-A-I-L - Record a message and deliver it to any email address
- C-O-N-F - Set up a MeetMe Conference on the fly
- 1-2-3 - Schedule a regular or recurring phone reminder
- Dial *68 - Schedule a hotel-style wakeup call on any extension
Google Voice Speed Dials. For frequently called numbers, you can add speed dials by inserting entries in the [from-internal-custom] context of extensions_custom.conf in the /etc/asterisk folder that look like the example below where 333 is the speed dial number and 6781234567 is the area code and number to call. Be sure to reload your Asterisk dialplan to activate them.
exten => 333,1,Dial(local/6781234567@custom-gv,300)
Congratulations! You now have what we hope will be flawless and free U.S. calling on your Asterisk system using Google Voice. No gimmicks, no strings, no cost. Enjoy!
Finally, one additional word of caution. Both Google Voice and this call design are set up for a single call at a time. There are no safeguards to prevent multiple calls, but that may violate the Google Voice terms of service.
Homework. Your homework for this week is to do some exploring. FreePBX is a treasure trove of functionality, and the Orgasmatron build adds a bunch of additional options. See if you can find all of them. Then log into your server as root and look through the scripts added in the /root/nv folder. You'll find all sorts of goodies to keep you busy. Enjoy!
whos.amung.us If you're wondering what your fellow man is reading on Nerd Vittles these days, wonder no more. Visit our new whos.amung.us statistical web site and check out what's happening. It's a terrific resource both for us and for you.
Need help with Asterisk? Visit the PBX in a Flash Forum.
Or Try the New, Free PBX in a Flash Conference Bridge.
Special Thanks to Our Generous Sponsors
FULL DISCLOSURE: ClearlyIP, Skyetel, Vitelity, DigitalOcean, Vultr, VoIP.ms, 3CX, Sangoma, TelecomsXchange and VitalPBX have provided financial support to Nerd Vittles and our open source projects through advertising, referral revenue, and/or merchandise. As an Amazon Associate and Best Buy Affiliate, we also earn from qualifying purchases. We’ve chosen these providers not the other way around. Our decisions are based upon their corporate reputation and the quality of their offerings and pricing. Our recommendations regarding technology are reached without regard to financial compensation except in situations in which comparable products at comparable pricing are available from multiple sources. In this limited case, we support our sponsors because our sponsors support us.
BOGO Bonaza: Enjoy state-of-the-art VoIP service with a $10 credit and half-price SIP service on up to $500 of Skyetel trunking with free number porting when you fund your Skyetel account. No limits on number of simultaneous calls. Quadruple data center redundancy. $25 monthly minimum spend required. Tutorial and sign up details are here.
The lynchpin of Incredible PBX 2020 and beyond is ClearlyIP components which bring management of FreePBX modules and SIP phone integration to a level never before available with any other Asterisk distribution. And now you can configure and reconfigure your new Incredible PBX phones from the convenience of the Incredible PBX GUI.
VitalPBX is perhaps the fastest-growing PBX offering based upon Asterisk with an installed presence in more than 100 countries worldwide. VitalPBX has generously provided a customized White Label version of Incredible PBX tailored for use with all Incredible PBX and VitalPBX custom applications. Follow this link for a free test drive!
Special Thanks to Vitelity. Vitelity is now Voyant Communications and has halted new registrations for the time being. Our special thanks to Vitelity for their unwavering financial support over many years and to the many Nerd Vittles readers who continue to enjoy the benefits of their service offerings. We will keep everyone posted on further developments.
Some Recent Nerd Vittles Articles of Interest...
Asterisk on Steroids: The Orgasmatron Installer, Part IV
If you haven't installed our two dozen turnkey Asterisk® applications in under 5 minutes, it's not too late! We recently introduced our Orgasmatron Installer for PBX in a Flash. And today we wrap up the tutorials with Part IV in this series. Faxing and email work out of the box. More than a dozen extensions and a number of hosting provider trunks are preconfigured. Delivery of CallerID names with numbers is available from over a dozen providers of your choice. ODBC database connectivity is now painless. And the Flite text-to-speech engine is preconfigured with Cepstral TTS only a few keystrokes away. Also included are FreePBX 2.5, Apache, SendMail, MySQL, PHP, phpMyAdmin, IPtables Linux firewall, Fail2Ban, and WebMin. Here's the complete list of what 5 minutes of your time brings to this one-of-a-kind Asterisk server platform:
- AsteriDex
- CallerID Superfecta (FreePBX Module)
- CallWho for Asterisk
- Cepstral TTS (installer script only)
- Email That Works with SendMail
- Extensions (15 preconfigured)
- Fax Module using nvFax
- FONmail
- FreePBX Backups
- Gizmo5 (FreePBX Module)
- Hamachi VPN (installer script only)
- Hotel-Style Wakeup Calls (FreePBX Module)
- Interconnecting Asterisk Servers with IAX
- MeetMe Conferences on the Fly
- Mondo Full System Backups
- NewsClips from Yahoo
- ODBC Database Support
- Reminders by Phone and Web
- SIP URI support (fax, mothership, e164, nv-demo)
- TeleYapper
- Tide Reports with xTide
- Trunk Lister Script
- Trunks (Vitelity, Fonica, Gizmo, ENUM, Remote Peer)
- Weather by Airport Code
- Weather by ZIP Code
- Worldwide Weather
- Zaptel Updater (script only)
In Part II of this series, we walked you through securing your system and configuring a few of the major applications: AsteriDex, CallerID Superfecta, CallWho, Cepstral, and Emailing with SendMail. In Part III, we covered faxing with nvFax, FONmail, FreePBX backups, the Gizmo5 FreePBX module, setup of Hamachi VPNs, interconnecting Asterisk servers with IAX, setting up on-the-fly conferences, ODBC database implementation, and telephone reminders using a phone or web browser. Today, we'll cover the remaining applications in the Orgasmatron build: Hotel-Style Wakeup Calls, Mondo Full System Backups, Yahoo Newsclips, SIP URI support, TeleYapper, Tide Reports with xTide, Weather Reports by telephone, and how to use the Zaptel updater.
Hotel-Style Wakeup Calls. This application was specifically designed for FreePBX and does just what the name implies. From any phone connected to your PBX, dial *68 and follow the prompts using 4-digit numbers for the desired wake up call times. Then wait for your wakeup call. Doesn’t get much easier than that. There are a number of configuration options which can be set by logging into FreePBX and choosing Admin, Tools, Wakeup Calls. Operator mode lets you specify extensions which can set up wakeup calls for any extension. You also can define the ring time, number of retries, and the time to wait between retries. For the complete tutorial, see this Nerd Vittles article.
Mondo Full System Backups. One of the age-old limitations of Asterisk@Home and now trixbox was the inability to make a full disk backup of your PBX so that it could be restored after a catastrophic event, man-made or otherwise. Tom King solved all of that with his implementation of Mondo Rescue for PBX in a Flash systems. There are numerous options for storing the backups. We prefer using a USB flash drive and rotating between two of them. With falling prices of flash drives, you now can purchase 8GB and 16GB models for peanuts. To enable the backup system, insert a USB flash drive on your PBX. Log into your server as root and type dmesg. Scan through the contents of the display until you find the device name for your USB flash drive. The listing should look something like this:
usb-storage: waiting for device to settle before scanning
Vendor: Kingston Model: DataTraveler 2.0 Rev: PMAP
Type: Direct-Access ANSI SCSI revision: 00
SCSI device sdc: 15874048 512-byte hdwr sectors (8128 MB)
sdc: Write Protect is off
sdc: Mode Sense: 23 00 00 00
sdc: assuming drive cache: write through
SCSI device sdc: 15874048 512-byte hdwr sectors (8128 MB)
sdc: Write Protect is off
sdc: Mode Sense: 23 00 00 00
sdc: assuming drive cache: write through
sdc: sdc1
sd 8:0:0:0: Attached scsi removable disk sdc
sd 8:0:0:0: Attached scsi generic sg2 type 0
usb-storage: device scan complete
In the listing above, it would tell you that your device is named sdc1. In Mondo parlance, this device name would be /dev/sdc1. Your mileage may vary obviously depending upon the type server you are using. Don't guess! Otherwise, you may end up inadvertently formatting (aka erasing) your primary hard disk since this is the first step in the Mondo backup process.
Once you are positive that you have the correct device name for your flash drive, edit /etc/asterisk/disk-backup.conf. Change line 11 to the following: CONFIGURED="1". Then change line 50 to the device name for your flash drive: USBDEVICENAME="/dev/sdc1". Save your changes. Now run a test backup to be sure everything is working properly: /etc/cron.weekly/disk-backup.cron.
You can review the contents of your flash drive by making a script with the following commands. Be sure to make the script executable and use the actual device name for your flash drive:
#!/bin/bash
mount -t vfat /dev/sdc1 /mnt/usbmondo
df /mnt/usbmondo
echo " "
ls -all -h /mnt/usbmondo
umount /mnt/usbmondo
Be aware that Mondo backups may not properly restore on some of the new Atom-based netbooks. A patch has been released by the Mondo development team which we currently are testing. This newer version also supports creation of bootable flash drives as part of the backup process. Stay tuned.
Yahoo Newsclips for Asterisk. This was one of the first Nerd Vittles text-to-speech (TTS) applications for Asterisk, and it remains one of the most popular. To use it, dial 511 from any phone on your Asterisk system. The default setup gives a choice of numerous Yahoo news and sports feeds which will be read to you over the telephone. For detailed setup instructions, see the original Nerd Vittles article. The application, by default, uses the Flite text-to-speech engine. If you have purchased Cepstral, you can easily reconfigure Newsclips for Asterisk to use Cepstral as the TTS engine. Just edit nv-news.php in /var/lib/asterisk/agi-bin and change the $ttspick entry in line 16 from 0 to 1.
Asterisk SIP URI Support. Direct SIP-to-SIP communications is one of the most exciting emerging trends in Internet telephony. Within 10 years, Gartner predicts that 50% of all phone traffic will be pure IP from end to end. You can start using it with your new server to make free phone calls today. All that's really needed is a SIP URI for your server. SIP URI's work just like email addresses except they tell phone systems where to deliver calls over the Internet. The Orgasmatron build preconfigures a number of SIP URI's for you including mothership, e164, and fax. This means that anyone can contact you by "dialing" your SIP URI using either the IP address of your server or a fully-qualified domain name that points to that IP address. A typical SIP URI would look like this: mothership@192.77.210.14. This tells the calling system to route the call to the mothership context on the Asterisk server living at 192.77.210.14. You also can contact the demo applications on your server by dialing nv-demo@192.77.210.24.
The next logical step with SIP URI's is to interconnect your server with a traditional POTS phone number using your SIP URI. You can sign up for a free incoming phone number at ipkall.com. For your account type, choose SIP. For your SIP phone number, enter: mothership. For your SIP proxy, enter the fully-qualified domain name (FQDN) or IP address of your server, e.g. mypbx.dyndns.org. Choose a password and enter your real email address, and ipkall.com will beam you a Washington state phone number within a day or so. Just use it at least once a month, and you've got free inbound calls using a real telephone number forever. You can do much the same thing with Gizmo by signing up for an account using the FreePBX web interface included in the Orgasmatron build. You can't beat the price! For more detail on SIP proxies, see this Nerd Vittles article. To add your new number to directory assistance listings in the United States, just go to listyourself.net and sign up.
The other great use for SIP-to-SIP communications is to register yourself in the ENUM system so that other Asterisk and FreeSwitch systems can translate your plain old telephone number into a SIP URI and place the call SIP-to-SIP without any communications charges. To sign up for the service, go to both 164.org and enumplus.org. It only takes a minute. ENUM is implemented for default outbound calls by default on Orgasmatron builds. This means your server will attempt to place the call for free through ENUM before using your other outbound trunks for which you have to pay a fee to a provider.
TeleYapper. This application is an automated message broadcasting service commonly known as a call blasting or phone blasting system. It is licensed for non-commercial use including the following: to send prerecorded phone messages for neighborhood association announcements, school closings, tornado alerts, little league practices, fund raisers, municipal government reminders, and for just about any other non-commercial purpose. TeleYapper is simple to use. Dial extension M-S-G (674) on your Asterisk system and enter your password. You'll be prompted to record a message. Next you enter the group number for delivery of your TeleYapper message. The system will tell you how many recipients are in the group you have chosen. You then can begin the phone blasting session, or you can choose to resend messages to failed calls on a previous try to the same group. TeleYapper keeps track of which calls were successfully delivered and which were not so that follow-up calls can be placed. For detailed instructions on how to add entries to your TeleYapper database, see this Best of Nerd Vittles article.
Tide Reports with xTide. As the name implies, the xTide for Asterisk TTS application lets you retrieve tide and lunar information about any U.S. port by dialing 8433 (T-I-D-E) from any phone connected to your Asterisk system.
The default port setting for xTide for Asterisk is Pawleys Island, South Carolina. You can change this to meet your needs. There are three steps to reconfiguring the desired port city. First, identify a port city supported by xTide. Second, test the port city you have chosen using the tide application. Third, configure xTide for Asterisk for your desired port city. To identify whether a particular port city is supported by xTide, visit this link and search for the city you wish to use. Once you have verified that your desired location is supported, test it manually with the tide application that was installed as part of xTide for Asterisk. Log into your server as root and issue the command: tide -l "portcity", e.g. tide -l "boston".
Once you have verified that you get a tide report for your chosen city, simply reconfigure xTide for Asterisk to support that destination. While still logged in as root, edit /etc/asterisk/xtide.conf and change the contents to your new city. Be careful NOT to add any blank lines to the config file!
SITE="pawleys"
SITENAME="Pawlees Island, South Carolina"
You'll note that the spelling of the SITENAME was modified slightly to assist the TTS application. Complete details for configuring xTide for Asterisk as well as instructions for changing to Cepstral TTS support are included in the Best of Nerd Vittles article.
Weather Reports by Phone. Three separate TTS weather applications are included in the Orgasmatron build. You can retrieve weather forecasts by zip code and airport code as well as by international city. Dial Z-I-P and enter a 5-digit zip code. Or dial 6-1-1 and enter a three-character U.S. airport code. Or dial 6-1-2 and choose the international city preconfigured in your system. By default, the Worldwide Weather Forecasts for Asterisk application comes preconfigured to support 10 cities around the world. Here's the list:
0 - Tokyo
1 - Washington
2 - Berlin
3 - Florence
4 - Gough Island
5 - London
6 - Moscow
7 - Sydney
8 - Toronto
9 - Zurich
For details on changing the city codes as well as tips in using the other weather applications, see the Best of Nerd Vittles articles.
Miscellaneous Scripts. For your convenience, a script is included to update your zaptel setup whenever you add a card to your system or install a new Linux kernel. You'll find the script in the /root/nv folder on your server: zaptel-update.sh. There's also a script to install A2Billing: install-a2billing. There's also a detailed FAQ to walk you through configuring the Amazon S3 cloud computing service to work with PBX in a Flash as an off-site storage facility: s3cmd.faq. For configuration tips on configuring S3, see this Nerd Vittles article.
CallerID Superfecta 2.1. It's only been 10 days since the new FreePBX-based CallerID Superfecta was released. But wait until you see this new version. The original release of this application included 3 data sources. This one has 15 including the first Canadian source! There are too many new features to mention all of them here, but here's the short list:
1. Added Local Caching to MySQL
2. Retention of Valid Caller ID Name if Provided by Trunk
3. "Automatic" Support for sources requiring authentication
4. Post CID retrieval processing for source scripts
5. Altered whocalled behavior to return textual CallerID info
6. Support for sources with CID and SPAM rankings
7. Enhanced script error reporting in debug interface
8. "Report Back" capability to populate Data sources
You'll have to install this yourself unless you downloaded the Orgasmatron Installer (v1.4) after 5 pm EDT yesterday, May 24. The install instructions are included in the release notes, and it only takes a few seconds. Here's a link to the writeup on the new module on the PBX in a Flash Forum.
Unrelated But Still Interesting. If you're fascinated by all discoveries relating to words beginning with the letters o-r-g-a-s-m, be sure to check out Mary Roach's recent Ted Talk. Enjoy. 🙂
Read Part I and download the software.
Need help with Asterisk? Visit the PBX in a Flash Forum.
Or Try the New, Free PBX in a Flash Conference Bridge.
Twitter Magic. If you haven't noticed the right margin of Nerd Vittles lately, we've added a new link to our Twitter feed. If you explore a little, you'll discover that the user interface now brings you instant access to every Twitter feed from the convenience of the Nerd Vittles desktop. Enjoy!
whos.amung.us If you're wondering what your fellow man is reading on Nerd Vittles these days, wonder no more. Visit our new whos.amung.us statistical web site and check out what's happening. It's a terrific resource both for us and for you.
Special Thanks to Our Generous Sponsors
FULL DISCLOSURE: ClearlyIP, Skyetel, Vitelity, DigitalOcean, Vultr, VoIP.ms, 3CX, Sangoma, TelecomsXchange and VitalPBX have provided financial support to Nerd Vittles and our open source projects through advertising, referral revenue, and/or merchandise. As an Amazon Associate and Best Buy Affiliate, we also earn from qualifying purchases. We’ve chosen these providers not the other way around. Our decisions are based upon their corporate reputation and the quality of their offerings and pricing. Our recommendations regarding technology are reached without regard to financial compensation except in situations in which comparable products at comparable pricing are available from multiple sources. In this limited case, we support our sponsors because our sponsors support us.
BOGO Bonaza: Enjoy state-of-the-art VoIP service with a $10 credit and half-price SIP service on up to $500 of Skyetel trunking with free number porting when you fund your Skyetel account. No limits on number of simultaneous calls. Quadruple data center redundancy. $25 monthly minimum spend required. Tutorial and sign up details are here.
The lynchpin of Incredible PBX 2020 and beyond is ClearlyIP components which bring management of FreePBX modules and SIP phone integration to a level never before available with any other Asterisk distribution. And now you can configure and reconfigure your new Incredible PBX phones from the convenience of the Incredible PBX GUI.
VitalPBX is perhaps the fastest-growing PBX offering based upon Asterisk with an installed presence in more than 100 countries worldwide. VitalPBX has generously provided a customized White Label version of Incredible PBX tailored for use with all Incredible PBX and VitalPBX custom applications. Follow this link for a free test drive!
Special Thanks to Vitelity. Vitelity is now Voyant Communications and has halted new registrations for the time being. Our special thanks to Vitelity for their unwavering financial support over many years and to the many Nerd Vittles readers who continue to enjoy the benefits of their service offerings. We will keep everyone posted on further developments.
Some Recent Nerd Vittles Articles of Interest...