Empathy 2.28: Easy Desktop Sharing

One of my favorite new feature in Empathy 2.28 is definitely the Vino and Vinagre integration. Users can now easily share their desktop with their contacts by a simple click in Empathy. The contact then receives an invitation which will automatically launch Vinagre and connect it to the Vino server of the sharer. No need to worry about sending your internet IP or open and forward a port in your firewall; all the technical details are hidden to offer the easiest user experience as possible.

This integration between IM and application is done by using Telepathy tubes in Vino and Vinagre. Kudos to Arnaud Maillet who worked on this as his internship project at Collabora and to the Vino/Vinagre developpers who welcomed our work with lot of enthusiasm.

With the switch to Mission Control 5, I hope to see more and more projects starting to use Telepathy in order to increase the collaborative user experience in the GNOME desktop.

What next?

Better integration

Mission Control 5 and the new ContactCapabilities interface will allow us to improve the integration during the 2.30 cycle. We'll be able to hide the 'Share my desktop' button if Vino hasn't been built with Telepathy support and to unsensitive it if the contact doesn't have a tube enabled Vinagre installed.

Better performance

Currently telepathy-gabble tries to connect the tube to the peer using the following algorithm:

  • If available connect to peer's IPv6 address
  • Try to connect to peer's IPv4 address
  • Try to use a SOCKS5 proxy
  • Fallback to IBB

That means that if your are on a different LAN than your contact, without IPv6, and that your Jabber doesn't provide a fast SOCKS5 proxy, the connection will be pretty slow. We hope to solve this at some point by implementing stream tube Jingle NAT penetration in telepathy-gabble. Thanks to the Telepathy abstraction, Vino and Vinagre won't have to change a single line of code to benefit from this improvement; they'll magically start to use it as soon as Gabble gains this feature!

KDE interoperability

George is also working on implementing similar feature in KDE using Kopete, krdb and krdc. Easy cross desktop sharing is coming!


Share your desktop in one click


1. Le mercredi, septembre 23 2009, 00:49 par Daniel Schierbeck

This is awesome! I think what you're doing is absolutely amazing, and extremely beneficial to the entire free desktop ecosystem!

All the best wishes, and keep rocking!

2. Le mercredi, septembre 23 2009, 04:44 par pt

Nice but Vinagre is slow & unusable.

3. Le mercredi, septembre 23 2009, 05:12 par Anonymous

This gives me an idea: what about running SSH over a tube?

4. Le mercredi, septembre 23 2009, 10:14 par Tom

Does this desktop sharing work without port forwarding?? That would be awesome.

5. Le mercredi, septembre 23 2009, 14:58 par niko

I read a lot about empathy 2.28, telepathy and this mission control 5 in last days. Beeing interested I skipped through the announcements and found a note for mc5 that while migrating from mc4 all your passwords will be exported from gnome-keyring and saved in plaintext - could someone confirm and comment on this?!

6. Le mercredi, septembre 23 2009, 17:57 par Guillaume

Daniel: thanks a lot

Pt: this is mainly because gtk-vnc doesn't support features such as color depth tweak. See https://bugzilla.gnome.org/show_bug...

Anonymous (?): Yeah that would be really easy to do using a stream tube. Go for it! :)

Tom: It does; that one of the big advantage to use tubes.

Niko: This has been fixed in recent versions of MC5. Be sure to have the 5.3.1 and your passwords will be stored in gnome-keyring.

7. Le mercredi, septembre 23 2009, 19:06 par anonymous

This is supercool. Rock on. I love you all :)

BTW: Would it be easy to change empathy so that my windows using friends could look at my desktop rather than my face during a chat? In other words I would like to pipe a movie of screenshots through farscape. Would that be easy to do? (sorry to derail the topic)

8. Le mercredi, septembre 23 2009, 21:04 par Tom

Übercool! This is soo awesome!

I truely love you guys ;) !

9. Le samedi, septembre 26 2009, 00:04 par Walther

Awesome! One small question though: how did it know to use the word 'his'? Does it know you are male?

10. Le samedi, septembre 26 2009, 20:32 par Alban

@Walther: Vinagre does not know, and has no way to know. It just uses that:

vinagre/vinagre-tube-handler.c 519: GTK_BUTTONS_OK_CANCEL, _("%s wants to share his desktop with you."),

Do you have a better wording? Maybe this:

"%s wants to share his/her desktop with you."

Note that the problem is specific to English.