Adding SIP calls to Android - for free!
SIP is a stupid acronym. It's basically a standard way of making phone calls over the Internet. This means you can make and receive phone calls over WiFi. Here's how I got it working - for free - on Android.
By the end of this tutorial you will be able to:
- Receive calls to a new phone number, sent via WiFi to your Android handset.
- Receive calls to your existing phone number, redirected to arrive over WiFi.
Get a SIP account
Sign up for a free SIPGate Basic account. Doesn't cost you anything. You can choose a UK landline number for free as well.
You will get a username, password, and config URl.
Configure your handset
Every Android phone is different. This is how I configured my OnePlus 5T.
Phone > Settings > Call Settings > SIP accounts.
Add the details from SIPgate into your phone.
Once done, activate the "Receive incoming calls" option.
Wait
Patience, grasshopper. Before you can receive calls, SIPgate need to verify you. They'll send you a letter in the post. This letter will have a confirmation code on it. Follow the instructions to activate your account.
The letter also sets your emergency services location which is passed along with any 999 / 112 calls.
Receive a call
Once your account has been activated, use another phone to call your new SIP landline. It should automatically be routed to your Android phone. The CallerID will show up as a number, followed by @sipgate.co.uk
. Your dialler should be smart enough to pull the caller info out of your address book.
That's part 1 done! Anyone ringing your landline will get routed to your mobile via SIP. It works on WiFi, 3G, and 4G. Magic!
Routing your existing number
Distributing a new phone number is annoying. And people may not understand that ringing a landline number can be answered by a mobile. So, let's cheat!
This code will forward all calls people make to your mobile number, and redirect them to your SIP number.
**21*DESTINATION_NUMBER#
So, if your landline is 01632 960123, you'd dial this number into your regular phone dialler:
**21*+441632960123#
Anyone who rings your mobile, will be diverted to your SIP instantly. Your SIP will ring your mobile and you can chat normally.
Configuration
I wrote about call forwarding USSD codes back in 2010. Man... I'm old...
To check it has worked, dial *#21#
- you should see a confirmation message on screen.
To temporarily disable, #21#
To re-enable, *21#
Cost
Forwarding a call comes out of your mobile plan's minutes. Fine if you have an unlimited call plan, but expensive if not.
If in doubt, check with your mobile network provider.
SIPGate don't charge you for routing your calls.
Firewalls
I didn't need to change anything on my ISP's router to get this to work. It also worked over my mobile data connection.
The WiFi at your employer / cafe / aeroplane may be configured to block WiFi calling.
What's next?
There are a number of things you could do with a SIP connection.
- Route calls based on incoming phone number. Always send your boss to voicemail.
- Custom voicemail greetings. Different messages for friends, family, work.
- Block unknown numbers. A good way to reduce spam, but a pain to update.
- Audio CAPTCHA. If a caller is unknown, ask them to solve a maths puzzle before they can be put through.
- Time of day routing. After 18:00 send all work calls to voicemail.
- Send an HTTP POST every time you receive a phone call.
- Use your imagination!
Right, I'm off to play with the Sipgate.io API to see what fun things I can build.
Mike said on twitter.com:
Now this is the content I subscribe for! Have been meaning to try something like this for ages but never got past the idea stage. Now I get a how-to guide.
Mike said on twitter.com:
Shame incoming SMS isn't a feature with Sipgate.
Neil Brown said on twitter.com:
The @aaisp service isn’t free, but it offers mobile numbers with SMS handling. I use these for spam numbers, and have SMS diverted to email (but you can use https post if you want). There’s a web interface for sending SMS, and a simple curlable API.
Samathy said on social.samathy.space:
@Edent I don't think the built-in SIP client is universal to all Android phones 🙁My Umdigi Power3 claims to be stock Android 10 and the options to add another Calling Account are missing. The Google's help page seems to suggest this phone isn't stock Android (idk how it knows!) , so 🤷♀️ people's milage may vary even on phones appearing to be stock Android.https://support.google.com/phoneapp/answer/2811843?hl=en-GB Make calls over Wi-Fi - Phone app Help
𝒅𝒂𝒛𝒊𝒏𝒊𝒔𝒎 said on social.coop:
@EdentLooks nice. How have you found the battery drain from & reliability of the SIP connection when off wifi?
@edent says:
I'm stuck at home all day, so I'm never off WiFi and never far from a charger.
Andy Smith said on twitter.com:
WiFi calling requires your provider and handset to play nice together. However following @edent's lead here (shkspr.mobi/blog/2020/07/a…) It just works! For a guy who basically spends his whole working day in a giant Faraday cage with internal WiFi, this is ace. Thanks @edent!
Chris Drake says:
For reference, Sipgate have withdrawn their (free) Basic accounts for new subscribers and deleted accounts that haven't seen any traffic for 3 years (like mine).
Any suggestions for free / cheap, low-usage SIP providers for UK customers?