Telepathy D-Bus Interface Specification — v0.99.6

# Telepathy D-Bus Interface Specification

Interfaces (Compact) | Generic Types | Errors | Full Index

### Version 0.99.6

- Copyright © 2005-2014 Collabora Limited
- Copyright © 2005-2011 Nokia Corporation
- Copyright © 2006 INdT

This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version.

This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.

You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.

### Interfaces

- Connection Managers (Permalink)

A Connection Manager is a factory for connections.

- im.telepathy.v1.ConnectionManager
- im.telepathy.v1.ConnectionManager.Interface.AccountStorage1 (unstable)
- im.telepathy.v1.Protocol
- im.telepathy.v1.Protocol.Interface.Addressing1
- im.telepathy.v1.Protocol.Interface.Avatars1
- im.telepathy.v1.Protocol.Interface.Presence1
- Connection Object (Permalink)

Connections represent active protocol sessions. There are a number of core interfaces which all connections should implement, and a number of optional interfaces which provide various functionality related to contacts and to the connection itself.

- im.telepathy.v1.Connection
- im.telepathy.v1.Connection.Interface.Requests
- Contact list interfaces (Permalink)

On protocols that support contact lists, these interface expose the user's contact lists, along with presence subscription information, contact list groups (if supported), and the ability to block and unblock contacts (if supported).

- im.telepathy.v1.Connection.Interface.ContactList1
- im.telepathy.v1.Connection.Interface.ContactGroups1
- im.telepathy.v1.Connection.Interface.ContactBlocking1

- Contact metadata interfaces (Permalink)

These optional Connection interfaces expose metadata about contacts on this connection—from their current presence through to the type of client they're connected with—and allow the local user to publish such metadata back to their contacts.

- im.telepathy.v1.Connection.Interface.Aliasing1
- im.telepathy.v1.Connection.Interface.Avatars1
- im.telepathy.v1.Connection.Interface.ClientTypes1
- im.telepathy.v1.Connection.Interface.ContactCapabilities1
- im.telepathy.v1.Connection.Interface.ContactInfo1
- im.telepathy.v1.Connection.Interface.Location1
- im.telepathy.v1.Connection.Interface.Presence1
- im.telepathy.v1.Connection.Interface.Renaming1
- im.telepathy.v1.Connection.Interface.Resources1 (unstable)

- Connection feature interfaces (Permalink)

These optional Connection interfaces expose protocol-specific features, and allow configuring the running connection.

- im.telepathy.v1.Connection.Interface.Addressing1
- im.telepathy.v1.Connection.Interface.Anonymity1
- im.telepathy.v1.Connection.Interface.Balance1
- im.telepathy.v1.Connection.Interface.Cellular1
- im.telepathy.v1.Connection.Interface.CommunicationPolicy1 (unstable)
- im.telepathy.v1.Connection.Interface.Forwarding1 (unstable)
- im.telepathy.v1.Connection.Interface.Keepalive1 (unstable)
- im.telepathy.v1.Connection.Interface.MailNotification1
- im.telepathy.v1.Connection.Interface.PowerSaving1
- im.telepathy.v1.Connection.Interface.ServicePoint1
- im.telepathy.v1.Connection.Interface.Sidecars1
- im.telepathy.v1.Connection.Interface.IRCCommand1

- Channel Object (Permalink)

A Channel is used by Telepathy to exchange data between local applications and remote servers. A given connection will have many channels, each one represented by a D-Bus object.

Each Channel has a type, represented by a D-Bus interface, and may implement one or more additional interfaces from the list of channel interfaces below.

- im.telepathy.v1.Channel
- Channel Types (Permalink)

Each Channel implements one of the following types:

- im.telepathy.v1.Channel.Type.Call1
- im.telepathy.v1.Channel.Type.ContactSearch1
- im.telepathy.v1.Channel.Type.DBusTube1
- im.telepathy.v1.Channel.Type.FileTransfer1
- im.telepathy.v1.Channel.Type.RoomList1
- im.telepathy.v1.Channel.Type.ServerAuthentication1
- im.telepathy.v1.Channel.Type.ServerTLSConnection1
- im.telepathy.v1.Channel.Type.StreamTube1
- im.telepathy.v1.Channel.Type.Text

- Channel interfaces (Permalink)

A Channel may also implement one or more of the following interfaces, depending on its type. Some interfaces are only applicable to particular channel types, while others may (in principle) appear on any type of channel.

