The Perfect VoIP Softphone and IM client
With more softphones on the market than you can shake a stick at, each with their own "island" of users that cannot bridge to other islands, I've become a bit disillussioned with the VoIP softphone market. Sure, there is talk about interoperability, support for SIP/SIMPLE, XMPP support, etc. but we still don't have a single unified client that can speak to Skype users, AOL/AIM users, ICQ, Google Talk, MSN Messenger, Yahoo! Messenger, etc. Although, software such as GAIM is a multi-protocol client that aims to unify all of these IM/softphone clients, it too is incomplete. For one, it was designed mainly to handle instant messaging (IM) and not voice or video. Although, a branch of the open-source project called GAIM VV was started to work on adding voice and video support, but it appears to be a dead project since the last posted news was October 2005.This lack of a single unified client means I have to have like 4-5 IM/softphone clients running on my PC, which uses more memory, requires more time spent keeping each client up to date, uses more hard disk space, Registry bloat, and other inconveniences. It got me thinking though - what features would I like to see to create the perfect VoIP softphone and IM client?
And so, here is my "wish list" for the perfect softphone/IM client...
- Ability to map multiple inbound numbers (212-555-XXXX, 800-555-XXX) to the softphone. This way you can have your "personal" phone line for family/friends and your "business line". I'd like each phone line to have its own distinctive ring to indicate the inbound number called in case you are away from the softphone/PC. You will obviously greet the caller differently depending on the ringtone.
- Related to the feature above, I'd like the ability to have different greetings depending on the number dialed. For instance you can have a business greeting for your business phone number and a personal greeting for your personal phone number. You can take this one step further and have customized greetings depending on the CallerID or buddy calling you.
- Personable ringtones - different ringtone depending on CallerID or buddy calling you
- Support for XMPP to interoperate with other XMPP-compliant softphone/IM clients
- Multi-protocol support to communicate with other IM clients that doesn't follow industry standards.
- Firewall NAT-traversal friendly
- Video capabilities with H.264/AVC/MPEG-4 Part10 support
- Support for at least a 4-way videoconference with minimum 10fps
- Message Waiting Indicator (MWI)
- Call log
- Call recording of BOTH audio and video (if applicable) into standard MP3 for audio and .avi or Shockwave formats for video calls.
- Will record the beginning of the call even if you decide to click the Record button later. (buffers the call to hard disk and deletes if you decide not to record).
-
- Drag-and-drop Instant Upload & Instant Streaming. Related to previous feature. I want the ability to simply drag-and-drop any media type (photo, music file, or video file) and it will instantly stream or appear on the remote user's screen.
- If the provider of the softphone is a cellular carrier or even if they simply OEM it, I'd like the ability to run the softphone on the mobile phone and for it to be my unified call control application for both PSTN and VoIP calls as well as SMS or instant messages.
- Skinnable with ability to add custom buttons mapped to specific functionality
- Can use any standard MP3 or .wav file for customizable ringtones WITHOUT having to pay to download them. Of course, the softphone provider can also provide "paid" ringtones - just don't lock/force users to use paid ringtone downloads.
- Support for VAD (Voice Activity Detection), AGC (Automatic Gain Control), and CNG (Comfort Noise Generator).
- Support for registering to an unlimited number of SIP registrars (termination providers).
- Some sort of Least Cost Routing (LCR) based on your user-defined rules (time of day, country destination code, special promo offered by a SIP provider, etc.) that will dial-out using the least expensive SIP termination provider. Perhaps even ability to import the rate tables in XML format on a daily or weekly basis would assist in LCR.
- Support for the popular Asterisk open-source PBX, including IAX.
- LDAP directory support
- Outlook integration
- Can create Groups (Family, Friends, coworkers, MIS Dept, etc.) and can instantly create a conference voice or video call to a specific group.
- Can schedule a conference call from the softphone, invite others, and it will add it to the Outlook Calendar and automatically setup the call when the time arrives.
- Remote Webcam viewing. Most softphones require a human at the remote end to answer the video call. I want the ability for the remote end to automatically answer the call so that I can remotely call this softphone using a buddy name, SIP URI or IP address with a special parameter passed that tells the remote softphone that I wish to initiate a webcam viewing. No, this isn't for spying on the spouse. This feature would be cool to use to remotely check on your house or as a cheap man's security system.
- Initiate a remote desktop or screen-sharing session. Can't tell you how useful it is to be able to troubleshoot family/friend's PCs.
- Throwaway Alias IDs (usernames) so you can post these aliases as "click to call buttons" on blogs, MySpace.com or other websites without giving away your regular username. So if you get spammed (SPIT) you can just post a new alias.
- "white list" of allowed people that can call you and a personal "black list" - to block spammers. Perhaps even a "shared" blacklist similar to the DNSBL (DNS Black List) that is used to block email spam by doing a simply DNS query.
- (bonus) Initiate a game with one or more buddies and it will automatically tell the game software the IP addresses of each buddy.
Sure GAIM "unifies" several popular instant messaging services, including AIM and ICQ, MSN Messenger, Yahoo!, IRC, Jabber, and more, but it doesn't most if any of my wishlist items.
Another feature I'd like to see that is sort of Web 2.0 related. I'd like the ability to have better community search features. For instance, the ability to find your high school friends by searching by school name and year. Perhaps a partnership with Classmates.com. I should mention that NetZero, now United Online, owns Classmates.com and NetZero already does VoIP. Perhaps NetZero will be the first to integrate Web 2.0 with VoIP 2.0?
Conclusion
In reality, calling all of my desired features a softphone & IM client is a misnomer. My ideas/wishlist create something much more than your typical softphone/IM client. Perhaps the most apt description or name you could call this theoretical software would be to call it a "unified communications client" since it marries the best of Web 2.0, VoIP, calendaring, gaming, sharing/collaboration, and more. While some may complain about feature-bloat if such a software were ever created, I would argue the fact that you have to run 4 or 5 different applications that don't even talk to one another is even more bloated and doesn't have the synergies that I have previously suggested.
Do you have some suggestions for the perfect softphone / unified communications client? Post a comment
Post a comment
- Related Entries
- VoIP over EVDO from PeerMe - Sep 14, 2006
- D2 Technologies mCUE mobile convergence softphone launches - Jan 07, 2008
- ooVoo a new Video/IM communications client - Apr 20, 2007
- Linksys CIT310 Phone for Yahoo Messenger - Nov 08, 2006
- EQO VoIP / IM client now supports Windows Mobile and Blackberry mobile phones - Oct 23, 2006
- Raketu new P2P VoIP app takes on Skype - Sep 12, 2006
- SightSpeed 5.0 VoIP and remote TV (Slingbox) functionality impresses - Jul 24, 2006
- Lycos Phone blows away Skype and Yahoo Messenger? - Mar 26, 2006
- AOL & Google deal a nightmare for Microsoft? - Dec 21, 2005
- Mandriva Linux to support Skype - Dec 19, 2005
Search Technorati: google, im, messenger, microsoft, sip, skype, softphone, streaming, video, voip, yahoo
Related Tags: client, softphone, users, support, perfect
Listed below are links to sites that reference The Perfect VoIP Softphone and IM client:
Trackback Pings
TrackBack URL:
http://blog.tmcnet.com/mt3/t.fcgi/25654
» iPhone vs iPhone vs. iSoftphone? from VoIP & Gadgets Blog
As if we haven't had enough of the Cisco vs. Apple iPhone battle, now we have "iSoftPhone", a clone of the Apple iPhone's skin created by Xnet Communications GmbH. iSoftPhone is a VoIP softphone for Mac OS X. They claim... [More]
Tracked on February 20, 2007 4:57 PM
Comments to The Perfect VoIP Softphone and IM client
-
Usher Lieberman :
July 11, 2006 4:04 AMTom - More than a client or softphone, I think you've described what amounts to a presence-enabled desktop. It moves with you from device to device, and lets you control all of them from wherever you are now. It manages the services you consume, the applications you have rights to use, the information you publish and subscribe to, and launches relevant applications (or not) on your behalf based on your extended presence (availability specific to your current context). It is what happens when presence can be baked into every application and data stream, and the client (and application to some extent) no longer matters.
-
Andy Smith :
July 26, 2006 11:44 AMIn the blog you were asking for a Unified Communications package. Well UnifiedDirect will be able to offer this to you very soon. UnifiedDirect is using the myJabber softphone and IM clients www.myjabber.net and incorporating it with our VoIP phone service. I would like to give you a softphone and IM client free of charge for 30 days to test the sound quality and low calling rates. UnifiedDirect can do a number of the features on your wish list already and we are willing to look at the outstanding items in more detail. You can send me an email at sales@unifieddirect.net for more information.
-
Tim Grist :
January 23, 2007 5:15 PMGreat article.
-
Paul Benz :
January 23, 2007 5:22 PMOne addition to suggest: Ability to operate with USB devices (like handsets, bluetooth headsets) using a separate input/output channel so
one does not have their computer sounds (music, ...) interfering in the conversation
and
to improve voice quality over headset options.
One can always use the controls on the computer to switch between sound sources but try doing this in 3 rings. Skype integrates these devices really nice.
I am trying out a Linksys CIT200 for skype. I dont think the headset variable can be understated for a softphone. A handset significant improves the quality of a call by how close the microphone is to the mouth.
-
Alan Wright :
March 21, 2007 2:39 PMIt seems that POP,SMTP,IMAP,MAPI support should be included in this so the support of PBX's like Ayava,Nortel,Etc with voice and fax messages could be dumped into the client. Unified would mean that voice,fax,email,IM,VoIP,H323,SIP would all be put into one client.
Alan Wright
Windstream Communications, Inc.
Application Eng.
-
Ahmed :
September 5, 2007 10:53 AMBrosix is cool.
Technorati
Del.icio.us
Slashdot
Digg
Previous blog:



