To recap, my Asterisk-based home phone system is working nicely. It lets me make cheap long-distance phone calls using VoIP. It sends me copies of incoming voicemail via email. It lets me selectively forward (or even ignore) incoming calls based on Caller ID. Basically, it’s a completely programmable home phone system. It’s completely under my control.
And it’s sort of boring. After all of this, it’s still just a telephone. I have a fantastic amount of computer and network power devoted to emulating a 100-year-old communication tool. It’s an “inside the box” system.
I’d like to change that, but I think I’ve lived inside the telephone box for too long, and I’m having a really hard time seeing out. What should the future’s phone system look like, and what do we need to do to build it? And, while we’re building it, how to we get it to interact with the existing phone network?
All sorts of fun question pop up here: * Should phone (and phone numbers) be person-based or location-based? * Do we want to stick with phone numbers, or would name-based addressing work better. Do you want to call me at +1-425-488-9014 or sip:email@example.com? * How does presence play into this? * How long should call setup take? Is there an advantage to < 1 second call setup, like the cellular push-to-talk people keep pushing? * How should we differentiate between “buddy list” calls and calls from complete strangers? When we don’t know the caller, are we better off punting them to voicemail by default? * For semi-stable social groups, would we be better off with semi-stable “chat room”-style conference calls rather then two-party phone calls? For instance, I could set up a conference for my extended family. Everyone with the right equipment could keep a “line” open for the call whenever it’s convenient. Then, anyone in the group with something to say simply has to activate their microphone and talk to the group, and everyone can listen in and respond. This is basically just the audio equivalent of IRC; it’s not technically difficult to implement, but it has huge social implications.
I’d like to play with some of this in Asterisk, but I’m lacking a few pieces. None of the fancier things that you can do with smart phone systems really works when all you have to work with are shared home phones, like the Cisco 7940 in our kitchen. I’d really like to find a decent softphone for OS X, but as Boris Mann points out, they’re mostly stuck in the voice-as-application model, when they should be voice-as-utility. I’d love to see a OS X softphone that works just like iChat–its normal mode of operation is just a little toolbar icon. You click on it, and it gives you a couple menu options and then a list of all of your common contacts. Select one, and it dials the number and gives your a little call-management window. Incoming calls are handled via pop-up, just like iChat.
An alternative would be a PDA phone with a decent SIP client. I’ve heard rumors that Vonage will have a SIP client for the next Treo. Frankly, if the “Treo Ace” (or whatever it ends up being called) can run a decent SIP client, and it includes something besides bluetooth for wireless connectivity, then it’ll be almost impossible for me to resist buying one.