[Telepathy] how to use empathy's TubeHandler in python?

Jiri Baum jiri at baum.com.au
Wed Feb 18 05:12:19 PST 2009


Hello,

Will Thompson:
> This is not at all obvious or documented. Sorry. :)

No worries. That's why I took my first job to be to write the howto :-)

> In principle, the handler for Channel.Type.DBusTube with
> Service='bar.baz' should take the bus name
> org.gnome.Empathy.DTubeHandler.bar.baz and have an object at
> /org/gnome/Empathy/DTubeHandler/bar/baz with the HandleTube() method,
> and then everything should work. However:

> * in old, pre-new-style-tubes Empathy, there was a bug in this code so
> that the service name was not escaped, and thus Empathy would construct
> an illegal object path and make libdbus assert. :D I'm not sure this was
> fixed before...

Thank you - that was the problem!

I'd been using 'au.com.baum.example' as both the service and the tube type, 
which was triggering the bug any time I got close to getting the rest of it 
right.

Works now, thank you!

(Note: I couldn't just change that to 'example', because then it wouldn't work 
as the service name in other circumstances; I just have to use separate 
strings for service and tube type. No problem, now that I know about it.)


Jiri
-- 
Jiri Baum <jiri at baum.com.au>                   http://www.baum.com.au/~jiri


More information about the telepathy mailing list