- im.telepathy.v1.Channel.Interface.Addressing1 (unstable)
- im.telepathy.v1.Channel.Interface.Anonymity1
- im.telepathy.v1.Channel.Interface.CaptchaAuthentication1
- im.telepathy.v1.Channel.Interface.Destroyable1
- im.telepathy.v1.Channel.Interface.FileTransfer.Metadata1
- im.telepathy.v1.Channel.Interface.Group1
- im.telepathy.v1.Channel.Interface.Password1
- im.telepathy.v1.Channel.Interface.Room1
- im.telepathy.v1.Channel.Interface.RoomConfig1
- im.telepathy.v1.Channel.Interface.SASLAuthentication1
- im.telepathy.v1.Channel.Interface.CredentialsStorage1 (unstable)
- im.telepathy.v1.Channel.Interface.Securable1
- im.telepathy.v1.Channel.Interface.ServicePoint1
- im.telepathy.v1.Channel.Interface.Subject1
- im.telepathy.v1.Channel.Interface.Picture1 (unstable)
- im.telepathy.v1.Channel.Interface.Tube1
- Text-specific interfaces (Permalink)

These interfaces may only appear on channels of type Text.

- im.telepathy.v1.Channel.Interface.ChatState1
- im.telepathy.v1.Channel.Interface.HTML1 (unstable)
- im.telepathy.v1.Channel.Interface.SMS1

- Call-related interfaces (Permalink)

These interfaces are only applicable to channels of type Call1.

- im.telepathy.v1.Channel.Interface.DTMF1
- im.telepathy.v1.Channel.Interface.Hold1

- Conference-related interfaces (Permalink)

These interfaces provide functionality for ad-hoc conference calls and chat rooms. They are primarily intended for Text and Call1 channels, but may also appear on other types of channel.

- im.telepathy.v1.Channel.Interface.Conference1
- im.telepathy.v1.Channel.Interface.Splittable1 (unstable)
- im.telepathy.v1.Channel.Interface.MergeableConference1 (unstable)

- Authentication Objects (Permalink)

A set of objects to be used for authentication purposes, such as TLS certificates or handshakes for negotiating end-to-end security.

- im.telepathy.v1.Authentication.TLSCertificate

- Calls (Permalink)

- im.telepathy.v1.Call1.Content
- im.telepathy.v1.Call1.Stream
- im.telepathy.v1.Call1.Content.Interface.DTMF1
- im.telepathy.v1.Call1.Interface.Mute (unstable)

- Call media interfaces (Permalink)

These interfaces are used when a Call1 channel doesn't have HardwareStreaming to implement the media streaming aspects of a call.

- im.telepathy.v1.Call1.Content.Interface.Media
- im.telepathy.v1.Call1.Content.Interface.VideoControl1
- im.telepathy.v1.Call1.Content.Interface.AudioControl1
- im.telepathy.v1.Call1.Content.MediaDescription
- im.telepathy.v1.Call1.Content.MediaDescription.Interface.RTPHeaderExtensions1
- im.telepathy.v1.Call1.Content.MediaDescription.Interface.RTCPFeedback1
- im.telepathy.v1.Call1.Content.MediaDescription.Interface.RTCPExtendedReports1
- im.telepathy.v1.Call1.Stream.Interface.Media
- im.telepathy.v1.Call1.Stream.Endpoint

- Debugging (Permalink)

- im.telepathy.v1.Debug1

- The Account Manager (Permalink)

The Account Manager is a desktop service that provides account configuration and can manage the connection managers. In general, clients will use the account manager to find out about instant messaging accounts and their associated connections.

- im.telepathy.v1.AccountManager
- im.telepathy.v1.AccountManager.Interface.Hidden1 (unstable)
- im.telepathy.v1.Account
- im.telepathy.v1.Account.Interface.Addressing1
- im.telepathy.v1.Account.Interface.Avatar1
- im.telepathy.v1.Account.Interface.Hidden1 (unstable)
- im.telepathy.v1.Account.Interface.Storage1
- im.telepathy.v1.Account.Interface.ExternalPasswordStorage1 (unstable)

- The Channel Dispatcher (Permalink)

The Channel Dispatcher is a desktop service whose purpose is to dispatch incoming Telepathy Channels to the appropriate client (e.g. incoming text chat, file transfer, tubes, etc.).

- im.telepathy.v1.ChannelDispatcher
- im.telepathy.v1.ChannelDispatcher.Interface.Messages1
- im.telepathy.v1.ChannelDispatcher.Interface.OperationList1
- im.telepathy.v1.ChannelDispatchOperation
- im.telepathy.v1.ChannelRequest

- Clients (Permalink)

Clients should implement one or more of these interfaces to be able to handle channels coming in from the Channel Dispatcher.

- im.telepathy.v1.Client
- im.telepathy.v1.Client.Observer
- im.telepathy.v1.Client.Approver
- im.telepathy.v1.Client.Handler
- im.telepathy.v1.Client.Handler.FUTURE (unstable)
- im.telepathy.v1.Client.Interface.Requests

### Other

- Generic Types
- Errors