Get to Know GnomeMeeting
Video telephony over the Internet is not common place for Joe User yet, but its importance is growing. Julien Gilli takes a closer look at GnomeMeeting and talks to its main creator and developer, Damien Sandras.
Some background information
A little bit of GnomeMeeting history
GnomeMeeting is the telephony and videoconferencing solution for the GNOME desktop. It was originally named after NetMeeting, the piece of software developed by Microsoft that was the first to provide voice and video communications for end users.
GnomeMeeting was originally Damien Sandras’ final year project. Damien is still leading the project actively together with several other developers. It was first integrated to the GNOME desktop for its 2.4 revision in September 2003 and has since been one its official components. The 1.0 version came out in March 2004. The last stable version, numbered 1.2.2 was released with the GNOME 2.12 desktop on September 7th and the next big milestone will be 2.0.
Damien Sandras, GnomeMeeting’s main developer and creator, has been kind enough to answer our questions. This article is a review of where GnomeMeeting stands today, compared to other solutions, as well as an insight on what exciting new features to expect from the future releases.
Many other very high quality software phones have entered the game since the birth of GnomeMeeting. Skype was born in April 2003 and has already more than fifty million active users. Gizmo and Google Talk are other very active challengers. The features list of all these softphones is pretty impressive. For example, Gizmo has a map it functionality that allows callers to locate the other end of the line on a map, Skype has built-in file transfer, encryption of communications and text instant messaging.
All these pieces of software work correctly with the GNOME desktop and are, more generally, well supported on GNU/Linux. For instance, Skype has been integrated to Mandriva 2006, Xandros and is available as easily installable binary packages for the most popular distributions like Fedora and Debian.
Asking Damien how his solution compares to the others, he emphasizes the fact that “GnomeMeeting is old and mature”. He also points out that “It was already existing back in 2001 when Voice over IP was not popular at all yet.”.
Regarding Skype, which is the most popular at the moment, he says that “the main advantage of GnomeMeeting is that [we] are not locking [our] users into a proprietary protocol”. In the same effort to provide as much freedom as possible for the end user, he also notes that ”[we] are not forcing [our] users to use a specific commercial service for PC-To-Phone and Phone-To-PC calls: they have the freedom to choose.”.
One thing that may become more of a concern in the future is the guaranteed confidentiality and integrity of the communications between users. On this point, Damien notes that ”[end users] can keep the control over their conversations and they know what happens to their data”.
So, GnomeMeeting being free software, its open source code brings some real advantages over Skype. But, in Damien’s opinion, it also wins on features and performance, like latency. “unlike Skype, the connection is directly established between the two users, which means less latency when both endpoints are behind a NAT. Latency is not a big problem when you are transmitting and receiving only audio like Skype, but when you add video, things are getting worse.”, says Damien.
GnomeMeeting’s strong points
In Damien’s opinion, GnomeMeeting has several strong points. For one thing, “it supports more protocols”. Indeed, GnomeMeeting supports H.323 and will soon support SIP (more on this in the next section) whereas many other softphones only support one protocol, which is often SIP.
He also points out that ”[GnomeMeeting is] not trying to influence [its] users to use a specific commercial service”. Indeed, anyone can connect to any VoIP service provider using GnomeMeeting, provided the given service supports SIP or H323.
Finally, ”[any commercial initiative] can decide at any moment to stop the development because the profits are not important enough”, says Damien.
GnomeMeeting’s new features
The next release of GnomeMeeting will bring some interesting new features that will make it even more competitive regarding the other solutions mentioned above.
“The current SIP support is nearly complete compared to our initial objectives. We support all features that were already supported for H.323 in our 1.2.x release and more”, says Damien. Below is a list of features already supported :
- SIP over UDP
- Call Hold
- Call Transfer
- Call Forwarding
- Message Waiting Indications when you receive a voice e-mail
- Instant Messages
- Assisted NAT traversal thanks to STUN or IP Translation
- Multiple simultaneous registrations to several providers
- Audio and Video
The GnomeMeeting.net platform
One thing that confirms their desire to provide freedom of choice to the end user, is that Damien and his team plan to “offer SIP addresses to all of [their] users (e.g.: sip:firstname.lastname@example.org) as well as voice mail redirection when a user is away or offline, conference rooms, LDAP support to look for friends, and more”. This set of services is called the GnomeMeeting.net platform. “a BETA sponsored by OVH is already available.” says Damien.
Other enhancements and features
The former, contributed by Sebastien Estienne, makes GnomeMeeting into a Rendez-Vous compliant application, which means that it will be able to guess which services are available, at anytime.
The latter has been contributed by Julien Puydt and allows “other programs to remotely control [GnomeMeeting] or get information about the current status of a call.”, which is a real improvement over the command line way of doing things in the past. This could mean much more integration to the GNOME desktop in the near future. We’ll move on to that later.
Finally, a Windows port has also been worked on by Julien Puydt. We can see it working through a VNC connection here, on the bottom right. It could bring a lot of users to GnomeMeeting.
Even if one of GnomeMeeting’s strong points is being vendor neutral, it doesn’t mean that it has to be hostile to commercial service providers. Asked which service providers can be used by GnomeMeeting, Damien answered that “as GnomeMeeting is SIP and H.323 compliant, any SIP or H.323 provider can be used to contact real phones all over the world”.
Regarding the GnomeMeeting.net platform, Damien says that “GnomeMeeting will not be restricted to GnomeMeeting.NET and other GnomeMeeting users”. He also mentions a clever trick that illustrates the benefits that openness brings to GnomeMeeting. Indeed, “any user of Asterisk can configure GnomeMeeting to work with [their] home IPBX and [make] phone calls using a softphone instead of a traditional phone”, says Damien.
Another interesting feature of GnomeMeeting is that “you can register simultaneously to several providers at the same time and use the one that is the best suited for each task when dialing out”.
Regarding partnerships between GnomeMeeting and VoIP service providers, Damien insists on ”[offering] the most services possible to [our] users.”. He thinks that “it is important to stay independent from any vendor, even though [we] can recommend a few ones if [we] know that they are serious.”. They “are thus open to any proposition”, declares Damien.
Integration to the GNOME desktop
One of the differentiating factors of GnomeMeeting is that it has “GNOME” in its name. To the end user, it means that using GnomeMeeting with GNOME feels natural. Moreover, for some GNOME users, GnomeMeeting is the main reason behind a move to the GNOME desktop. Indeed, Damien knows “of users or universities that have chosen GNOME as desktop because GnomeMeeting was working well with it”.
A way to achieve GnomeMeeting’s integration to the desktop is clickable VoIP URIs, like sip:email@example.com. One would expect the right application in the right state to pop up after having clicked such a URI. However, Damien says that “GNOME should provide the tools so that it is easy to do it, and nearly automagical once an URI has been added in the URL handlers.”. Regarding clickable URIs, “they are providing the tools so that it works when [GNOME developers] are ready to integrate it.”, says Damien. The D-BUS support above mentioned is one such tool.
Although Damien did not mention it, in the future a project as Telepathy, if it manages to be successful, could be the solution to the integration of IM, voice and video over IP applications for GNOME. However, it’s still too early to tell, since the project started only two months ago.
Since its early days, GnomeMeeting has been based on the OpenH323 library. Its initial developers had started its successor, OPAL, which was designed from the ground up to support several different protocols and is now used by GnomeMeeting instead of OpenH323.
Regarding OPAL’s SIP support, “There was some SIP support and i have added all the features that were required for GnomeMeeting”, declares Damien. Surprisingly, he is “spending most of [his] time on OPAL and not on GnomeMeeting, which is fun too”.
One may wonder how well the SIP and H323 protocol fit together in the same application. Again, Damien and his team seem to have focused on simplicity : “when doing an outgoing call, the user has to double-click on a contact in his address book, or enter the URI where the remote user is reachable. When receiving an incoming call, the user has nothing to do except accepting or rejecting it. We request the minimum of interaction and knowledge from our users”, says Damien. To give an analogy that may be familiar to most of us, Damien says that “the behavior is similar to the way a browser works with http/https/ftp URIs”.
Asked for a 2.0 release date, he answered that “users can expect the 2.00 release to be available early in January 2006 together with the GnomeMeeting.NET platform”. He also added that, while adding new features, “the purpose of the 2.00 release is to keep the same features [as] in the 1.x releases, but for several protocols, namely H.323 and SIP.”
For the 2.2 release, which has no release date yet, ”[we] also plan to add SIP presence support, and support for multiple lines as GnomeMeeting is currently limited to 1 line”, says Damien.
Damien and his team have made a strong point on being as open as possible and respectful of the standards on all aspects of their project, socialy and technically.
Because their project is one of the more mature ones now, they are able to provide a large list of features. “Our interest is to provide a complete solution, usable for simple video chat, but also as a complex softphone able to replace the most complex phone used with a PABX.”, says Damien.
It seems that future releases will bring a lot of interesting new features, like fairly complete SIP support and a Windows port.
The new GnomeMeeting.net platform, providing SIP addresses for everyone, may also extend the GnomeMeeting’s user base in the future.
Some new developers have contributed significant enhancements, which shows the project is healthy and growing. The D-BUS support will bring more integration to the GNOME desktop and remoting capabilities, while Avahi support provides automatic discovery of available services. One might expect the list of active contributors, and consequently features, to grow even more in the future.
There are a lot of competitors in the VoIP arena, and there are more every day. However GnomeMeeting seems to have strong selling points and to have no reason to fear from the competition.
This article ends with Damien’s words: “Think Free. Think Open. Never forget why you are using Free Software and be consistent with yourself”.