Home · All Classes · All Namespaces · Modules · Functions · Files

StreamedMediaChannel Class Reference
[Channel proxies]

#include <TelepathyQt4/StreamedMediaChannel>

Inherits Tp::Channel.

List of all members.

Signals

Public Member Functions

Static Public Member Functions

Static Public Attributes

Protected Member Functions


Detailed Description

High-level proxy object for accessing remote Channel objects of the StreamedMedia channel type.

Constructor & Destructor Documentation

~StreamedMediaChannel (  )  [virtual]

Class destructor.

StreamedMediaChannel ( const ConnectionPtr connection,
const QString &  objectPath,
const QVariantMap &  immutableProperties 
) [protected]

Creates a StreamedMediaChannel associated with the given object on the same service as the given connection.

Parameters:
connection Connection owning this StreamedMediaChannel, and specifying the service.
objectPath Path to the object on the service.
immutableProperties The immutable properties of the channel, as signalled by NewChannels or returned by CreateChannel or EnsureChannel


Member Function Documentation

StreamedMediaChannelPtr create ( const ConnectionPtr connection,
const QString &  objectPath,
const QVariantMap &  immutableProperties 
) [static]

Reimplemented from Channel.

MediaStreams streams (  )  const

Return a list of streams in this channel. This list is empty unless the FeatureStreams Feature has been enabled.

Streams are added to the list when they are received; the streamAdded signal is emitted.

Returns:
The streams in this channel.

MediaStreams streamsForType ( MediaStreamType  type  )  const

bool awaitingLocalAnswer (  )  const

bool awaitingRemoteAnswer (  )  const

PendingOperation * acceptCall (  ) 

PendingOperation * removeStream ( const MediaStreamPtr stream  ) 

Remove the specified stream from this channel.

Parameters:
stream Stream to remove.
Returns:
A PendingOperation which will emit PendingOperation::finished when the call has finished.

PendingOperation * removeStreams ( const MediaStreams streams  ) 

Remove the specified streams from this channel.

Parameters:
streams List of streams to remove.
Returns:
A PendingOperation which will emit PendingOperation::finished when the call has finished.

PendingMediaStreams * requestStream ( const ContactPtr contact,
MediaStreamType  type 
)

PendingMediaStreams * requestStreams ( const ContactPtr contact,
QList< MediaStreamType types 
)

bool handlerStreamingRequired (  )  const

Check whether media streaming by the handler is required for this channel.

For channels with the MediaSignalling interface, the main handler of the channel is responsible for doing the actual streaming, for instance by calling Tp::createFarsightChannel(channel) from TelepathyQt4-Farsight library and using the telepathy-farsight API on the resulting TfChannel.

Returns:
true if required, false otherwise.

LocalHoldState localHoldState (  )  const

Return whether the local user has placed this channel on hold.

This method requires StreamedMediaChannel::FeatureHoldState to be enabled.

Returns:
The channel local hold state.
See also:
requestHold()

LocalHoldStateReason localHoldStateReason (  )  const

Return the reason why localHoldState() changed to its current value.

This method requires StreamedMediaChannel::FeatureLocalHoldState to be enabled.

Returns:
The channel local hold state reason.
See also:
requestHold()

PendingOperation * requestHold ( bool  hold  ) 

Request that the channel be put on hold (be instructed not to send any media streams to you) or be taken off hold.

If the connection manager can immediately tell that the requested state change could not possibly succeed, the resulting PendingOperation will fail with error code TELEPATHY_ERROR_NOT_AVAILABLE. If the requested state is the same as the current state, the resulting PendingOperation will finish successfully.

Otherwise, the channel's local hold state will change to Tp::LocalHoldStatePendingHold or Tp::LocalHoldStatePendingUnhold (as appropriate), then the resulting PendingOperation will finish successfully.

The eventual success or failure of the request is indicated by a subsequent localHoldStateChanged() signal, changing the local hold state to Tp::LocalHoldStateHeld or Tp::LocalHoldStateUnheld.

If the channel has multiple streams, and the connection manager succeeds in changing the hold state of one stream but fails to change the hold state of another, it will attempt to revert all streams to their previous hold states.

If the channel does not support the TELEPATHY_INTERFACE_CHANNEL_INTERFACE_HOLD interface, the PendingOperation will fail with error code TELEPATHY_ERROR_NOT_IMPLEMENTED.

Parameters:
hold A boolean indicating whether or not the channel should be on hold
Returns:
A PendingOperation, which will emit PendingOperation::finished when the request finishes.
See also:
localHoldState(), localHoldStateReason()

void streamAdded ( const Tp::MediaStreamPtr stream  )  [signal]

void streamRemoved ( const Tp::MediaStreamPtr stream  )  [signal]

void streamDirectionChanged ( const Tp::MediaStreamPtr stream,
Tp::MediaStreamDirection  direction,
Tp::MediaStreamPendingSend  pendingSend 
) [signal]

void streamStateChanged ( const Tp::MediaStreamPtr stream,
Tp::MediaStreamState   
) [signal]

void streamError ( const Tp::MediaStreamPtr stream,
Tp::MediaStreamError  errorCode,
const QString &  errorMessage 
) [signal]

void localHoldStateChanged ( Tp::LocalHoldState  state,
Tp::LocalHoldStateReason  reason 
) [signal]


Member Data Documentation

const Feature FeatureStreams [static]


Copyright © 2009 Collabora Ltd. and Nokia Corporation
Telepathy-Qt4 0.1.10