Showing posts with label Savings. Show all posts
Showing posts with label Savings. Show all posts

22 June 2013

How to make secure, encrypted phone calls... for free

The ZRTP-capable
Groundwire app for iOS
Recent revelations have alleged wholesale governmental monitoring of phone conversations and emails.  Governments (plural) are reported to have real-time ability to access encrypted digital connections of all kinds, including Skype.  My own hypothesis, based on details in the the published allegations and known hacks of Certificate Authorities (on whose infrastructure the entire trust system of today's Internet is based), is that purloined Certificate Authority certificates are being utilized to allow inexpensive monitoring of communications transported over encrypted channels like SSL and TLS.  The key to privacy is to utilize encryption techniques which do not depend on the compromised Certificate Authority system.

VoIP is rarely encrypted at all, but that may be changing as dismayed citizens demand an end to suspicionless, warrantless surveillance.  Today, ostel.co (note: not .com) is a free/open-source project which implements the ZRTP communications-encryption technique which allows users to call each other securely and without cost over WiFi or other Internet connections.  Conference and video calls are also supported.  More info about ZRTP here.

Each participant must run a ZRTP-capable VoIP client on their computer or smartphone-- this is not something you can use a old-timey analog telephone with.  Clients are available for a variety of platforms including OS X, Windows, iOS and Android.  Some are even free!

Getting started making and receiving secure calls is simple: you sign up for an account at ostel.co and give yourself a user name.  You download the appropriate app onto your computer or smartphone and set it up to talk to your ostel.co account.  Your friends and associates do the same.  You then ring each other up using your respective user names, and validate a randomly-generated numeric code.  Pretty simple.

Documentation is sparse, to put it charitably, but here's how I got it working on OS X 10.8.4 Mountain Lion:

  • Download Jitsi, a free/open-source client capable of, among other things, telephony using ZRTP encryption.
  • Run it... or attempt to.  On later builds of OS X you may receive a message that Java 6 is required.  Well, I have Java 7 installed and enabled (it's needed for some other software I use), but this didn't seem to be acceptable to Jitsi.  With some trepidation given the security issues surrounding Java recently, I accepted the download of the older version.  There was no progress indicator, but events seemed to proceed without issue (and frankly rather quickly-- I have my doubts that Java 6 was installed at all), and eventually I was able to load and run Jitsi.  The current, recommended version of Java 7 remains intact on my system and is still my default, per the version tester at java.com.
  • Now you need to set up Jitsi to use your ostel.co account.  This is totally undocumented, but what works is to open its Preference pane and add a SIP account, specifying YourUserName@ostel.co (again, note it's not .com) and inputting your ostel.co account password.  
  • Done.

Set-up should be similar for other apps.  The only prerequisites would seem to be (1) the ability to work with generic SIP connections and (2) ZRTP compatibility.  (Be sure to select your desired audio input and output in the Preferences-- Jitsi had selected AirPlay as my default, rather than my Mac's speakers or headphones, causing some momentary confusion for me.)


[DELIGHTED UPDATE: seems the free Linphone iPhone app supports ZRTP!  Once you have installed the app and set up a username at ostel.co, just go to the app's settings and input your ostel.co username (minus the "@ostel.co" part), then your password, then "ostel.co" for the domain.  Then, in the Network settings, select Media Encryption and tick ZRTP.  Done!  This app even seems to support encrypted video.]

Now you can enjoy secure calls... or (let's have our eyes open about such things) allegedly secure calls.  Also keep in mind that the use of encryption technologies including email encryption and Tor (if detected) can spotlight you for special scrutiny and indefinite retention of your emails and other data, even if you are a U.S. citizen.

Audio quality in my testing has been excellent, clear and crisp and without echo.

31 March 2012

How to back up your Gmail and other Google stuff for safety, economy or switching

Whether you're a happy user of Gmail, Google Docs or other Google goodies, or a privacy-concerned current user considering alternatives but shackled by your stash of stuff on Google's servers, having local copies of your Google-stored possessions is valuable, wise and freeing. Loyal users can take comfort in having their data available offline on their own machines and backed up by Time Machine or whatever backup process they employ. Switchers will find their options broadened if their data is in their own hands and less subject to profiling or tracking. And those continuing with Google services can keep their service free if they periodically download their Google items onto their own computer and purge them from Google rather than paying an upcharge for exceeding the free storage threshold.

But Google doesn't make it easy to extricate your data from their grasp. After all, the more of your stuff resides on their servers, the stickier their services are for you, and the more data they have about you for targeting ads to you, and more.

Gmail poses particular difficulties for downloading your data in useful form, and it's the Google service most likely to bloom out of control, as it has for me.  But there are several ways to get your data into your own possession.

Here's how:


A) Use an email client

For downloading useful copies of all your Gmails you can in principle set up Mail.app, Thunderbird or some other email client to sluice it all down. But that takes a lot of time, and if your emails go back years you can choke those applications. I found Thunderbird prone to cataclysmic thrombosis when I tried using it to back up my out-of-control Gmail account, and even OS X Lion's fantastically-improved Mail.app labored mightily under the burden of keeping local copies of my multi-year Gmail inbox and all my label folders.  Plus, somehow my 16GB of Gmails turned into 118GB on my disk in Mail.app, due to (1) inefficient, repetitive downloading of emails in label folders, and (2) the Spotlight-searchable and Time-Machine-friendly single-email storage approach that Apple instituted several years ago.  By comparison, Thunderbird, Outlook and many other email clients use a database approach to storing emails.  This has the drawback of emails not being Spotlight-searchable, and Time Machine has to back up the whole database whenever a single email arrives, but it's space efficient.  Mail.app's approach is searchable by Spotlight and backup-friendly, but since each email is its own file, each consumes at least the file system's minimum file size, which I believe is 4kbytes.  The problem is exacerbated when your Gmail account has many labels-- and let's face it, labels are a key reason for using Gmail.  But if you're not careful (and what documentation exists on this point is pretty unclear) you can end up having multiple copies of emails bulging your disk.  Bottom line: using an email client is a Gmail-backup solution for simple and small Gmail setups only, and even then it requires lots of time, and careful setup not to make a mess of things.

B) Use a service

Backupify is another possible solution for getting hold of your Gmails (https://www.backupify.com/). It's a service-- it does the pull from Google's servers on its own machines, then sends you a .zip. The cost is low, $3 a month, and you can do a one-time snapshot for free. It looks like a great option, especially for enterprises reliant on Google's services.

C) Use a tool

CloudPull's setup is super-easy.
An even better solution for individual users and many businesses is CloudPull, an app that runs on your Mac and backs up your Google emails and documents in a format that's nicely databased but still plays well with Mail.app, your other applications and Time Machine. It's published by Golden Hill Software (http://www.goldenhillsoftware.com/) and is available for $24.99 directly from the Golden Hill site or via the Mac App Store. It'll do incremental backups of all your Google stuff, automatically, up to hourly. It maintains point-in-time snapshots for a default of 90 days. It can handle multiple Google accounts. You can select which services to back up-- Gmail, Docs, contacts, calendar, even Reader.

And since it's an app that runs on your own machine, you don't have to proffer up your passwords to a third party or run your data through anyone else's machines.  By default, it loads every time you boot your computer and will incrementally update your local store automatically.  It works great if your disk is protected by FileVault 2, too.

CloudPull really puts you back in charge of your data. Your data will no longer serve as a hostage that limits your mobility and choices. 
CloudPull lets you back up
the full gamut of Google services.

I've been using CloudPull for a few weeks to back up my Gmail account while I ponder the possibility of either switching, clearing out my stuff from Google's servers to avoid another year's storage fee, or otherwise adjusting my usage of Google's services.  CloudPull has a nice, clean, modern Mac user interface-- it was written using Apple's up-to-date Cocoa framework, is 64-bit, and requires OS X Lion. There are nice interactive pointers for setting Google options correctly for its usage. It's nice, period. Its good first impression has maintained throughout my use of it.


CloudPull stores your emails' metadata in a self-contained, space-efficient SQLite database for quick searching.  It pulls down each email's text and attachments separately in individual files for backup-friendliness.  Your label/folder format is preserved.  CloudPull provides its own fast search facility.  Or, you can export any label (folder) to a standard, Mail.app-compatible mailbox format, compatible with Spotlight.  



CloudPull can store your snapshots
for a selectable about of time.
On first run, CloudPull will ask for your Google account ID and password.  Next, you check-mark which services to download to your computer.  For Gmail, you're presented with a list of all your labels, which you can checkmark for downloading.  The download then begins, starting with CloudPull acquiring a comprehensive list of emails in your account.  CloudPull always uses a secure, SSL-encrypted connection for communications with Google.

Depending on how massive your Gmail store is, it may take time for it all to trickle down the first time.  In my case, over 300,000 emails comprising more than 16GB needed to be downloaded-- quite the severe test of CloudPull's stability!  This took three days.  It ran without a hitch, though.  I do recommend leaving it alone and resisting the temptation to play with its search facility or scrolling through its window until it's finished.  The current version (2.02) doesn't provide a lot of progress feedback, so just let it run until the little cloud icon in the menu bar indicates downloading is complete.

Interruptions are handled gracefully-- if you should restart your computer, sleep it or lose your WiFi connection, it will resume by checking with Google's servers and recommencing where it left off.

Once all is downloaded, you can tell CloudPull how often to back up your Google data.  Incremental backups take very little time.
Export any folder into a Mail.app-compatible,
Spotlight- and Time-Machine-friendly archive.



You have the option of keeping your Gmail emails in your CloudPull database or exporting them ("Restore as mailbox") to disk.  If your aim is to reduce your Gmail storage footprint or switch, you may want to export your inbox or important label folders since anything deleted from Gmail will remain in your CloudPull database for only the time you have specified for retention.  The default is 90 days, and though you can set this to "indefinite" it's probably safest to export.  
You can view your emails from within
CloudPull using its search facility
and snapshot browser.






If you haven't discovered Cover Flow for
Spotlight-searching old emails, you're in for a treat.

Though CloudPull reliably and unobtrusively copied my ridiculously overstuffed Gmail account onto my hard disk, according to the developer an update is planned/upcoming/imminent which will make handling really large archives like mine even better.  CloudPull support has been very responsive, too.

Recommended.

P.S. -- An absolutely wonderful usage totally aside from backup and switching

A few years back I was deposed in a lawsuit.  All my emails regarding the matter under litigation had been requested.  It took me a long, long time to find and collect all those emails in Outlook, which I'd been using at the time.

CloudPull combined with Gmail would have been a boon: You can create a filter in Gmail, make a label for it, and then CloudPull will automatically pull all those emails down to your machine.  Export those to a mailbox, and each will be in its own neat file.  Voila: a task that took hours and hours to satisfy a court order could be accomplished in less than ten minutes.

12 March 2012

Is Roll-Your-Own-VoIP the Best Investment Available Today?

I finally ran the numbers.

I now know what the true damages are for having cut my landline phone service and rolled-my-own Voice-over-Internet (VoIP).

My most boring blog graphic ever.
Until you look at the final number.
Yowza!
First there is the investment.  About fifty bucks for my recommended analog-telephone adaptor, the compact OBi100 or OBi110 units, available from Amazon.  These can provide telephone service to your whole house (just be sure to disconnect your landline from the phone company's drop outside your house first).  It's easy-- you can figure it out on your own, or you can follow my instructions.

Then there's the option of porting your existing phone number from your landline phone company to a VoIP wholesaler such as voip.ms, with its exceptional service, great support and dirt-cheap per-minute rates.  That's $25.  (You don't need to spend that if you're setting up a new number.)

All told, on Day Zero that adds up to a whopping $75 or so as up-front investment.  And you'll have invested maybe fifteen minutes of your time to plug it all in.  (Oh, there's the $25 you must put on-deposit when you open your VoIP service account, but that's refundable if you don't use it.)

The savings are immediate.  For us here in California, we're saving typically $35 a month versus our old landline.  And that's not counting benefits like the ability to make and receive calls cheaply via WiFi from anywhere in the world using our smartphones, or how our home is now firewalled against annoying robocallers and telemarketers, or how voip.ms optionally sends us our voicemails by email and lets us set up dedicated extensions (subaccounts) for free.  The voice quality is exceptional, and everything works just as it always did with our landline service.

And so I strapped on my MBA hat and finally ran those numbers.  I set a five year horizon, though it's almost been two years for us already, with that $35 profit rolling on without any drama, so I can't imagine a good reason to ever switch away.

I assumed a 31-day month to keep the spreadsheeting easy.  Assuming it all ends in five years, I'm seeing a 9000% annual percentage yield.  Twice, since we did this at two sites.

Not too flippin' bad.   9000% guaranteed yield in this day and age, in this economy.

After-tax!

If you know of a better investment, I urge you to email me privately straightaway, and please don't tell anybody else.





17 February 2012

The easiest Roll-Your-Own VoIP yet

Since starting this blog, I've documented many reasons why roll-your-own internet telephony is a hugely cost-saving and flexible approach for home and business use for those who don't mind a small amount of initial geek-work.  Savings versus conventional phone service and digital providers like Vonage approach 90-95%, yet the quality is at least as good and the flexibility is far superior.  So I set up my two locations' phone services using the Linksys/Cisco PAP2T-NA analog telephone adaptor, which lets me provide high-quality, dirt-cheap phone service throughout my house (after disconnecting the PacBell line) just by plugging the adaptor into a phone socket and signing up with a voice-over-internet (VoIP) wholesaler like voip.ms or Callcentric.

The PAP2T-NA has served us well, but as a product it seems to be suffering from a measure of neglect after a sequence of corporate transfers: as I understand it, the unit was first designed and built by a talented startup named Sipura, which was purchased by Linksys, which was purchased by Cisco.  In any acquisition circumstance it's common that the acquired products become the red-headed stepchildren of the acquiring company, so it's understandable that there's a sense of the PAP2T-NA looking forsaken and wide-eyed as it begs for a scrap of sustenance from its current corporate parent.  Firmware updates grow few and far between, software utilities become incompatible with advancing computers and operating systems, documentation grows suckier over time, support web pages go un-updated and are difficult to find, links expire, and so on.  All these symptoms are regrettably the case with the PAP2T-NA now.  The firmware update process, for example, requires a Windows machine (assuming you can find fresh firmware in the Linksys/Cisco labyrinth).  Mac users are out of luck unless they spin up a virtual machine as I did.  Meanwhile the setup user interface is clunky and beset by the acronym-itis that afflicts VoIP.  Fortunately, there are tutorials (such as my own) which walk you through the setup process.  But it should be easier.

So it was with considerable interest that I read about the founders of Sipura starting up a fresh new venture to build easy-to-use VoIP hardware for Everyman.  Their new company, Obihai Technology, manufactures what can be regarded as the technological and spiritual successor to the PAP2T-NA, and it offers lots of additional functionalities and service possibilities, including such service possibilities as Google Voice and their own associated calling service, OBiTalk.  They even offer apps for iOS and Android devices.

Lots of possibilities there.  Plus, the company is fully supportive of "Bring Your Own Device" (aka roll-your-own) VoIP.  Which makes their new adaptor ideal for a review here.
The OBi110 is available at Amazon

The company kindly provided their compact OBi110 adaptor for me to play with.  It's about the same size as the PAP2T-NA, meaning about the size of two packs of playing cards.  Connection could not be simpler: there's a cable to attach to your router, and a port for your phone (connected, in my case, to my home's phone wiring.)  This model has an additional port for connection to a conventional phone line if you still have phone-company service; in that case the unit will switch between both services intelligently.  The whole purpose of our VoIP adventure is to eliminate that and its monthly costs, so that port is not connected to anything in our case.

As with any device of this breed, there's an impressive array of parameters-- some might say bewildering.  Fortunately, very few of these need fiddling when setting up with a VoIP wholesaler.  I'm a happy voip.ms customer, and that company provides a simple and helpful guide to setting the very few parameters that need changing.

The OBi110's web interface is clean and sparse, and it's easy to navigate since it uses a familiar expandable-tree motif for organization.
For use with my voip.ms account (whose setup I documented in my very first post on roll-your-own VoIP, here) only my voip.ms (sub)account number and my selected voip.ms server address needed to be entered.  A small quirk: you must uncheck the "Default" box to the right of any box you fill in, and you must scroll down to the bottom of any page you modify and click the "Submit" button before navigating to a new page.  In the example shown, I unchecked the Default box and typed in the identifier for the specific subaccount (i.e., phone-line) that I'd configured on the voip.ms site for use with my home line.  In my case, this identifier is "[MyAccountNumber]_home".  Scroll down, click submit.  On clicking the submit button, a notice appears that the change has been stored but the device must be rebooted for it to take effect.  Okay, point noted: there's a "Return" button to send you back so you can make more settings.  One simply iterates to enter in the required settings on each page, then submits that page, then return, and so on until all the needed settings have been entered.  Finally, there's a reboot button.  Click that, and within a few seconds your new settings will have engaged.

For voip.ms, the sum total of your settings is:

  • You enter their server address in two places, 
  • Your (sub)account number in two places, and 
  • Your voip.ms password in one place.  
  • If you're smart, you'll change the OBi110's web password.  
  • Finally, voip.ms recommends going to the Physical Interfaces page and setting the Phone Port to default to SP1, meaning the service provider (in my case, voip.ms) set up in the first step.  There are fancier options as well.

Throughout, the OBi110's setup pages offer little question-mark symbols which, when you hover over with a mouse, provide definitions and hints.  That is a huge step forward for newbies and those wanting to stay afloat in the sea of VoIP acronyms.

Here's a specific example illustrating how much friendlier the OBi110 is versus the older PAP2T-NA design.  Like most people, I'm sure you've been annoyed at the fiddling the U.S. Congress and other governments have been doing with Daylight Savings Time.  In the past few years there have been several changes which our digital gizmos need to accommodate.  In the case of the PAP2T-NA, you can accommodate Congress' creativity by typing-in arcane character strings to define the begin and end time of your region's time-change:


Good luck figuring that out-- and in particular, good luck figuring out what needs to change next time Congress gets frisky.  The OBi110, by comparison, gives you simple date fields:


...Easy!  Except, that format might look puzzling.  No problem, just hover over the question-mark symbol, and up pops the information you need:

Pop-up help and definitions represent  a significant step forward in usability
...Of course, in the case of the fresher OBi110 design, the defaults were correct and needed no change.  I've seen PAP2T-NAs delivered with a variety of settings, both current and obsolete, and figuring-out and correcting that string of gobbledegook was left as an exercise for the user.

All told: armed with voip.ms' instructions, it took me less than five minutes to get the OBi110 set up.

We've been using this system for a while now and have been entirely satisfied with the sound quality and ease-of-use of the OBi110.  Firmware updates couldn't be easier: if you're taking advantage of the OBiTalk service (which I haven't yet explored), the process can proceed automatically with a couple of clicks.  Or, go to Obihai's support page and download the firmware from there.  Follow the instructions-- any computer and any browser running on any operating system can perform the update.  That's as it should be.

Summarizing: the OBi100/110 adaptors are my new top recommendations for homes and small businesses needing a single phone line.  The OBi110 has unusually flexible capabilities for bridging a variety of telephony technologies ranging from VoIP wholesalers like voip.ms and Callcentric to Google Voice and even your legacy phone service, so your single phone line can partake of the best and cheapest technologies.  These adaptors are easy and quick to set up and are agnostic towards your computer and OS.  Once set up, no computer is needed for everyday use.  These units are inexpensive to purchase and well-supported, and designed by people whose past work remains well-regarded and has stood the test of time.

UPDATE: A correspondent asks if the Obihai adaptor is compatible with the live VoIP-status monitoring trick I documented in another post.  Answer: Sure-- that trick queries the voip.ms server and does not interact in any way with the adaptor.

UPDATE: As is typical of analog telephone adaptors, the OBi110 provides a wealth of flexibility for configuring how outgoing calls are dialed and routed, for example among its various ports.  Importantly, its default configuration routes 911 calls to the plain-old-telephone-service (POTS) line, which it assumes is connected.  But since the whole point of Roll-Your-Own-VoIP is to get rid of POTS services and all their costs, the OBi110's default configuration needs to be changed to route 911 calls properly.  (This also assumes you have subscribed for your VoIP provider--e.g., voip.ms--to provide "e911" capability, which automatically sends your address to your local emergency services provider.  Now, the practice in the industry is to specify the call routing via strings of characters, which gives a lot of flexibility at the cost of incomprehensibility.  In the case of the Sipura/Linsys/Cisco PAP2T, these strings are called "call plans"; in the case of the OBi110 they're called "DigitMaps" and there are several of them.  For most situations the one you'll want to modify is the OutboundCallRoute one.  Open up the OBi110's configuration webpage and navigate through Physical Interfaces -> PHONE Port -> OutboundCallRoute.  In this field you'll see a bunch of rules, each contained in {curly braces}.  Look for the one which states, "(<#:>|911):li"  ...What this tells the OBi110 is: "If the number dialed is '911', dial it out the POTS (line) port."  Change "li" to "sp1" and it will dial your 911 call over your VoIP service provider instead.

24 June 2011

How to Roll-Your-Own with VoIP for Massive Phone Savings

Here's something else that's worked well for us and friends to whom I've emailed the details.  90% savings is something everybody seems to like.

Our home phone service is now about $7 a month total for two lines vs. ~$35 for Pacific Bell for each line.  We just weren't getting $70+ worth of usage out of the two landlines. But going all-cell wouldn't have worked for us for a variety of reasons (not least being the lack of emergency-call traceability for cell calls).  Meanwhile prepackaged Voice over Internet Protocol (VoIP) services from PacBell, Comcast and Vonage wouldn't have saved much, and they necessitated purchase or rental of adapters locked to their service.  (UPDATE: See Summary Comparison: Landline vs. Alternatives and Is the Landline Doomed?)

Instead, I chose a far geekier solution, based on the services of www.voip.ms, that saves the equivalent of four six-packs of my favorite hoppy IPA each month... per line.  Voice quality, domestically and to Europe, is great.  We kept our standard phones-- no computer is necessary. But you can use free VoIP apps on your smartphone, laptop, iPad or iPod Touch, too, anywhere you have good Internet access or even 3G.  Our monthly cost breakdown for two lines of excellent, reliable service is now:
  • Home line ported from PacBell, $1.49
  • Other line from voip.ms' big pool of local numbers on their website: $0.99 
  • Optional e911 service: $1.50
  • Usage: $0.01-0.016/minute for domestic & European calls using the highest call-quality option
  • We also pay the $0.008/call to have our phones display the name of the caller. 
  • State taxes: $0.00
  • Local taxes: $0.00
  • Federal taxes: $0.00
  • Bureaucratic boondoggles: $0.00
  • Redistribution: $0.00
  • Fees, impositions, assessments, Universal Access for those-less-fortunate (who somehow all seem to have cell phones anyway): $0.00

Here's How:

This is the Golden Age of VoIP wholesalers with pay-as-you-go pricing, and also of cost-effective hardware adapters for your old phones.

In my research, two VoIP providers emerged as particularly promising: CallCentric and voip.ms. Both offer free signups, affordable landline-number porting, and great per-minute rates.  I chose voip.ms based on its user reviews, rich feature-set and international presence. Its setup process is browser-based. Provisioning using a temporary number in my neighborhood took a few minutes.  The only caveat is that voip.ms' setup pages can be intimidating, as VoIP is a bit of an acronym-fest. But the learning curve is fairly shallow and quick.

If you have a solid WiFi connection and a good router, you can try it yourself in minutes with an iPhone, Android phone or computer:
  1.  Set up an account at https://www.voip.ms /signup.php ...note, signup is free, but voip.ms works on a prepayment methodology.  You will establish your account with $25 in funds from any credit card.  As you whittle down your balance with usage, you'll receive an email when replenishment is needed.
  2.  Now get yourself a phone number-- a Direct Inward Dialing (DID) number in VoIP-speak.  Go to the "Order DIDs" page, https://www.voip.ms/m/dids.php  ...getting a number will set you back a whopping one-time $0.50 and then $0.99/month plus usage for the per-minute plan that's appropriate for most people.  (You can port a landline later if you want.  It takes a little time and costs about $20, and the ported line is $1.49/month.)
  3. You'll have some options to choose.  Generally it's best to select the voip.ms server that's geographically closest to you.  (If you want to get geeky, do some ping tests.)  Select SIP/IAX as the routing option for now.  (SIP stands for Session Initiation Protocol and is the most-used open standard specification for softphones, IP phones, etc.)
  4. Now set up a subaccount to play with.  This is like an extension.  Go to the Sub-Accounts menu, https://www.voip.ms/m/subaccount.php and select "Create Sub-Account."  Give the subaccount a name in the "Username" field (it'll be something like 12345_yourchoice, where 12345 is your voip.ms account number).  Set a password.  Since I'll be documenting using the 3CXphone app on an iPhone below, click on Advanced Options and select the g.711u and gsm codecs-- these are the sound-encoding algorithms supported by that app.
Done.  You now have a new phone number.

There are a variety of SIP-compliant softphone apps available for iPhones, Android phones and computers.  The two I like best are Whistle Phone (iOS, Windows, Mac) and especially 3CXphone (iOS, Windows, Android), which has deeper technical options and worked best for me when I was traveling in Europe.  Plus, 3CX is headquartered in Cyprus, a country dear to my heart.  Both work over WiFi and also 3G in most places.  Here's how to set up the 3CXphone app for iPhone, iPad and iPod Touch:
  • Download and install the app.
  • When you open it for the first time, you'll need to set some settings.  Recommended settings are shown at the left.  Note that some of them are blank. 
  • The User and ID fields should match the subaccount username you chose.
  • Note the server and proxy server fields should generally be the servers in voip.ms' arsenal closest to you.  They don't have to be the same ones you chose when you set up your account, and you can change them when you travel.  (Voip.ms lets subaccounts call each other entirely for free if they're on the same server.)  Incidentally, my calls to the U.S. from London were fine even though I left things set to the Los Angeles server.
  • The "Record Calls" option might not be legal depending on where you call to or from.  Best to leave it turned off.  (It only seemed to record my side of the conversation anyway.)
  • Multitask Mode allows 3CXphone to keep running when you open another app or sleep the phone.  Handy-- that means you can receive calls, and calls continue if you hit the Home button.  There's a modest hit to your battery life.
  • Bluetooth is supported; just be sure your headset is paired and operating before starting the app.

Done.  Now you can make calls!

To receive calls on this line you just created, go back to the voip.ms website, select "Manage DIDs" from the DID Numbers menu, and select this subaccount in the Routing field.  Save.  Done.  Now you can receive calls.

For your former landlines:

For our home phones, after some research I ordered an unlocked Linksys PAP2T-NA analog telephone adapter from Amazon for $49 with free shipping. This is a gizmo about the size of a pack of cards which plugs into my WiFi router and then into any conventional phone (or dead wall jack) and can be used with any VoIP provider. It's easy to set up; voip.ms has configuration tips on its website.  (UPDATE: "Mango", a frequent poster on VoIP forums and obviously knowledgeable, has his own configuration tips here, and concise reviews on the PAP2T-NA and other inexpensive adapters here.) (UPDATE: the -NA stands for "North America."  There are other models for other locales, for example -EU for Europe.  Near as I can tell, the power plug is the difference.) (UPDATE: See comment #3 for this post; the OBi100 adaptor, also available from Amazon, seems like a great alternative to the PAP2T, and easier to set up.  FURTHER UPDATE: I've now had the chance to use and review the OBi100 adaptor.  It's great, and indeed easy to set up.  See my report here.)

Then we started voip.ms on the process of porting our landline number over, as we wanted to keep it. This took about ten days and was painless, with progress emails along the way. In fact, whenever I had a question regarding any aspect of the service, voip.ms provided snappy support. I could not be more impressed with them as a company or with the quality of their service so far. Kudos also to AT&T/Pacific Bell for their cooperation and the nice good-bye note they sent at the conclusion of the port.

While we waited, we played with the temporary number from voip.ms.  Once the porting was complete, I switched the routing so our ported number rang the PAP2T's subaccount, then sauntered out to the patch panel on the wall of our house and unplugged the PacBell phone line. After verifying that there was no signal on the home lines, I plugged the little Linksys into an unused home-phone jack. Voila: it now provides phone service to every jack in the house.

Bottom line:
  • The change is transparent to anyone who might use our phones.
  • We can set up conference calls with any number of participants.
  • You can get fancy with voip.ms' routing menu.  We now have an Interactive Voice Response (IVR) set up on voip.ms so incoming callers get a voice menu: 1 rings the home phones, 2 takes a voicemail, and--get this--3 gives an international dial-tone, password protected, so we can call Europe from anywhere for cheap just by dialing home. I had a lot of fun setting up my incoming-call greeting: "Thanks for your call. Friends, family and people with whom we do business, press 1. For voicemail, press 2. For an international dialtone, press 3. Telemarketers and robo-callers, we have a specific digit for you." ...Forcing callers to press 1 to ring the home line blocked 8-12 annoying robocallers daily during the runup to the November election.
  • Connecting the Cisco/Linksys PAP2-T adapter
    that lets you use old-timey standard phones is easy.
    Photo courtesy Amazon
  • There's a sophisticated voicemail system which has a wonderful option to speak the caller's phone number clearly. Voicemails are also emailed to us in the form of .wav attachments which play crisply on our computers, iPhones and iPad. Very handy, and a free service.
  • There are many options and features, including 800 numbers.
  • The savings are massive, each and every month.
Recommended.

If you have a solid Internet connection at your home or office and a decent router, cut the cord! (If your service is DSL, work with your phone company prior to the porting process to ensure your Internet remains in-service, and be sure all signal is absent from any wiring to which you connect the PAP2.)


Resources:

Great router for residential or business use, with an excellent firewall and quality-of-service (QoS) engine for good VoIP performance: D-Link DIR-655: http://www.amazon.com/s/ref=nb_sb_noss?url=search-alias%3Daps&field-keywords=d-link+dir-655

Apple's routers are superb: http://store.apple.com/us/browse/home/shop_mac/mac_accessories/airport_wireless

Note: The highest-quality VoIP option (g.711u) consumes about 80-90kbps of bandwidth including overhead.  Info: http://en.wikipedia.org/wiki/G.711#G.711_.CE.BC-Law

Visualware.com provides a spectacular free online tester, optimized to evaluate your Internet connection specifically for VoIP: http://myspeed.visualware.com/indexvoip.php