Yes, it can be done. I just spent a half hour on the phone with Xplornet and most of the time forgot i was using VOIP. This is a long way from last summer when i had to get dial-up internet because Xplornet was not working much of the time.
When i began this little project a couple of months ago, i figured that there would be a lot of tweaking, and i was right. We were on a 3 mbps down / 500 kbps up residential plan but only getting about a third of the advertised speed, so the prospects of making voice over IP work seemed dismal. However, disliking TELUS with a passion and wanting to ditch the land line (not to mention reduce phone costs by two thirds) spurred me on to the task.
Before even ordering my ATA (analog telephone adapter) i obviously had to get my internet service working much better, or there would be little hope for good VOIP. This started with some careful shopping for a new router to replace my 8-year-old D-Link. I already had to do this because the old one did not have a DHCP client. Xplornet does not mention to subscribers that their 4G satellite internet service won’t work with a router unless you either buy a fixed IP (included with business plans, but not residential), or your router has a DHCP client to handle dynamic allocation of IP addresses.
I also realized that QoS (quality of service) would be an important router feature for prioritizing different kinds of traffic on our local network – because obviously VOIP would need to have a higher priority. Many routers have simple QoS included, but i got one that will let me override specific settings. Since there are 3 computers sharing this connection, and since i may want to do things on the computer while talking on the phone, i took QoS quite seriously.
The router i ended up choosing was another D-Link, the DIR 657 media router – this because of my good experience with D-Link, despite warnings against the brand and recommendations to buy Linksys. As an added bonus this router also does DNS caching (DNS proxy), and it turned out later that i needed this.