Tuesday, February 12, 2013

Wifi Calling for Nexus 4

I did a lot of research before I bought my shiny new Nexus 4, and settled on T-Mobile for my service provider. Unlimited everything, good coverage, cheaper than I'd been paying for Sprint. The only problem is I'm in a dead spot at home. I can play Pandora on my phone over my car speakers all the way to the garage, but then I get a lot of "no service" messages on my phone when I'm in the house. Calls are iffy, and drop regularly. T-Mobile isn't supporting wifi calling on the Nexus 4 like they do on some other phones, but that's okay since I figured out how to do it anyway -- for free.

The short version is get a free SIP account, get a free phone number for that account, set up Google Voice to forward to that number, then set up your phone to forward to the Google Voice number when it's out of service. This lets me get incoming calls over the house wifi with voice mail. There's an app for outgoing calls, more on that below.

Here are the details:

1. Get a free sip account from getonsip.com. SIP is a protocol for making voice calls over the internet. I looked at a number of similar services, this one seems to be the best free service.
    - I got two accounts so I can call myself for testing.
    - installed jitsi on my laptop, it's a softphone app so I can call from one acct to the other. Jitsi is available for download on the getonsip.com website. There is an AUR package for Arch.

2. In the Nexus, hit the phone button, then menu, then settings. Scroll down to Internet Call Settings, click Accounts. Add an account for the getonsip.com (This is the server name that people have asked about a few times in the comments.) account using the details from the email you'll receive from getonsip. Expand the advanced options and enter the authentication user name (will start with  getonsip_ plus your username) and the outbound proxy address (will be sip.onsip.com for your getonsip account). Check the "Receive incoming calls" checkbox when you want to receive calls. This might be a good use for a tectile, or even better, I set up a task in Tasker to do this automatically based on my location.

3. Get a free phone number from IPKall.com. This gives your getonsip account a real phone number. The area code will be one of the 4 Washington State area codes. You might have to try several times to find a number acceptable to Google Voice since it seems a lot of numbers are assigned in Google Voice but are probably abandoned. IPKall numbers need to be used at least once every 30 days or they will cancel your account. It might be a good idea to set a reminder in your calendar to call it once a month if you don't get a lot of calls this way, or set up Tasker to do it automatically so you'll never have to remember to do it.

4. Get a Google Voice account. Have Google assign a number, DO NOT port your existing number as this will terminate your existing phone plan with your cell service provider. You can probably choose a number in your local area. Just follow the instructions, it's pretty easy to set up. This step really isn't necessary, but it gives you voice mail in case you miss a call.

5. In Google Voice, go to Settings, then the Phone tab. Add the free number from IPKall and verify it. Uncheck your cell phone number that you used when setting up Google Voice.

6. In the phone, set up conditional call forwarding so if the phone is unreachable, as in no service, the call will be forwarded to Google Voice:
  • hit the phone button, menu, settings
  • scroll down to call forwarding
  • choose unreachable
  • enter the google voice number (if you skipped 4 and 5, just put in the IPKall number)
  • update
6. Now when the phone is unreachable, T-Mobile will forward the call to the Google Voice number, which forwards the call to the SIP number, which then connects the call over the internet to my house wifi and to my phone. When answering a call, there will be a voice saying to press 1 to accept the call.

7. To be able to make calls, install the Bobsled phone app from the Play Store. It's from T-Mobile, but says it will work on any phone network.

Wifi calls are okay, quality is not as good as a regular call, but hey, it's free!

8 comments:

Jessica Price said...

What is server name?

Rob Cornfeld said...

Dale,
Thanks for your post about how to do a workaround for the lack of a T-Mobile specific wifi calling app for the Nexus 4. How is this working out for you? I'm dependent on wifi calling where I live and this is holding me back from purchasing the phone. Thanks again for your post.

Rob Cornfeld said...

Dale,
Thank you for your detailed post about a workaround for the lack of a t-mobile wifi app for the Nexus 4. How is it working out for you? This challenge is holding me back from replacing my current t-mobile phone with a Nexus 4 and I was wondering how it was working for you after a few months. Thanks again for the detailed post.

Waste Management University said...

Please help! I really appreciate you laying this out as a "for dummies" post, but I still can't figure it out. What do I put in the 'server' category when adding the account on my nexus? Thanks!

Waste Management University said...

What do you put in the server area when adding the account on the nexus? I need a "setting up internet calling for dummies" for dummies! Thanks for your help

Rafael said...

For some reason when I tried to change my call forwarding options I got an "unexpected network error" message on my nexus 4. maybe Tmobile is not allowing this on pre paid phones.

yellowmunch said...

thanks so much helped alot

weppekroka said...

Could you explain how to set up tasker to switch on and off the "Receive incoming calls"?