Tp::Client::CallStreamInterface Class Reference

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

Public Slots | Signals | Public Member Functions | Static Public Member Functions | Protected Member Functions | List of all members
Tp::Client::CallStreamInterface Class Reference

`#include <TelepathyQt/CallStream>`

Inherits Tp::AbstractInterface.

## Public Slots
QDBusPendingReply | SetSending (bool send, int timeout=-1)
QDBusPendingReply | RequestReceiving (uint contact, bool receive, int timeout=-1)

## Signals
void | RemoteMembersChanged (const Tp::ContactSendingStateMap &updates, const Tp::HandleIdentifierMap &identifiers, const Tp::UIntList &removed, const Tp::CallStateReason &reason)
void | LocalSendingStateChanged (uint state, const Tp::CallStateReason &reason)
Signals inherited from Tp::AbstractInterface
void | propertiesChanged (const QVariantMap &changedProperties, const QStringList &invalidatedProperties)

## Public Member Functions
| CallStreamInterface (const QString &busName, const QString &objectPath, QObject *parent=0)
| CallStreamInterface (const QDBusConnection &connection, const QString &busName, const QString &objectPath, QObject *parent=0)
| CallStreamInterface (Tp::DBusProxy *proxy)
Tp::PendingVariant * | requestPropertyInterfaces () const
Tp::PendingVariant * | requestPropertyRemoteMembers () const
Tp::PendingVariant * | requestPropertyRemoteMemberIdentifiers () const
Tp::PendingVariant * | requestPropertyLocalSendingState () const
Tp::PendingVariant * | requestPropertyCanRequestReceiving () const
Tp::PendingVariantMap * | requestAllProperties () const
Public Member Functions inherited from Tp::AbstractInterface
virtual | ~AbstractInterface ()
bool | isValid () const
QString | invalidationReason () const
QString | invalidationMessage () const
void | setMonitorProperties (bool monitorProperties)
bool | isMonitoringProperties () const

## Static Public Member Functions
static QLatin1String | staticInterfaceName ()

## Protected Member Functions
virtual void | invalidate (Tp::DBusProxy *, const QString &, const QString &)
Protected Member Functions inherited from Tp::AbstractInterface
| AbstractInterface (DBusProxy *proxy, const QLatin1String &interface)
| AbstractInterface (const QString &busName, const QString &path, const QLatin1String &interface, const QDBusConnection &connection, QObject *parent)
PendingVariant * | internalRequestProperty (const QString &name) const
PendingOperation * | internalSetProperty (const QString &name, const QVariant &newValue)
PendingVariantMap * | internalRequestAllProperties () const

## Additional Inherited Members
Protected Slots inherited from Tp::AbstractInterface

## Detailed Description

Proxy class providing a 1:1 mapping of the D-Bus interface "org.freedesktop.Telepathy.Call1.Stream".

## Constructor & Destructor Documentation

Tp::Client::CallStreamInterface::CallStreamInterface | ( | const QString & | busName,
|  | const QString & | objectPath,
|  | QObject * | parent = `0`
| ) |  |

Creates a CallStreamInterface associated with the given object on the session bus.

Parameters

  busName | Name of the service the object is on.
  objectPath | Path to the object on the service.
  parent | Passed to the parent class constructor.

Tp::Client::CallStreamInterface::CallStreamInterface | ( | const QDBusConnection & | connection,
|  | const QString & | busName,
|  | const QString & | objectPath,
|  | QObject * | parent = `0`
| ) |  |

Creates a CallStreamInterface associated with the given object on the given bus.

Parameters

  connection | The bus via which the object can be reached.
  busName | Name of the service the object is on.
  objectPath | Path to the object on the service.
  parent | Passed to the parent class constructor.

Tp::Client::CallStreamInterface::CallStreamInterface | ( | Tp::DBusProxy * | proxy | ) |

Creates a CallStreamInterface associated with the same object as the given proxy.

Parameters

  proxy | The proxy to use. It will also be the QObject::parent() for this object.

## Member Function Documentation

static QLatin1String Tp::Client::CallStreamInterface::staticInterfaceName | ( |  | ) |
| inlinestatic

Returns the name of the interface "org.freedesktop.Telepathy.Call1.Stream", which this class represents.

Returns
  The D-Bus interface name.

Tp::PendingVariant* Tp::Client::CallStreamInterface::requestPropertyInterfaces | ( |  | ) | const
| inline

Asynchronous getter for the remote object property `Interfaces` of type `QStringList`.

Extra interfaces provided by this stream, such as CallStreamInterfaceMediaInterface . This SHOULD NOT include the Stream interface itself, and cannot change once the stream has been created.

Returns
  A pending variant which will emit finished when the property has been retrieved.

Tp::PendingVariant* Tp::Client::CallStreamInterface::requestPropertyRemoteMembers | ( |  | ) | const
| inline

Asynchronous getter for the remote object property `RemoteMembers` of type `Tp::ContactSendingStateMap`.

A map from remote contacts to their sending state.

Media sent to this stream will be sent to all members listed here. All members listed here will also appear in ChannelTypeCallInterface::CallMembers , and each CallMembers member will be listed in at most one Stream per Content. Therefore, to hide things from a member of the call, UIs only need to mute one Stream per Content.

