I currently spend two months in Mozambique, working from here over the internet (and learning Portuguese). To be able to be productive a decent internet connection isn’t enough, I need to be able to call people in Europe, and be called – without having to worry about roaming costs (my carrier would charge €4,29 per minute).
With my setup I now can be called (almost) for free on my normal mobile number, and I can call any number in the world for just 5 to 20 cents/minute. All on my iPhone, just like at home.
This is what you need:
- A VoIP number from a Voice over IP (VoIP) provider. I got mine at Sipgate.at years ago. Mine starts with 0720 (<-- Austrian number range for VoIP). In Germany you can get a normal local number from the city you live in. The number itself doesn't cost anything. Incoming calls are free, for outgoing calls top up your account with, say, €20 credit.
- A smartphone and a VoIP app. I have an iPhone and use Softphone by Acrobits (€5,49). I also tried the (free) Sipgate app, but it didn’t work well with inbound calls. (Softphone doesn’t either as it turned out but I can live with it.) Further apps that I haven’t tested include Bria, iSip and 3cx. The Android world is equally rich in SIP apps.
- A local UMTS simcard and/or WiFi access to the internet. (In the beginning I thought I’d be having great WiFi at home and poor, if any, UMTS on the go. The opposite is true. I am on Movitel, a brand new UMTS provider whose Vietnamese owners are investing $400 million in infrastructure. I appear to be the one and only user of their 3G towers as access is roaring fast.) 1GB flat on (free) prepaid sims costs 600 Mts (€17), which should be more than enough for a lot of calls. (Despite common belief voice calls aren’t too bandwidth consuming.)
- Forwarding for all calls from your usual number(s) to your new VoIP number. In my case the 0720 number range is not included within my all inclusive contract at T-Mobile Austria (a fact I luckily realized in time) so I opted for an unlimited 0720 calling package costing me €2/month flat, and then forwarded all calls to my new number.
In plain English:
When I want to call someone in Europe I start up my “Softphone” app and dial. The call is routed via the internet from my phone to my VoIP provider’s servers, where they are forwarded to the telephone networks, on relatively cheap tariffs. Small downside: The called party will not see my mobile number on their display but the VoIP number.
When someone calls me on my normal Austrian number, the call is forwarded to my VoIP number. If I am online the call is routed over the internet and UMTS to my phone, my app rings. The call is free for me (besides UMTS data costs). If I am offline the call is forwarded to my Sipgate voicemail, from where I get messages by email as .wav attachment.
For calls within Mozambique I use my new local prepaid number. For SMS to my Austrian number (SMS cannot be forward for whatever reason) I have a second phone with me, where I put my Austrian simcard in.
That’s the theory. In practice when I am called while my app is running in the background (for settings see below) the calling party will hear me but I don’t hear them. I then ask then to call again immediately. The app runs now normally and I can hear calls received. (There are probably workarounds for this problem but I fail to bother. If you know any please post them as a comment!)
Call quality varies. It is especially good on UMTS (other side sounds like next door) but I noticed some delays and occasional short pauses via slower WiFi connections.
Tips and settings:
You probably will have to fiddle around with your settings. Make sure your app runs in the background and is allowed to send push notifications. Also there are lots of different apps and (possibly cheaper) VoIP providers you could play around with to achieve better results (mine are satisfying yet not perfect). There might also be a similar Skype setup (Skype doesn’t work on SIP protocols but on their proprietary one).
Make sure to test your setup while still at home. Remember the setup works all around the world, you just need to be online. So it should work at home, too.
Screenshots from my Acrobits Softphone setting screens (might come helpful):

Making and receiving calls on your notebook:
For when I am working on my laptop I can make and receive calls over the incredibly simple (and free) Telephone app for osX. My notebook and my iPhone will ring at the same time, so I can choose. This is great for calls via headset, while working. Keeps your hands free. Also a good backup should my phone be stolen. (His Noodleness beware.) The Windows and Linux world should offer similar tools.
PS: All this is the mobile carriers’ nightmare come true, They are being reduced to mere bit pipes. No revenue besides data traffic.