RSS feed



Ivelin :
June 28, 2006 9:04 PM
Tom, thanks for the blog entry. It sums up the frustration that a lot of developers feel, especially Open Source developers.
I would like to point out that a number of the features on your wish list can be addressed by Open Source Open Standards based VoIP middleware. It can do a lot of the heavy lifting and be able to connect with a variety of thin clients over multiple protocols.
Clearly User Interface related features such as drag&drop or desktop sharing cannot be addressed by middleware, but the ones that can be include:
- Support for SIP, XMPP, jingle, SMPP, INAP and a number of other protocols
- Ability to map multiple inbound numbers (212-555-XXXX, 800-555-XXX) to the softphone. - Related to the feature above, I'd like the ability to have different greetings depending on the number dialed.
- Support for XMPP to interoperate with other XMPP-compliant softphone/IM clients
- Multi-protocol support to communicate with other IM clients that doesn't follow industry standards.
- Firewall NAT-traversal friendly
- Support for at least a 4-way videoconference with minimum 10fps
- Call log
- Call recording of BOTH audio and video (if applicable) into standard MP3 for audio and .avi or Shockwave formats for video calls.
- Will record the beginning of the call even if you decide to click the Record button later. (buffers the call to hard disk and deletes if you decide not to record).
- Really COOL feature: Streaming of my personal video and audio files to my buddies. Think Slingbox or Orb Networks.
- Support for registering to an unlimited number of SIP registrars (termination providers).
- Some sort of Least Cost Routing (LCR) based on your user-defined rules
- Support for the popular Asterisk open-source PBX, including IAX.
- LDAP directory support
- Outlook integration
- Can create Groups (Family, Friends, coworkers, MIS Dept, etc.) and can instantly create a conference voice or video call to a specific group.
- Can schedule a conference call from the softphone, invite others, and it will add it to the Outlook Calendar and automatically setup the call when the time arrives.
- Remote Webcam viewing.
- "white list" of allowed people that can call you and a personal "black list" - to block spammers. Perhaps even a "shared" blacklist similar to the DNSBL (DNS Black List) that is used to block email spam by doing a simply DNS query.
- (bonus) Initiate a game with one or more buddies and it will automatically tell the game software the IP addresses of each buddy.
other bonus feature are:
- call tree
- location sensitive call groups (dodgeball)
- call forwarding, caller sensitive voice response logic ...
...plus many others that can be created by innovative developers in the future without requiring much logic in the VoIP handset. It is even possible to gracefully enhance or reduce the richness of user experience based on handset capabilities.
One such Open Standard VoIP platform is JSLEE (JSR 22). An Open Source implementation of JSLEE exists today - Mobicents.org - and its community is quickly growing the number of supported communication protocols via the standard JSLEE Resource Adaptors technology.
I would be interested to learn what your thoughts are on this aproach.
Regards,
Ivelin