That “Sip” should properly be SIP, Session Initiation Protocol, which in theory has been on the point of enabling Internet Telephony for some years now. And in practice maybe it really is, because I got it kind of working today.
[Motivation:] One reason I’m writing this is to pressure Simon Phipps to publish his work. He’s been deep-diving on this technology for a long time now and seems to be able to call anywhere from anywhere, with all sorts of bells and whistles, at basically no expense.
Back Story · Recently, Skype has crept back into my life on a regular basis; I’ve found it very useful both for business and personal use. Mobile network operators persist in a piratical attitude toward any customer who has strayed outside the area their normal plan covers, and since I travel a lot, I’ve come to hate them.
Also Skype video seems to pretty well Just Work in a much wider range of circumstances than for example iChat video, which in my experience usually Just Doesn’t.
Now, Skype isn’t standards-based; it’s a black box that uses, one hears, all sorts of clever tricks to skate around the realities of the Internet As It Is to get the job done. I’d regularly heard people who knew something of the territory asserting that this was evidence that SIP was a theoretical nicety dreamed up by IETF hippies but it wasn’t going anywhere.
The other thing that happened was, I applied for and received a Google Voice invite. You need a US phone number to use it, but I have one of those due to my employment with Sun. Google Voice seems pretty slick, and it looks to me like it has a plausible business model, so it may be with us for the long haul.
I was a little worried, though, because what with the Oracle acquisition, who knows how long I’m going to have that US number?
Gizmo5 · I was chatting with Simon today and he mentioned Gizmo5, which is in the business of making SIP useful. Sign up with them and they’ll give you a free SIP “phone number”. I put that in quotes because even though it looks like a real number (mine is in +1-747-) you can’t just call it from an ordinary phone.
Gizmo is also a Skype competitor, they offer call-out services and local numbers and so on; I haven’t checked the rates but I assume they’re down in the same really-really low territory. I saw a comparison somewhere claiming Google Voice’s call-out rates are even lower; but they’re all down to where it just doesn’t matter that much. Unless, of course, you’re in a family dispersed around the world, especially its poorer parts; which is where this all might make a big difference.
Also, Gizmo5 has a relationship with Google Voice, which will happily route your calls to that SIP number. Also, Gizmo5 has a nice Skype-like client (Mac and Windows) which will receive those calls. Mission thus somewhat accomplished. Call my Google Voice number (in +1-312-, the Chicago area code) and assuming my computer’s on, we’re talking.
Going Mobile · But sometimes my computer’s not on, and it turns out that there is a SIP open-source (GPL) client for Android, Sipdroid. I got it, but I was having real trouble getting it to talk to Gizmo5. A bit of poking around revealed that Gizmo5 has made a fork that is preconfigured for talking to them (and Google Voice). Now, there has been an accusation that Gizmo5 has violated the GPL, but they hotly deny it and do seem to publish a source tarball; looks to me like they’re playing by the rules.
The fork is called Guava (“GoogleVoice Unauthorized Android Voice Application” [snicker]) and it works. It’s not problem-free, because it wants to replace your normal Android dialer with one that’s not as slick (the hardware “hang up” key doesn’t work, for example). It took me a while to figure out that while it was running, all my calls were going through SIP; this confused the hell out of my normal mobile voicemail number, which saw the call as coming in from Chicago. Fortunately, Guava has an enable/disable toggle in case you want your phone to just be a phone (but it should be on the front page, not back in the preferences).
Anyhow, if you place either a SIP call to my Gizmo5 number, or an ordinary call to my Google Voice number, if Guava is running and I have Internet connectivity, my Android rings.
This is clearly not quite ready for prime-time; I had to do research and twist knobs that you just couldn’t ask mainstream consumers to deal with. But you know, with some packaging savvy, it’s not far off.
What Next? · Beats the hell outta me. Locally, I need to figure out how to pay for my telephone calls. I have a damn expensive plan with Canada’s Rogers whose main virtue is removing the distinction between the US and Canada. I wonder if the combination of Gizmo5/GoogleVoice call-out rates, and being near a WiFi often enough, could save me a ton of money?
Globally, a bunch of assumptions that underlie the business structure of the world’s telephone companies suddenly look to me like they’re maybe inoperative. For instance, that ton of money I might save would come right out of Rogers’ pocket.
And near as I can tell, SIP sort of generally works. So chalk up another win for those IETF hippies; betting against them is usually stupid in the long run.
Comment feed for ongoing:
From: Ted Wood (Oct 16 2009, at 00:06)
You may also want to look into Bi-Directional numbers. Basically, you get a second telephone number that you add to your My5 plan (or equivalent) on your Rogers cell phone. Whenever you want to make a long-distance call you call your bi-directional number and then punch in the number you want to call. You save on airtime and long-distance. It works the same for incoming calls... someone calls your bi-directional number and your cell phone rings, again saving on airtime because it's one of your My5 numbers.
I'm just setting one of these plans up with Takeon.ca
[link]
From: Martin Probst (Oct 16 2009, at 01:48)
I looks like telephone companies are in one of those businesses where the business model will be overtaken by technological advance soon, just like the music industry or newspapers.
Which is probably fair, given that they used to charge ridiculous sums, at least the mobile providers here in Germany.
I still wonder who and how will finance the next round of mobile infrastructure though.
[link]
From: Fabian Ritzmann (Oct 16 2009, at 01:54)
There are plenty of SIP providers out there. (I'm not really familiar with the North American ones.) In combination with QuteCom (formerly OpenWengo/WengoPhone), you get a really open source, open standards, free as in free beer solution that works in all places with unencumbered network access.
[link]
From: Trung Duc Tran (Oct 16 2009, at 05:28)
I've been using VoIP for quite a while, both SIP and Skype, quite successfully. All our outgoing calls at home are via SIP, practically free for all the destination countries we care about. I routinely use Skype to call *US* toll-free 800 conf call numbers, that's to workaround the fact that those US initiated conf calls don't have 800 number for the Czech Republic where I live.
SIP has big trouble tunneling firewalls, it tries hard and succeeds in many cases. Unfortunately it fails if the firewall blocks UDP packets which is often the case with big corp IT networks. (Check yourself). Skype works even in those cases, it just falls back to TCP and tunnels happily even on top of https if necessary.
[link]
From: Tim (Oct 16 2009, at 09:04)
Trung: I had a look and yes, Gizmo uses TCP as well to deal with firewalls. So I guess this problem is more-or-less in the solved category. Interesting times.
[link]
From: brbd (Oct 17 2009, at 05:58)
You should really register at pbxes.com. It can use multiple trunks (i.e. multiple SIP providers, like Gizmo, Sipgate etc), extensions (both SIP ones and PSTN/GSM phones), ring groups (so that incoming calls can ring both your PC softphone and SIPdroid on Android), supports filtering and rules (call mobiles on another trunk than landlines, where it is cheaper) and so on. A basic account is free.
[link]
From: Sam Nguyen (Oct 19 2009, at 09:50)
One last thing you may want to do to close the loop is set up Caller ID on your Gizmo account to be your Google Voice number. I think it costs something like $12/year and you can do it if you go into your Gizmo account settings.
I have the Google Voice/Gizmo setup going through an ATA adapter so I can use a regular phone, which has been pretty convenient (although my particular setup seems to only work about 85% of the time).
[link]