Earlier this year, I had posted a hack for making free phone calls with Google Voice, Gizmo, and Asterisk. Since then, Google closed the door on inbound SIP calls and thus the hack no longer works. Fortunately a new possibility has emerged that makes it possible once again.
Nerd Vittles has put together another great hack for making free calls with Google Voice and Asterisk: Orgasmatron V, Google Voice Edition. It makes use of an Asterisk Linux distribution called PBX in a Flash. After installing PBX in a Flash, you download and run the Orgasmatron V script, and you have a fully-functional Asterisk system ready to make free calls with Google Voice.
In his instructions, NerdUno recommends using IPkall or SIPgate for a ringback number that is necessary for Orgasmatron V to work. It is actually possible and relatively easy to also use Gizmo as the ringback number, which I will explain in this post. His directions for setting up Orgasmatron V are very detailed and relatively easy to follow, so I won’t repost them here. Just follow his directions up until the part for configuring Google Voice.
First, you will want to create a Gizmo account. Once you create your Gizmo account, go to https://my.gizmo5.com and log in. Bring up the Call Forwarding tab in your account settings. Click on the Forwarding All Calls radio button under Status and click on the SIP radio button under Forward to. Set it up to forward to [email protected] where x.x.x.x is the IP address of your Asterisk server.
The next step, is to log into your Google Voice account. Log in and go to the Settings screen and click on Add another phone. Call it whatever you want, and enter in the 10 digit number. Be sure to select Gizmo as the phone type.
When You click Save, you will be prompted to verify the phone. Download and install the Gizmo client and log into your account with the Gizmo client. Click the Connect button on Google Voice to verify the Gizmo phone. When the Gizmo phone rings, answer and dial the two digit code.
Once you’ve installed PBX in a Flash, installed Orgasmatron V, set up Gizmo, set up Google Voice, you’re ready to download and run the Google Voice configuration script for Orgasmatron. Just log into your Asterisk box as root, and run the following commands at the command line:
cd /root wget http://pbxinaflash.net/orgasmatron/configure-gv chmod +x configure-gv ./configure-gv
Just follow the prompts and enter your Google Voice number (without the 1), your Google Account login credentials, and use your Gizmo number as the ringback number (be sure to include the 1 at the beginning).
Once everything is all set up with Google Voice, Gizmo, and Asterisk, you’re ready to log into an extension with a soft phone and make free calls. I highly recommend downloading X-Lite, it is probably one of the best free softphones out there. Ekiga is another pretty decent soft phone you can use, if you don’t like X-Lite.
To make and receive calls, log into extension 701 with your softphone. Use 701 as the account username and the proper password (this would be the secret for extension 701 you selected when securing Orgasmatron as suggested on Nerd Vittles). The SIP server is of course the Asterisk box. Try making an outbound phone call. You should hear a lady say she is connecting your call, then some catchy music, and eventually a ringtone.
If you are unable to make or receive calls after you’ve set everything up, it may be that your server is sitting behind a router/firewall. For it to work properly, you will need to forward port 5060 to your Asterisk box. You may have to refer to the instructions for your particular router on how to do this.
You may also run into issues if your Asterisk box does not have a static IP address. If your IP address ever changes, you will need to update the new forwarding address within Gizmo. To avoid such problems, you may want to set up an account on DynDNS.
You can download a DynDNS update client that will automatically update your IP address with DynDNS. You could download inadyn for Linux and install it on your Asterisk box. Be sure to check out the inadyn instructions to set up. If you have a Windows or Mac box on the same network as your Asterisk machine, you could always download and install your client for that computer instead of the Asterisk box. Alternatively, you could just manually update your IP address on the DynDNS website.
Once you have DynDNS set up, go back to the Call Forwarding tab in your Gizmo settings and change the SIP call foward to [email protected]_dyndns_account.dyndns.org (replacing your_dyndns_account.dyndns.org with the proper domain for your machine).
Behind the scenes, the calls are made with a Python script for making Google Voice calls. Orgasmatron V does the magic of receiving the inbound call from Google voice into a call group and automatically connecting that call to your extension. This makes it all quite seamless to the end-user making the calls.
In an effort to further reduce the complexity of this solution, I’ve put together a VirtualBox appliance for Orgasmatron V. Although Orgasmatron V is by far the easiest solution for hooking up Google Voice to Asterisk, packaging it all together as a virtual appliance makes it a little bit easier and a lot quicker. I’ll be posting about that soon, so stay tuned!