Home · All Classes · All Namespaces · Modules · Functions · Files |
The CapabilitiesBase class represents the capabilities a Connection or a Contact supports. More...
#include <TelepathyQt/CapabilitiesBase>
Inherited by Tp::ConnectionCapabilities, and Tp::ContactCapabilities.
Public Member Functions | |
CapabilitiesBase () | |
CapabilitiesBase (const CapabilitiesBase &other) | |
virtual | ~CapabilitiesBase () |
CapabilitiesBase & | operator= (const CapabilitiesBase &other) |
RequestableChannelClassSpecList | allClassSpecs () const |
bool | isSpecificToContact () const |
bool | textChats () const |
bool | audioCalls () const |
bool | videoCalls () const |
bool | videoCallsWithAudio () const |
bool | upgradingCalls () const |
TP_QT_DEPRECATED bool | streamedMediaCalls () const |
TP_QT_DEPRECATED bool | streamedMediaAudioCalls () const |
TP_QT_DEPRECATED bool | streamedMediaVideoCalls () const |
TP_QT_DEPRECATED bool | streamedMediaVideoCallsWithAudio () const |
TP_QT_DEPRECATED bool | upgradingStreamedMediaCalls () const |
bool | fileTransfers () const |
Protected Member Functions | |
CapabilitiesBase (bool specificToContact) | |
CapabilitiesBase (const RequestableChannelClassList &rccs, bool specificToContact) | |
CapabilitiesBase (const RequestableChannelClassSpecList &rccSpecs, bool specificToContact) | |
virtual void | updateRequestableChannelClasses (const RequestableChannelClassList &rccs) |
The CapabilitiesBase class represents the capabilities a Connection or a Contact supports.
Tp::CapabilitiesBase::CapabilitiesBase | ( | ) |
Construct a new CapabilitiesBase object.
Tp::CapabilitiesBase::CapabilitiesBase | ( | const CapabilitiesBase & | other | ) |
|
virtual |
Class destructor.
|
protected |
Construct a new CapabilitiesBase object.
specificToContact | Whether this object describes the capabilities of a particular contact. |
|
protected |
Construct a new CapabilitiesBase object using the given rccs.
rccs | RequestableChannelClassList representing the capabilities of a connection or contact. |
specificToContact | Whether this object describes the capabilities of a particular contact. |
|
protected |
Construct a new CapabilitiesBase object using the given rccSpecs.
rccSpecs | RequestableChannelClassSpecList representing the capabilities of a connection or contact. |
specificToContact | Whether this object describes the capabilities of a particular contact. |
CapabilitiesBase & Tp::CapabilitiesBase::operator= | ( | const CapabilitiesBase & | other | ) |
RequestableChannelClassSpecList Tp::CapabilitiesBase::allClassSpecs | ( | ) | const |
Return the list of requestable channel class spec representing the requests that can succeed.
This can be used by advanced clients to determine whether an unusually complex request would succeed. See the Telepathy specification for details of how to interpret the returned list.
The higher-level methods like textChats() are likely to be more useful to the majority of clients.
bool Tp::CapabilitiesBase::isSpecificToContact | ( | ) | const |
Return whether this object accurately describes the capabilities of a particular contact, or if it's only a guess based on the capabilities of the underlying connection.
In protocols like XMPP where each contact advertises their capabilities to others, Contact::capabilities() will generally return an object where this method returns true.
In protocols like SIP where contacts' capabilities are not known, Contact::capabilities() will return an object where this method returns false, whose methods textChats() etc. are based on what the underlying connection supports.
This reflects the fact that the best assumption an application can make is that every contact supports every channel type supported by the connection, while indicating that requests to communicate might fail if the contact does not actually have the necessary functionality.
true
if this object describes the capabilities of a particular contact, false
otherwise. bool Tp::CapabilitiesBase::textChats | ( | ) | const |
Return whether private text channels can be established by providing a contact identifier.
If the protocol is such that text chats can be established, but only via a more elaborate D-Bus API than normal (because more information is needed), then this method will return false.
true
if Account::ensureTextChat() can be expected to work, false
otherwise. bool Tp::CapabilitiesBase::audioCalls | ( | ) | const |
bool Tp::CapabilitiesBase::videoCalls | ( | ) | const |
bool Tp::CapabilitiesBase::videoCallsWithAudio | ( | ) | const |
bool Tp::CapabilitiesBase::upgradingCalls | ( | ) | const |
bool Tp::CapabilitiesBase::streamedMediaCalls | ( | ) | const |
Return whether private audio and/or video calls can be established by providing a contact identifier.
If the protocol is such that these calls can be established, but only via a more elaborate D-Bus API than normal (because more information is needed), then this method will return false.
true
if Account::ensureStreamedMediaCall() can be expected to work, false
otherwise. bool Tp::CapabilitiesBase::streamedMediaAudioCalls | ( | ) | const |
Return whether private audio calls can be established by providing a contact identifier.
Call upgradingCalls() to determine whether such calls are likely to be upgradable to have a video stream later.
If the protocol is such that these calls can be established, but only via a more elaborate D-Bus API than normal (because more information is needed), then this method will return false.
In some older connection managers, streamedMediaAudioCalls() and streamedMediaVideoCalls() might both return false, even though streamedMediaCalls() returns true. This indicates that only an older API is supported - clients of these connection managers must call Account::ensureStreamedMediaCall() to get an empty call, then add audio and/or video streams to it.
true
if Account::ensureStreamedMediaAudioCall() can be expected to work, false
otherwise. bool Tp::CapabilitiesBase::streamedMediaVideoCalls | ( | ) | const |
Return whether private video calls can be established by providing a contact identifier.
The same comments as for streamedMediaAudioCalls() apply to this method.
true
if Account::ensureStreamedMediaVideoCall() can be expected to work, if given false
as withAudio parameter, false
otherwise. bool Tp::CapabilitiesBase::streamedMediaVideoCallsWithAudio | ( | ) | const |
Return whether private video calls with audio can be established by providing a contact identifier.
The same comments as for streamedMediaAudioCalls() apply to this method.
true
if Account::ensureStreamedMediaVideoCall() can be expected to work, if given true
as withAudio parameter, false
otherwise. bool Tp::CapabilitiesBase::upgradingStreamedMediaCalls | ( | ) | const |
Return whether the protocol supports adding streams of a different type to ongoing media calls.
In some protocols and clients (such as XMPP Jingle), all calls potentially support both audio and video. This is indicated by returning true.
In other protocols and clients (such as MSN, and the variant of XMPP Jingle used by Google clients), the streams are fixed at the time the call is started, so if you will ever want video, you have to ask for it at the beginning, for instance with ensureStreamedMediaVideoCall(). This is indicated by returning false.
User interfaces can use this method as a UI hint. If it returns false, then a UI wishing to support both audio and video calls will have to provide separate "audio call" and "video call" buttons or menu items; if it returns true, a single button that makes an audio call is sufficient, because video can be added later.
(The underlying Telepathy feature is the ImmutableStreams property; if this method returns true, then ImmutableStreams is false, and vice versa).
true
if audio calls can be upgraded to audio + video, false
otherwise. bool Tp::CapabilitiesBase::fileTransfers | ( | ) | const |
Return whether file transfer can be established by providing a contact identifier
true
if file transfers can be expected to work, false
otherwise.
|
protectedvirtual |
Copyright © 2008-2011 Collabora Ltd. and Nokia Corporation | Telepathy-Qt 0.9.7 |