[Telepathy] New Connection Manager

Guillaume Desmottes guillaume.desmottes at collabora.co.uk
Wed Dec 17 03:48:18 PST 2008

Le mercredi 17 décembre 2008 à 11:09 +0200, Ralf Kistner a écrit :
> I got file transfers to work with the example Python script, 


> but I'm still having trouble with Empathy.
> The problem is that the 'Send file' option is disabled in the user menu, so it seems like a capability discovery problem.

At the moment, Empathy just check the RequestableChannelClasses on the
Requests interface. The code is in empathy-tp-contact-factory :

It just check the ChannelType and TargetHandleType so that should work
with your CM.

> In the requests interface, I return the following in RequestableChannelClasses for the file transfer channel:
> Fixed:
> 'org.freedesktop.Telepathy.Channel.TargetHandleType': 1
> 'org.freedesktop.Telepathy.Channel.ChannelType': 'org.freedesktop.Telepathy.Channel.Type.FileTransfer.DRAFT'
> Allowed:
> 'org.freedesktop.Telepathy.Channel.TargetHandle'
> 'org.freedesktop.Telepathy.Channel.TargetHandleID'
> 'org.freedesktop.Telepathy.Channel.Type.FileTransfer.DRAFT.Filename'
> 'org.freedesktop.Telepathy.Channel.Type.FileTransfer.DRAFT.ContentType'
> 'org.freedesktop.Telepathy.Channel.Type.FileTransfer.DRAFT.Size'
> 'org.freedesktop.Telepathy.Channel.Type.FileTransfer.DRAFT.Description'
> 'org.freedesktop.Telepathy.Channel.Type.FileTransfer.DRAFT.InitialOffset'
> I also started implementing the capabilities interface, and I return the following for each requested handle:
> (dbus.UInt32(handle_id), 'org.freedesktop.Telepathy.Channel.Type.ContactList', 3, 0)
> (dbus.UInt32(handle_id), 'org.freedesktop.Telepathy.Channel.Type.FileTransfer.DRAFT', 3, 0)
> (dbus.UInt32(handle_id), 'org.freedesktop.Telepathy.Channel.Type.Text', 3, 0)
> However, this seems to have no effect on what is available in Empathy.

Are you talking about
org.freedesktop.Telepathy.Connection.Interface.ContactCapabilities.DRAFT ?
Empathy doesn't use it yet. See

> Is there a mistake in my implementation, or do I have additional interfaces I need to implement? What version of the spec does Empathy use? Any help would be appreciated.

Looks good. Maybe add some print debug in Empathy's code to try to
understand what's the problem?


More information about the Telepathy mailing list