[Telepathy] Stream Tubes VNC

Guillaume Desmottes guillaume.desmottes at collabora.co.uk
Wed Feb 13 03:13:33 PST 2008


Le mardi 12 février 2008 à 21:48 +0530, Naveen Chandran a écrit :
> Hi!,


Hi.

CCing telepathy mailing list as this can interest other people.


> I am hacking on remote desktop/assistance thing in GNOME Online
> Desktop. I came across telepathy and is really cool project. I saw the
> screencasts of Gtetrinet and also the VNC over Jabber Using Stream
> tubes.
> 
> I am interested in working on VNC [over Stream Tubes] to integrate
> with empathy... [like anyone can just right click on the contact and
> click "Share my Desktop" and the other person should be able to
> control the desktop]
> 

Great! VNC over stream tubes could really be a killer feature in the
GNOME desktop.

> I could not find the patch for the real vnc and I also tried patching
> the Gtetrinet and empathy and is giving me lots of dependency errors
> when trying to compile ... I am running Ubuntu 7.10...
> 
> ... also can you send me the patches for vnc or a patched tarball? and
> also the patch for empathy [i think its for 0.14, if i am not
> wrong] ...
> 
> I need some pointers on where to start and how to go about it....

First I suggest you to use latest Telepathy packages. As you're using
Ubuntu you can use our PPA. See
https://launchpad.net/~telepathy/+archive

You don't have to patch VNC anymore. I needed to do it in [1] because
when I wrote this post we didn't have Inet Stream tubes yet, so I had to
use an Unix socket. We have them now, so you just have to export the
socket of your VNC server through a stream tube. Then on the other side
accept the tube as an Inet stream tube and connect your VNC client
(Vinagre I guess?) to its socket.

I already got this working using Vinagre and the tube test script
shipped with telepathy-python: tube-stream-muc.py.
You'll have to use HEAD version as the latest release still use Unix
sockets instead of Inet ones.
http://darcs.collabora.co.uk/darcsweb.cgi?r=telepathy/telepathy-python;a=summary


You could also be interested in my Empathy tube-demo branch.
http://git.collabora.co.uk/?p=user/cassidy/empathy.git;a=shortlog;h=tube-demo
I wrote it as a tubes integration proof of concept with Gtetrinet.

Tubes integration in the desktop is still an open question. I hope we'll
have something soon with the Mission Control next gen. We'll probably
use D-Bus invocation to launch the right application when we receive a
new incoming tube or something similar.

As a start maybe you could open an Empathy VNC branch based on my
tube-demo branch and add VNC support. Basically you have to do 2 things:
a) Handle incoming tubes which have "vnc" as service (as I do for
tetrinet).
b) Add a "Share my desktop" menu entry which launch a VNC server if
needed and export its socket trough a tube.


Let me know if you have others questions.


Regards,


	G.

[1]
http://cass.no-ip.com/~cassidy/blog/index.php/post/2007/06/05/Stream-tubes-a-new-generation-of-tubes




More information about the Telepathy mailing list