A new feature available on recent versions of iOS and on newer iPhones is called Wi-fi Calling. This feature enables you to make and receive phone calls over wi-fi if your phone’s cellular connection is weak or you have no service. Once enabled it works automatically.
This is perfect for me. I live in an AT&T weak zone. The best I get in my home is 2 bars (out of 5). I regularly drop calls and often have to stand near a window to have a decent phone conversation. This has been going on for, well, since I got my first iPhone in 2007.
Wi-fi Calling is available on T-Mobile, Sprint and, as of last Thursday, AT&T! Yeah! There is rumor of Verizon offering the feature sometime in 2015, but they have not as of this writing.
AT&T requires iOS 9 and an iPhone 6 or newer. T-Mobile and Sprint work on iOS 8 or newer and an iPhone 5 or newer.
It is not automatically enabled. However, enabling it is easy: Settings > Phone > Wi-fi Calling. Click it On and follow the prompts. It will ask you to verify your home address for calls to 911 in case they cannot triangulate your position through the normal cellular network. Once enabled it takes a few minutes to start working.
You can see if it is working by looking at the voice / data indicator in the upper left of your screen. Here it is working away on my iPhone in my home:
Apparently, it will also work with NO cell signal, like in a remote hotel with no cellular service. Connecting to the hotel wifi will allow you to make and receive phone calls.
I see no downside to this feature - go get it for yourself!