Call1.Content — Telepathy D-Bus Interface Specification

# Interface Call1.Content

Interface Index (Compact) | Summary | Description | Methods | Signals | Properties | Types

### Methods

Remove | () | → | nothing |

### Signals

StreamsAdded | (ao: Streams) |
StreamsRemoved | (ao: Streams, (uuss): Reason) |

### Properties

Interfaces | as (DBus_Interface_List) | Read only | Immutable |
Name | s | Read only | Immutable |
Type | u (Media_Stream_Type) | Read only | Immutable |
Disposition | u (Call_Content_Disposition) | Read only | Immutable |
Streams | ao | Read only |  |

### Types

Call_Content_Disposition | Enum | u |

Added in 0.25.2. (as stable API)

### Description

This object represents one Content inside a Call1. For example, in an audio/video call there would be one audio content and one video content. Each content has one or more Stream objects which represent the actual transport to one or more remote contacts.

##### Rationale:

There are two cases where multiple streams may happen:

- Calls with more than two participants, if the protocol does not support multicast, and does not have mixer proxy.
- With jingle, when calling a contact connected from multiple resources, a stream is created for each resource. Once the remote contact answered from one of its resources, all other streams get removed.

For protocols that support muting all streams of a given content separately, this object MAY also implement the Mute interface

# Methods

(Permalink)

## Remove () → nothing

Changed in 0.21.2. previously there were no arguments
Remove the content from the call. This will cause Call1.ContentRemoved((self_handle, User_Requested, "", "")) to be emitted.

### Possible Errors

- Network Error
Raised when there is an error reading from or writing to the network.
- Not Implemented
Raised when a Call doesn't support removing contents (e.g. a Google Talk video call).

# Signals

(Permalink)

## StreamsAdded (ao: Streams)

Changed in 0.21.2. plural version, renamed from StreamAdded

### Parameters

- Streams — ao
The Streams which were added.

Emitted when streams are added to a call.

(Permalink)

## StreamsRemoved (ao: Streams, (uuss): Reason)

Changed in 0.21.2. plural version, renamed from StreamRemoved

### Parameters

- Streams — ao
The Streams which were removed.
- Reason — (uuss) (Call_State_Reason)
Why the content was removed.

Emitted when streams are removed from a call

# Properties

Accessed using the org.freedesktop.DBus.Properties interface.
(Permalink)

## Interfaces — as (DBus_Interface_List)

Read only
This property is immutable which means that it can never change.
Added in 0.19.11.

Extra interfaces provided by this content, such as Content.Interface.Media, Interface.Hold or Interface.Mute. This SHOULD NOT include the Content interface itself, and cannot change once the content has been created.

(Permalink)

## Name — s

Read only
This property is immutable which means that it can never change.

The name of the content.

##### Rationale:

The content name property should be meaningful, so should be given a name which is significant to the user. The name could be the "audio" or "video" string localized, or perhaps include some string identifying the source, such as a webcam identifier.
(Permalink)

## Type — u (Media_Stream_Type)

Read only
This property is immutable which means that it can never change.

The media type of this content.

(Permalink)

## Disposition — u (Call_Content_Disposition)

Read only
This property is immutable which means that it can never change.
The disposition of this content.
(Permalink)

## Streams — ao

Read only

The list of Stream objects that exist in this content.

##### Rationale:

In a conference call multiple parties can share one media content (say, audio), but the streaming of that media can either be shared or separate. For example, in a multicast conference all contacts would share one stream, while in a Muji conference there would be a stream for each participant.

Change notification is through the StreamsAdded and StreamsRemoved signals.

# Types

Enum (Permalink)

## Call_Content_Disposition — u

The disposition of this content, which defines whether to automatically start sending data on the streams when Accept is called on the channel.

- None (0)
The content has no specific disposition.
- Initial (1)

The content was initially part of the call. When Accept is called on the channel, all streams of this content with LocalSendingState set to Pending_Send will be moved to Sending as if SetSending (True) had been called.