June 12, 2007

WengoPhone 2.1 gives Linux users a solid softphone

Author: Nathan Willis

The OpenWengo project recently released version 2.1 of its WengoPhone VoIP softphone. It's a big step forward for Linux users.

Wengo -- the commercial PSTN-routing SIP provider that is the open source project's parent company -- focused on its Windows builds and essentially skipped over Linux during the 2.0 release cycle. OpenWengo's Linux developers were never satisfied with the stability of the 2.0-series release candidates, so they never incremented the Linux version number to 2.0.

2.1, on the other hand, is a solid, stable release, although side effects of the missing 2.0 might cause users some confusion. The WengoPhone online documentation makes references to 2.0 code that is nowhere to be found, the 2.1 developers' site refers to building on top of 2.0, and so on.

OpenWengo's community development manager Dave Neary assures users that such inconsistencies are in the past, and that the project will be making release schedules much clearer in the future. He also describes the Linux and Mac OS X clients as first-class citizens, equal to the Windows product.

Getting started

You can download the new release from openwengo.org. Detection code in the download page should autodetect the operating system you are running and offer you the correct download link. Even if it doesn't, links for all platforms are listed on the right side of the page.

The Linux release is a compressed tarball, 24MB in size. The heft is due to bundling all of WengoPhone's dependencies into one statically linked package. When distribution-specific packages become available, they should be slimmer, as a package management system can ensure the pre-install requirements are met. In the meantime, though, the released build should work on any recent Linux system. Just unpack it and run ./wengophone.sh from the command line.

Perhaps the biggest new feature in this release is the ability to configure the client to work with any SIP provider; preceding versions were limited to the commercial Wengo service. You configure WengoPhone for use with your account (Wengo.com or otherwise) from the "Log off" menu item under the Wengo menu -- a counterintuitive appellation, perhaps, but a simple enough process.

If you already have a Wengo account, you need only enter your username and password in the configuration wizard. To set up a new Wengo or third-party SIP account, click on the Configure a New Profile button. From there you can enter SIP configuration details by selecting the Other button.

Once your account is set up, WengoPhone will connect automatically whenever you log on. You can set up WengoPhone as your instant messaging client, too, using AOL, Yahoo, MSN, ICQ, Google Talk, or other Jabber networks. Although you can set up and log in to multiple IM accounts simultaneously, you can only use one SIP account at a time.


I had persistent trouble with one aspect of WengoPhone's IM support: even though I manually set my presence to disconnected, the app would intermittently connect and log in to all of the configured IM accounts. That is a major hassle for networks like Yahoo's and MSN's that do not allow you to be logged in from more than one location -- it can interrupt a chat session on another machine unintentionally.

WengoPhone does not have that same trouble with SIP accounts: if you manually disconnect, you stay disconnected. The practical upshot is that unless you are ready to use WengoPhone as your primary IM client, it might be best to skip the IM feature for now.

An important change unique to the Linux client is the new native ALSA audio back end. Previous generations used PortAudio, a cross-platform sound library that served as an interface layer for both ALSA and OSS on Linux. But problems with PortAudio's ALSA interface increasingly made the extra layer of abstraction more of a liability to developers than an asset. The new, PortAudio-free build should retain compatibility with all ALSA-supported sound cards, but with fewer bugs and with one less dependency.

This release supports the Speex, iLBC, AMR-WB, PCMu, PCMA, AMR, and GSM audio codecs, and uses Speex as its default. Officially the OpenWengo project takes no position on preferred codecs, shooting for whatever is necessary to ensure compatibility with other softphones, but it is good to see the project advocate a patent-free codec like Speex by its actions.

Video is more iffy; WengoPhone supports webcams on Linux only through Video4Linux. There is a patch available to support Video4Linux2; full support is supposed to make it into a future release. If you have a Video4Linux-compatible webcam, you can make video calls using the H.263 codec.

Interface issues

The user interface has also been overhauled and cleaned up. It looks slick and modern now, and almost every interactive element has a tool tip, which is handy in light of the brevity of most elements' labels. Consider the Find Contact toolbar button, for example: the pop-up tool tip elaborates that it can be used to find only Wengo contacts, not IM buddies.

I also appreciate that far more information is available in the WengoPhone window at one time. Your contacts (including IM buddies), your presence status for each account, your Wengo.com call out balance, and your basic audio/video settings are all visible on screen from the main window. Previous WengoPhone releases used too many pop-up windows.

Nevertheless, the interface still has shortcomings. Several of the main windows elements look like they come from different widget sets (some 2-D, some 3-D; some tabs, some glossy beveled Aqua-styled buttons).

Non-cosmetic issues are more serious, such as the inexplicable "Log Off"-to-log-on scenario mentioned above, and inconsistent arrangement of functions. For example, Send SMS is under the Actions menu, but File Transfer is under Tools. Enabling and disabling video calls is available only under the Tools menu at the top, but enabling and disabling loudspeaker mode can only be done from the click-to-expand audio/video menu at the bottom.

And WengoPhone exhibits one of my biggest UI pet peeves: interface elements that appear to be normal buttons or menu selections, but in fact launch the system's default Web browser and take you to a page on a remote site. If WengoPhone can connect internally to the Wengo.com server to query and debit my account balance, it should let me edit my account details without leaving the app as well. Barring that, menu items that are hyperlinks should be visually distinct from those that are application functions.

Dial H for help (figuratively speaking)

None of WengoPhone 2.1's interface foibles are significant to its day-to-day usability; the only users at risk are those new to VoIP and SIP altogether. For them, the documentation and help system are key. On this point, WengoPhone is a mixed bag.

There is no built-in help system, only menu items that take you to the online discussion forum and wiki. The wiki now includes up-to-date user guides for 2.1, but they were added several weeks after 2.1's release. The wiki is in English, but it is awkward English. Moreover, there is a FAQ section, a "knowledge base," and user guides all in the same wiki, meaning too many pages that partially overlap in their information.

For example, see the conflicting information on using analog telephone adapters in the FAQ and in the knowledge base. Or, as an exercise, try to use the wiki to find out whether you need to prefix your calls with an international dialing code. It ought to be simple to find out; it's not.


For good old-fashioned PC-to-PC SIP usage, WengoPhone is on par with fellow free alternative Ekiga in call quality, codec support, audio device handling, and basic ease of use. On the advanced features, they begin to diverge. WengoPhone offers IM integration, but is limited to one active SIP account at a time. Both support video calls, but Ekiga supports both Video4Linux and Video4Linux2. WengoPhone is integrated with a dial-out service, so PC-to-phone calls are simple. Ekiga has a brilliant configuration druid that can autodetect the network address translation settings on your router and configure itself appropriately. Which best fits your needs depends on the particulars of your usage scenario.

On the other hand, WengoPhone 2.1 is hands-down a better option for cross-platform VoIP calls than proprietary applications like Skype and Gizmo Project. The Linux build is a big step up from the previous 2.0-RC releases. If you need to set up a VoIP call to someone on another operating system, give WengoPhone a try.


  • Internet & WWW
  • Desktop Software
Click Here!