Telepathy

From OLPC
Revision as of 14:20, 2 February 2008 by Morgs (talk | contribs) (Add interesting content)
Jump to: navigation, search
Telepathy.png

Overview

Telepathy is a framework for real-time conversations, including instant messaging, IRC, voice calls and video calls. It provides a modular approach to implementing these types of communications, so that applications do not have to reimplement common functionality.

Telepathy uses the D-Bus IPC system between components, allowing development of new components in any language, to conform to the Telepathy D-Bus specification. This means that Telepathy components can be added to existing applications which can talk D-Bus, without a hard dependency.

Telepathy is supported by Collabora Ltd

Connection Managers

Telepathy Connection Managers (CMs) provide the back ends for protocols. Since these are modular, a Telepathy-enabled application can use whichever CMs are available, providing they support the appropriate interfaces.

Used by OLPC

OLPC uses the following CMs:

See Shared Sugar Activities for an overview of activity collaboration, and Presence Service to see how the Sugar stack interfaces with these Telepathy CMs.

See Activity Sharing for some historical discussion on the rationale of using Telepathy for OLPC.

Other CMs

In addition, there are CMs implemented for the following protocols:

  • Idle: IRC
  • Telepathy-SofiaSIP: SIP
  • Butterfly: MSN
  • Haze: uses libpurple to provide all the protocols that Pidgin supports (AIM, ICQ, Yahoo, MSN...)

More Telepathy Documentation

The Telepathy wiki has documentation. In particular, see the following documents:

Telepathy Spec

At the core of Telepathy is the DBus interface specification which describes how Telepathy components communicate with each other. See Telepathy D-Bus Interface Specification for the current version.

Telepathy Architecture

See Telepathy Framework Architecture.