File transfer in Telepathy is handled using a Channel.Type.FileTransfer channel.
The connection manager carries out file transfer via the most appropriate mechanism, depending on the protocol. Connection Managers do not know about accessing files or URLs, and it is not possible to pass file descriptors across D-Bus, so transfer between the client and the connection manager is done using a local socket (e.g. a UNIX socket or local IPv4 socket).
The lifetime of a file transfer channel goes through several states: Pending, Accepted, Open and Completed (or Cancelled). This is shown in Figure 9-1.