Contacts' handles in this map indicate whether they are sending media to this stream. Sending_State_Pending_Send indicates contacts who are not sending but have been asked to do so. The local user's sending state is shown in LocalSendingState .

This mapping is also used by the streaming implementation to map from CallContentMediaDescriptionInterface s to Streams. In this use-case, all of the senders in this stream will be represented in CallContentInterfaceMediaInterface::RemoteMediaDescriptions . This use-case should not affect anything that does not handle media streaming.

Returns
  A pending variant which will emit finished when the property has been retrieved.

Tp::PendingVariant* Tp::Client::CallStreamInterface::requestPropertyRemoteMemberIdentifiers | ( |  | ) | const
| inline

Asynchronous getter for the remote object property `RemoteMemberIdentifiers` of type `Tp::HandleIdentifierMap`.

The string identifiers for handles mentioned in RemoteMembers, to give clients the minimal information necessary to create contacts without waiting for round-trips.

Returns
  A pending variant which will emit finished when the property has been retrieved.

Tp::PendingVariant* Tp::Client::CallStreamInterface::requestPropertyLocalSendingState | ( |  | ) | const
| inline

Asynchronous getter for the remote object property `LocalSendingState` of type `uint`.

The local user's sending state. Media sent on this stream should be assumed to be received, directly or indirectly, by every other contact in the RemoteMembers mapping. Change notification is given via the LocalSendingStateChanged() signal.

Implementations of the first Call draft had the self handle in the RemoteMembers (then called Members) map and this showed that it's annoying having to keep track of the self handle so that it can be special-cased.

A value of Pending_Send for this property indicates that the other side requested the local user start sending media (which can be done by calling either SetSending() or ChannelTypeCallInterface::Accept() ).

When ChannelTypeCallInterface::Accept() is called, all streams with a local sending state of Pending_Send and the associated CallContentInterface::Disposition set to Initial are automatically set to sending.

Returns
  A pending variant which will emit finished when the property has been retrieved.

Tp::PendingVariant* Tp::Client::CallStreamInterface::requestPropertyCanRequestReceiving | ( |  | ) | const
| inline

Asynchronous getter for the remote object property `CanRequestReceiving` of type `bool`.

If true, the user can request that a remote contact starts sending on this stream.

Not all protocols allow the user to ask the other side to start sending media.

Returns
  A pending variant which will emit finished when the property has been retrieved.

Tp::PendingVariantMap* Tp::Client::CallStreamInterface::requestAllProperties | ( |  | ) | const
| inline

Request all of the DBus properties on the interface.

Returns
  A pending variant map which will emit finished when the properties have been retrieved.

QDBusPendingReply Tp::Client::CallStreamInterface::SetSending | ( | bool | send,
|  | int | timeout = `-1`
| ) |  |
| inlineslot

Begins a call to the D-Bus method `SetSending` on the remote object.

Set the stream to start or stop sending media from the local user to other contacts.

Note that timeout is ignored as of now. It will be used once http://bugreports.qt.nokia.com/browse/QTBUG-11775 is fixed.

Parameters

  send | If True, the LocalSendingState should change to Sending, if it isn't already. If False, the LocalSendingState should change to None, if it isn't already.
  timeout | The timeout in milliseconds.

QDBusPendingReply Tp::Client::CallStreamInterface::RequestReceiving | ( | uint | contact,
|  | bool | receive,
|  | int | timeout = `-1`
| ) |  |
| inlineslot

Begins a call to the D-Bus method `RequestReceiving` on the remote object.

Request that a remote contact stops or starts sending on this stream. The CanRequestReceiving property defines whether the protocol allows the local user to request the other side start sending on this stream.

Note that timeout is ignored as of now. It will be used once http://bugreports.qt.nokia.com/browse/QTBUG-11775 is fixed.

Parameters

  contact | Contact from which sending is requested
  receive | If true, request that the given contact starts to send media. If false, request that the given contact stops sending media.
  timeout | The timeout in milliseconds.

void Tp::Client::CallStreamInterface::RemoteMembersChanged | ( | const Tp::ContactSendingStateMap & | updates,
|  | const Tp::HandleIdentifierMap & | identifiers,
|  | const Tp::UIntList & | removed,
|  | const Tp::CallStateReason & | reason
| ) |  |
| signal

Represents the signal `RemoteMembersChanged` on the remote object.

Emitted when RemoteMembers changes.

Parameters

  updates |
      A mapping from channel-specific handles to their updated sending
      state, whose keys include at least the members who were added, and
      the members whose states changed.
  identifiers | The identifiers of the contacts in the Updates map.
  removed |
      The channel-specific handles that were removed from the keys of the
      RemoteMembers property, as a result of the contact leaving this
      stream
  reason |
      A structured reason for the change.

void Tp::Client::CallStreamInterface::LocalSendingStateChanged | ( | uint | state,
|  | const Tp::CallStateReason & | reason
| ) |  |
| signal

Represents the signal `LocalSendingStateChanged` on the remote object.

Emitted when LocalSendingState changes.

Parameters

  state |
      The new value of LocalSendingState.
  reason |
      A structured reason for the change.

void Tp::Client::CallStreamInterface::invalidate | ( | Tp::DBusProxy * | proxy,
|  | const QString & | error,
|  | const QString & | message
| ) |  |
| protectedvirtual

Reimplemented from Tp::AbstractInterface.