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

Signals | Public Member Functions | Static Public Member Functions | Static Public Attributes | Protected Member Functions | Properties
Tp::Account Class Reference
Account proxies

The Account class represents a Telepathy account. More...

`#include <TelepathyQt/Account>`

Inherits Tp::StatelessDBusProxy, and Tp::OptionalInterfaceFactory< Account >.

List of all members.

## Signals

- void removed ()
- void serviceNameChanged (const QString &serviceName)
- void profileChanged (const Tp::ProfilePtr &profile)
- void displayNameChanged (const QString &displayName)
- void iconNameChanged (const QString &iconName)
- void nicknameChanged (const QString &nickname)
- void normalizedNameChanged (const QString &normalizedName)
- void validityChanged (bool validity)
- void stateChanged (bool state)
- void capabilitiesChanged (const Tp::ConnectionCapabilities &capabilities)
- void connectsAutomaticallyPropertyChanged (bool connectsAutomatically)
- void firstOnline ()
- void parametersChanged (const QVariantMap &parameters)
- void changingPresence (bool value)
- void automaticPresenceChanged (const Tp::Presence &automaticPresence)
- void currentPresenceChanged (const Tp::Presence &currentPresence)
- void requestedPresenceChanged (const Tp::Presence &requestedPresence)
- void onlinenessChanged (bool online)
- void avatarChanged (const Tp::Avatar &avatar)
- void connectionStatusChanged (Tp::ConnectionStatus status)
- void connectionChanged (const Tp::ConnectionPtr &connection)

## Public Member Functions

- virtual ~Account ()
- ConnectionFactoryConstPtr connectionFactory () const
- ChannelFactoryConstPtr channelFactory () const
- ContactFactoryConstPtr contactFactory () const
- bool isValidAccount () const
- bool isEnabled () const
- PendingOperation * setEnabled (bool value)
- QString cmName () const
- QString protocolName () const
- QString serviceName () const
- PendingOperation * setServiceName (const QString &value)
- ProfilePtr profile () const
- QString displayName () const
- PendingOperation * setDisplayName (const QString &value)
- QString iconName () const
- PendingOperation * setIconName (const QString &value)
- QString nickname () const
- PendingOperation * setNickname (const QString &value)
- AvatarSpec avatarRequirements () const
- const Avatar & avatar () const
- PendingOperation * setAvatar (const Avatar &avatar)
- QVariantMap parameters () const
- PendingStringList * updateParameters (const QVariantMap &set, const QStringList &unset)
- ProtocolInfo protocolInfo () const
- ConnectionCapabilities capabilities () const
- bool connectsAutomatically () const
- PendingOperation * setConnectsAutomatically (bool value)
- bool hasBeenOnline () const
- ConnectionStatus connectionStatus () const
- ConnectionStatusReason connectionStatusReason () const
- QString connectionError () const
- Connection::ErrorDetails connectionErrorDetails () const
- ConnectionPtr connection () const
- bool isChangingPresence () const
- PresenceSpecList allowedPresenceStatuses (bool includeAllStatuses=false) const
- uint maxPresenceStatusMessageLength () const
- Presence automaticPresence () const
- PendingOperation * setAutomaticPresence (const Presence &presence)
- Presence currentPresence () const
- Presence requestedPresence () const
- PendingOperation * setRequestedPresence (const Presence &presence)
- bool isOnline () const
- QString uniqueIdentifier () const
- QString normalizedName () const
- PendingOperation * reconnect ()
- PendingOperation * remove ()
- bool supportsRequestHints () const
- bool requestsSucceedWithChannel () const
- PendingChannelRequest * ensureTextChat (const QString &contactIdentifier, const QDateTime &userActionTime=QDateTime::currentDateTime(), const QString &preferredHandler=QString(), const ChannelRequestHints &hints=ChannelRequestHints())
- PendingChannelRequest * ensureTextChat (const ContactPtr &contact, const QDateTime &userActionTime=QDateTime::currentDateTime(), const QString &preferredHandler=QString(), const ChannelRequestHints &hints=ChannelRequestHints())
- PendingChannelRequest * ensureTextChatroom (const QString &roomName, const QDateTime &userActionTime=QDateTime::currentDateTime(), const QString &preferredHandler=QString(), const ChannelRequestHints &hints=ChannelRequestHints())
- PendingChannelRequest * ensureAudioCall (const QString &contactIdentifier, const QString &initialAudioContentName=QString(), const QDateTime &userActionTime=QDateTime::currentDateTime(), const QString &preferredHandler=QString(), const ChannelRequestHints &hints=ChannelRequestHints())
- PendingChannelRequest * ensureAudioCall (const ContactPtr &contact, const QString &initialAudioContentName=QString(), const QDateTime &userActionTime=QDateTime::currentDateTime(), const QString &preferredHandler=QString(), const ChannelRequestHints &hints=ChannelRequestHints())
- PendingChannelRequest * ensureVideoCall (const QString &contactIdentifier, const QString &initialVideoContentName=QString(), const QDateTime &userActionTime=QDateTime::currentDateTime(), const QString &preferredHandler=QString(), const ChannelRequestHints &hints=ChannelRequestHints())
- PendingChannelRequest * ensureVideoCall (const ContactPtr &contact, const QString &initialVideoContentName=QString(), const QDateTime &userActionTime=QDateTime::currentDateTime(), const QString &preferredHandler=QString(), const ChannelRequestHints &hints=ChannelRequestHints())
- PendingChannelRequest * ensureAudioVideoCall (const QString &contactIdentifier, const QString &initialAudioContentName=QString(), const QString &initialVideoContentName=QString(), const QDateTime &userActionTime=QDateTime::currentDateTime(), const QString &preferredHandler=QString(), const ChannelRequestHints &hints=ChannelRequestHints())
- PendingChannelRequest * ensureAudioVideoCall (const ContactPtr &contact, const QString &initialAudioContentName=QString(), const QString &initialVideoContentName=QString(), const QDateTime &userActionTime=QDateTime::currentDateTime(), const QString &preferredHandler=QString(), const ChannelRequestHints &hints=ChannelRequestHints())
- PendingChannelRequest * ensureStreamedMediaCall (const QString &contactIdentifier, const QDateTime &userActionTime=QDateTime::currentDateTime(), const QString &preferredHandler=QString(), const ChannelRequestHints &hints=ChannelRequestHints())
- PendingChannelRequest * ensureStreamedMediaCall (const ContactPtr &contact, const QDateTime &userActionTime=QDateTime::currentDateTime(), const QString &preferredHandler=QString(), const ChannelRequestHints &hints=ChannelRequestHints())
- PendingChannelRequest * ensureStreamedMediaAudioCall (const QString &contactIdentifier, const QDateTime &userActionTime=QDateTime::currentDateTime(), const QString &preferredHandler=QString(), const ChannelRequestHints &hints=ChannelRequestHints())
- PendingChannelRequest * ensureStreamedMediaAudioCall (const ContactPtr &contact, const QDateTime &userActionTime=QDateTime::currentDateTime(), const QString &preferredHandler=QString(), const ChannelRequestHints &hints=ChannelRequestHints())
- PendingChannelRequest * ensureStreamedMediaVideoCall (const QString &contactIdentifier, bool withAudio=true, const QDateTime &userActionTime=QDateTime::currentDateTime(), const QString &preferredHandler=QString(), const ChannelRequestHints &hints=ChannelRequestHints())
- PendingChannelRequest * ensureStreamedMediaVideoCall (const ContactPtr &contact, bool withAudio=false, const QDateTime &userActionTime=QDateTime::currentDateTime(), const QString &preferredHandler=QString(), const ChannelRequestHints &hints=ChannelRequestHints())
- PendingChannelRequest * createFileTransfer (const QString &contactIdentifier, const FileTransferChannelCreationProperties &properties, const QDateTime &userActionTime=QDateTime::currentDateTime(), const QString &preferredHandler=QString(), const ChannelRequestHints &hints=ChannelRequestHints())
- PendingChannelRequest * createFileTransfer (const ContactPtr &contact, const FileTransferChannelCreationProperties &properties, const QDateTime &userActionTime=QDateTime::currentDateTime(), const QString &preferredHandler=QString(), const ChannelRequestHints &hints=ChannelRequestHints())
- PendingChannelRequest * createStreamTube (const QString &contactIdentifier, const QString &service, const QDateTime &userActionTime=QDateTime::currentDateTime(), const QString &preferredHandler=QString(), const ChannelRequestHints &hints=ChannelRequestHints())
- PendingChannelRequest * createStreamTube (const ContactPtr &contact, const QString &service, const QDateTime &userActionTime=QDateTime::currentDateTime(), const QString &preferredHandler=QString(), const ChannelRequestHints &hints=ChannelRequestHints())
- PendingChannelRequest * createConferenceStreamedMediaCall (const QList< ChannelPtr > &channels, const QStringList &initialInviteeContactsIdentifiers=QStringList(), const QDateTime &userActionTime=QDateTime::currentDateTime(), const QString &preferredHandler=QString(), const ChannelRequestHints &hints=ChannelRequestHints())
- PendingChannelRequest * createConferenceStreamedMediaCall (const QList< ChannelPtr > &channels, const QList< ContactPtr > &initialInviteeContacts=QList< ContactPtr >(), const QDateTime &userActionTime=QDateTime::currentDateTime(), const QString &preferredHandler=QString(), const ChannelRequestHints &hints=ChannelRequestHints())
- PendingChannelRequest * createConferenceTextChat (const QList< ChannelPtr > &channels, const QList< ContactPtr > &initialInviteeContacts=QList< ContactPtr >(), const QDateTime &userActionTime=QDateTime::currentDateTime(), const QString &preferredHandler=QString(), const ChannelRequestHints &hints=ChannelRequestHints())
- PendingChannelRequest * createConferenceTextChat (const QList< ChannelPtr > &channels, const QStringList &initialInviteeContactsIdentifiers=QStringList(), const QDateTime &userActionTime=QDateTime::currentDateTime(), const QString &preferredHandler=QString(), const ChannelRequestHints &hints=ChannelRequestHints())
- PendingChannelRequest * createConferenceTextChatroom (const QString &roomName, const QList< ChannelPtr > &channels, const QStringList &initialInviteeContactsIdentifiers=QStringList(), const QDateTime &userActionTime=QDateTime::currentDateTime(), const QString &preferredHandler=QString(), const ChannelRequestHints &hints=ChannelRequestHints())
- PendingChannelRequest * createConferenceTextChatroom (const QString &roomName, const QList< ChannelPtr > &channels, const QList< ContactPtr > &initialInviteeContacts=QList< ContactPtr >(), const QDateTime &userActionTime=QDateTime::currentDateTime(), const QString &preferredHandler=QString(), const ChannelRequestHints &hints=ChannelRequestHints())
- PendingChannelRequest * createContactSearch (const QString &server, uint limit=0, const QDateTime &userActionTime=QDateTime::currentDateTime(), const QString &preferredHandler=QString(), const ChannelRequestHints &hints=ChannelRequestHints())
- PendingChannel * ensureAndHandleTextChat (const QString &contactIdentifier, const QDateTime &userActionTime=QDateTime::currentDateTime())
- PendingChannel * ensureAndHandleTextChat (const ContactPtr &contact, const QDateTime &userActionTime=QDateTime::currentDateTime())
- PendingChannel * ensureAndHandleTextChatroom (const QString &roomName, const QDateTime &userActionTime=QDateTime::currentDateTime())
- PendingChannel * ensureAndHandleAudioCall (const QString &contactIdentifier, const QString &initialAudioContentName=QString(), const QDateTime &userActionTime=QDateTime::currentDateTime())
- PendingChannel * ensureAndHandleAudioCall (const ContactPtr &contact, const QString &initialAudioContentName=QString(), const QDateTime &userActionTime=QDateTime::currentDateTime())
- PendingChannel * ensureAndHandleVideoCall (const QString &contactIdentifier, const QString &initialVideoContentName=QString(), const QDateTime &userActionTime=QDateTime::currentDateTime())
- PendingChannel * ensureAndHandleVideoCall (const ContactPtr &contact, const QString &initialVideoContentName=QString(), const QDateTime &userActionTime=QDateTime::currentDateTime())
- PendingChannel * ensureAndHandleAudioVideoCall (const QString &contactIdentifier, const QString &initialAudioContentName=QString(), const QString &initialVideoContentName=QString(), const QDateTime &userActionTime=QDateTime::currentDateTime())
- PendingChannel * ensureAndHandleAudioVideoCall (const ContactPtr &contact, const QString &initialAudioContentName=QString(), const QString &initialVideoContentName=QString(), const QDateTime &userActionTime=QDateTime::currentDateTime())
- PendingChannel * ensureAndHandleStreamedMediaCall (const QString &contactIdentifier, const QDateTime &userActionTime=QDateTime::currentDateTime())
- PendingChannel * ensureAndHandleStreamedMediaCall (const ContactPtr &contact, const QDateTime &userActionTime=QDateTime::currentDateTime())
- PendingChannel * ensureAndHandleStreamedMediaAudioCall (const QString &contactIdentifier, const QDateTime &userActionTime=QDateTime::currentDateTime())
- PendingChannel * ensureAndHandleStreamedMediaAudioCall (const ContactPtr &contact, const QDateTime &userActionTime=QDateTime::currentDateTime())
- PendingChannel * ensureAndHandleStreamedMediaVideoCall (const QString &contactIdentifier, bool withAudio=true, const QDateTime &userActionTime=QDateTime::currentDateTime())
- PendingChannel * ensureAndHandleStreamedMediaVideoCall (const ContactPtr &contact, bool withAudio=true, const QDateTime &userActionTime=QDateTime::currentDateTime())
- PendingChannel * createAndHandleFileTransfer (const QString &contactIdentifier, const FileTransferChannelCreationProperties &properties, const QDateTime &userActionTime=QDateTime::currentDateTime())
- PendingChannel * createAndHandleFileTransfer (const ContactPtr &contact, const FileTransferChannelCreationProperties &properties, const QDateTime &userActionTime=QDateTime::currentDateTime())
- PendingChannel * createAndHandleStreamTube (const QString &contactIdentifier, const QString &service, const QDateTime &userActionTime=QDateTime::currentDateTime())
- PendingChannel * createAndHandleStreamTube (const ContactPtr &contact, const QString &service, const QDateTime &userActionTime=QDateTime::currentDateTime())
- PendingChannel * createAndHandleConferenceTextChat (const QList< ChannelPtr > &channels, const QList< ContactPtr > &initialInviteeContacts=QList< ContactPtr >(), const QDateTime &userActionTime=QDateTime::currentDateTime())
- PendingChannel * createAndHandleConferenceTextChat (const QList< ChannelPtr > &channels, const QStringList &initialInviteeContactsIdentifiers=QStringList(), const QDateTime &userActionTime=QDateTime::currentDateTime())
- PendingChannel * createAndHandleConferenceTextChatroom (const QString &roomName, const QList< ChannelPtr > &channels, const QStringList &initialInviteeContactsIdentifiers=QStringList(), const QDateTime &userActionTime=QDateTime::currentDateTime())
- PendingChannel * createAndHandleConferenceTextChatroom (const QString &roomName, const QList< ChannelPtr > &channels, const QList< ContactPtr > &initialInviteeContacts=QList< ContactPtr >(), const QDateTime &userActionTime=QDateTime::currentDateTime())
- PendingChannel * createAndHandleConferenceStreamedMediaCall (const QList< ChannelPtr > &channels, const QStringList &initialInviteeContactsIdentifiers=QStringList(), const QDateTime &userActionTime=QDateTime::currentDateTime())
- PendingChannel * createAndHandleConferenceStreamedMediaCall (const QList< ChannelPtr > &channels, const QList< ContactPtr > &initialInviteeContacts=QList< ContactPtr >(), const QDateTime &userActionTime=QDateTime::currentDateTime())
- PendingChannel * createAndHandleContactSearch (const QString &server=QString(), uint limit=0, const QDateTime &userActionTime=QDateTime::currentDateTime())
- PendingChannelRequest * createChannel (const QVariantMap &requestedProperties, const QDateTime &userActionTime=QDateTime::currentDateTime(), const QString &preferredHandler=QString(), const ChannelRequestHints &hints=ChannelRequestHints())
- PendingChannelRequest * ensureChannel (const QVariantMap &requestedProperties, const QDateTime &userActionTime=QDateTime::currentDateTime(), const QString &preferredHandler=QString(), const ChannelRequestHints &hints=ChannelRequestHints())
- PendingChannel * createAndHandleChannel (const QVariantMap &requestedProperties, const QDateTime &userActionTime)
- PendingChannel * ensureAndHandleChannel (const QVariantMap &requestedProperties, const QDateTime &userActionTime)

## Static Public Member Functions

- static AccountPtr create (const QString &busName, const QString &objectPath, const ConnectionFactoryConstPtr &connectionFactory=ConnectionFactory::create(QDBusConnection::sessionBus()), const ChannelFactoryConstPtr &channelFactory=ChannelFactory::create(QDBusConnection::sessionBus()), const ContactFactoryConstPtr &contactFactory=ContactFactory::create())
- static AccountPtr create (const QDBusConnection &bus, const QString &busName, const QString &objectPath, const ConnectionFactoryConstPtr &connectionFactory, const ChannelFactoryConstPtr &channelFactory, const ContactFactoryConstPtr &contactFactory=ContactFactory::create())

## Static Public Attributes

- static const Feature FeatureCore
- static const Feature FeatureAvatar
- static const Feature FeatureProtocolInfo
- static const Feature FeatureCapabilities
- static const Feature FeatureProfile

## Protected Member Functions

- Account (const QDBusConnection &bus, const QString &busName, const QString &objectPath, const ConnectionFactoryConstPtr &connectionFactory, const ChannelFactoryConstPtr &channelFactory, const ContactFactoryConstPtr &contactFactory, const Feature &coreFeature)
- Client::AccountInterface * baseInterface () const
- Client::ChannelDispatcherInterface * dispatcherInterface () const

## Properties

- bool valid
- bool enabled
- QString cmName
- QString protocolName
- QString serviceName
- ProfilePtr profile
- QString displayName
- QString iconName
- QString nickname
- AvatarSpec avatarRequirements
- Avatar avatar
- QVariantMap parameters
- ProtocolInfo protocolInfo
- ConnectionCapabilities capabilities
- bool hasBeenOnline
- bool connectsAutomatically
- ConnectionStatus connectionStatus
- ConnectionStatusReason connectionStatusReason
- QString connectionError
- Tp::Connection::ErrorDetails connectionErrorDetails
- ConnectionPtr connection
- bool changingPresence
- Presence automaticPresence
- Presence currentPresence
- Presence requestedPresence
- bool online
- QString uniqueIdentifier
- QString normalizedName

## Detailed Description

The Account class represents a Telepathy account.

The remote object accessor functions on this object (isValidAccount(), isEnabled(), and so on) don't make any D-Bus calls; instead, they return/use values cached from a previous introspection run. The introspection process populates their values in the most efficient way possible based on what the service implements.

To avoid unnecessary D-Bus traffic, some accessors only return valid information after specific features have been enabled. For instance, to retrieve the account protocol information, it is necessary to enable the feature Account::FeatureProtocolInfo. See the individual methods descriptions for more details.

Account features can be enabled by constructing an AccountFactory and enabling the desired features, and passing it to AccountManager or ClientRegistrar when creating them as appropriate. However, if a particular feature is only ever used in a specific circumstance, such as an user opening some settings dialog separate from the general view of the application, features can be later enabled as needed by calling becomeReady() with the additional features, and waiting for the resulting PendingOperation to finish.

As an addition to accessors, signals are emitted to indicate that properties have changed, for example displayNameChanged(), iconNameChanged(), etc.

Convenience methods to create channels using the channel dispatcher such as ensureTextChat(), createFileTransfer() are also provided.

If the account is deleted from the AccountManager, this object will not be deleted automatically; however, it will emit invalidated() with error code TP_QT_ERROR_OBJECT_REMOVED and will cease to be useful.

## Usage

### Creating an account object

The easiest way to create account objects is through AccountManager. One can just use the AccountManager convenience methods such as AccountManager::validAccounts() to get a list of account objects representing valid accounts.

If you already know the object path, you can just call create(). For example:

     AccountPtr acc = Account::create(busName, objectPath);

An AccountPtr object is returned, which will automatically keep track of object lifetime.

You can also provide a D-Bus connection as a QDBusConnection:

     AccountPtr acc = Account::create(QDBusConnection::sessionBus(),
             busName, objectPath);

### Making account ready to use

An Account object needs to become ready before usage, meaning that the introspection process finished and the object accessors can be used.

To make the object ready, use becomeReady() and wait for the PendingOperation::finished() signal to be emitted.

     class MyClass : public QObject
     {
         QOBJECT

     public:
         MyClass(QObject *parent = 0);
         ~MyClass() { }

     private Q_SLOTS:
         void onAccountReady(Tp::PendingOperation*);

     private:
         AccountPtr acc;
     };

     MyClass::MyClass(const QString &busName, const QString &objectPath,
             QObject *parent)
         : QObject(parent)
           acc(Account::create(busName, objectPath))
     {
         connect(acc->becomeReady(),
                 SIGNAL(finished(Tp::PendingOperation*)),
                 SLOT(onAccountReady(Tp::PendingOperation*)));
     }

     void MyClass::onAccountReady(Tp::PendingOperation *op)
     {
         if (op->isError()) {
             qWarning() << "Account cannot become ready:" <<
                 op->errorName() << "-" << op->errorMessage();
             return;
         }

         // Account is now ready
         qDebug() << "Display name:" << acc->displayName();
     }

See Asynchronous Object Model, Shared Pointer Usage

## Constructor & Destructor Documentation

Tp::Account::~Account | ( |  | ) | `[virtual]`

Class destructor.

Tp::Account::Account | ( | const QDBusConnection & | bus,
|  | const QString & | busName,
|  | const QString & | objectPath,
|  | const ConnectionFactoryConstPtr & | connectionFactory,
|  | const ChannelFactoryConstPtr & | channelFactory,
|  | const ContactFactoryConstPtr & | contactFactory,
|  | const Feature & | coreFeature
| ) |  | `[protected]`

Construct a new Account object using the given bus and the given factories.

A warning is printed if the factories are not for bus.

Parameters:

  bus | QDBusConnection to use.
  busName | The account well-known bus name (sometimes called a "service name"). This is usually the same as the account manager bus name TP_QT_ACCOUNT_MANAGER_BUS_NAME.
  objectPath | The account object path.
  connectionFactory | The connection factory to use.
  channelFactory | The channel factory to use.
  contactFactory | The contact factory to use.
  coreFeature | The core feature of the Account subclass. The corresponding introspectable should depend on Account::FeatureCore.

## Member Function Documentation

AccountPtr Tp::Account::create | ( | const QString & | busName,
|  | const QString & | objectPath,
|  | const ConnectionFactoryConstPtr & | connectionFactory = `ConnectionFactory::create(QDBusConnection::sessionBus())`,
|  | const ChannelFactoryConstPtr & | channelFactory = `ChannelFactory::create(QDBusConnection::sessionBus())`,
|  | const ContactFactoryConstPtr & | contactFactory = `ContactFactory::create()`
| ) |  | `[static]`

Create a new Account object using QDBusConnection::sessionBus() and the given factories.

A warning is printed if the factories are not for QDBusConnection::sessionBus().

Parameters:

  busName | The account well-known bus name (sometimes called a "service name"). This is usually the same as the account manager bus name TP_QT_ACCOUNT_MANAGER_BUS_NAME.
  objectPath | The account object path.
  connectionFactory | The connection factory to use.
  channelFactory | The channel factory to use.
  contactFactory | The contact factory to use.

Returns:
  An AccountPtr object pointing to the newly created Account object.

AccountPtr Tp::Account::create | ( | const QDBusConnection & | bus,
|  | const QString & | busName,
|  | const QString & | objectPath,
|  | const ConnectionFactoryConstPtr & | connectionFactory,
|  | const ChannelFactoryConstPtr & | channelFactory,
|  | const ContactFactoryConstPtr & | contactFactory = `ContactFactory::create()`
| ) |  | `[static]`

Create a new Account object using the given bus and the given factories.

A warning is printed if the factories are not for bus.

Parameters:

  bus | QDBusConnection to use.
  busName | The account well-known bus name (sometimes called a "service name"). This is usually the same as the account manager bus name TP_QT_ACCOUNT_MANAGER_BUS_NAME.
  objectPath | The account object path.
  connectionFactory | The connection factory to use.
  channelFactory | The channel factory to use.
  contactFactory | The contact factory to use.

Returns:
  An AccountPtr object pointing to the newly created Account object.

ConnectionFactoryConstPtr Tp::Account::connectionFactory | ( |  | ) | const

Return the connection factory used by this account.

Only read access is provided. This allows constructing object instances and examining the object construction settings, but not changing settings. Allowing changes would lead to tricky situations where objects constructed at different times by the account would have unpredictably different construction settings (eg. subclass).

Returns:
  A read-only pointer to the ConnectionFactory object.

ChannelFactoryConstPtr Tp::Account::channelFactory | ( |  | ) | const

Return the channel factory used by this account.

Only read access is provided. This allows constructing object instances and examining the object construction settings, but not changing settings. Allowing changes would lead to tricky situations where objects constructed at different times by the account would have unpredictably different construction settings (eg. subclass).

Returns:
  A read-only pointer to the ChannelFactory object.

ContactFactoryConstPtr Tp::Account::contactFactory | ( |  | ) | const

Return the contact factory used by this account.

Only read access is provided. This allows constructing object instances and examining the object construction settings, but not changing settings. Allowing changes would lead to tricky situations where objects constructed at different times by the account would have unpredictably different construction settings (eg. subclass).

Returns:
  A read-only pointer to the ContactFactory object.

bool Tp::Account::isValidAccount | ( |  | ) | const

Return whether this account is valid.

If `true`, this account is considered by the account manager to be complete and usable. If `false`, user action is required to make it usable, and it will never attempt to connect. For instance, this might be caused by the absence or misconfiguration of a required parameter, in which case updateParameters() may be used to properly set the parameters values.

Change notification is via the validityChanged() signal.

This method requires Account::FeatureCore to be ready.

Returns:
  `true` if valid, `false` otherwise.

See also:
  validityChanged(), updateParameters()

bool Tp::Account::isEnabled | ( |  | ) | const

Return whether this account is enabled.

Change notification is via the stateChanged() signal.

This method requires Account::FeatureCore to be ready.

Returns:
  `true` if enabled, `false` otherwise.

See also:
  stateChanged(), setEnabled()

PendingOperation * Tp::Account::setEnabled | ( | bool | value | ) |

Set whether this account should be enabled or disabled.

This gives users the possibility to prevent an account from being used.

Note that changing this property won't change the validity of the account.

Parameters:

  value | Whether this account should be enabled or disabled.

Returns:
  A PendingOperation which will emit PendingOperation::finished when the request has been made.

See also:
  stateChanged(), isEnabled()

QString Tp::Account::cmName | ( |  | ) | const

QString Tp::Account::protocolName | ( |  | ) | const

QString Tp::Account::serviceName | ( |  | ) | const

PendingOperation * Tp::Account::setServiceName | ( | const QString & | value | ) |

Set the service name of this account.

Some protocols, like XMPP and SIP, are used by various different user-recognised brands, such as Google Talk. On accounts for such services, this method can be used to set the name describing the service, which must consist only of ASCII letters, numbers and hyphen/minus signs, and start with a letter. For the jabber protocol, one of the following service names should be used if possible:

google-talk (for Google's IM service) facebook (for Facebook's IM service) lj-talk (for LiveJournal's IM service)

The service name may also be set, if appropriate, when creating the account. See AccountManager::createAccount() for more details.

Note that changing this property may also change the profile() used by this account, in which case profileChanged() will be emitted in addition to serviceNameChanged(), if Account::FeatureProfile is enabled.

Parameters:

  value | The service name of this account.

Returns:
  A PendingOperation which will emit PendingOperation::finished when the request has been made.

See also:
  serviceNameChanged(), serviceName()

ProfilePtr Tp::Account::profile | ( |  | ) | const

QString Tp::Account::displayName | ( |  | ) | const

PendingOperation * Tp::Account::setDisplayName | ( | const QString & | value | ) |

Set the display name of this account.

The display name is the user-visible name of this account. This is usually chosen by the user at account creation time. See AccountManager::createAccount() for more details.

Parameters:

  value | The display name of this account.

Returns:
  A PendingOperation which will emit PendingOperation::finished when the request has been made.

See also:
  displayNameChanged(), displayName()

QString Tp::Account::iconName | ( |  | ) | const

PendingOperation * Tp::Account::setIconName | ( | const QString & | value | ) |

Set the icon name of this account.

Parameters:

  value | The icon name of this account.

Returns:
  A PendingOperation which will emit PendingOperation::finished when the request has been made.

See also:
  iconNameChanged(), iconName()

QString Tp::Account::nickname | ( |  | ) | const

PendingOperation * Tp::Account::setNickname | ( | const QString & | value | ) |

Set the nickname of this account as seen to other contacts.

Parameters:

  value | The nickname of this account.

Returns:
  A PendingOperation which will emit PendingOperation::finished when the request has been made.

See also:
  nicknameChanged(), nickname()

AvatarSpec Tp::Account::avatarRequirements | ( |  | ) | const

const Avatar& Tp::Account::avatar | ( |  | ) | const

PendingOperation * Tp::Account::setAvatar | ( | const Avatar & | avatar | ) |

Set avatar of this account as seen to other contacts.

Note that avatar must match the requirements as returned by avatarRequirements().

Parameters:

  avatar | The avatar of this account.

Returns:
  A PendingOperation which will emit PendingOperation::finished when the request has been made.

See also:
  avatarChanged(), avatar(), avatarRequirements()

QVariantMap Tp::Account::parameters | ( |  | ) | const

PendingStringList * Tp::Account::updateParameters | ( | const QVariantMap & | set,
|  | const QStringList & | unset
| ) |  |

Update this account parameters.

On success, the PendingOperation returned by this method will produce a list of strings, which are the names of parameters whose changes will not take effect until the account is disconnected and reconnected (for instance by calling reconnect()).

Parameters:

  set | Parameters to set.
  unset | Parameters to unset.

Returns:
  A PendingStringList which will emit PendingStringList::finished when the request has been made

See also:
  parametersChanged(), parameters(), reconnect()

ProtocolInfo Tp::Account::protocolInfo | ( |  | ) | const

ConnectionCapabilities Tp::Account::capabilities | ( |  | ) | const

bool Tp::Account::connectsAutomatically | ( |  | ) | const

PendingOperation * Tp::Account::setConnectsAutomatically | ( | bool | value | ) |

Set whether this account should be put online automatically whenever possible.

Parameters:

  value | Value indicating if this account should be put online whenever possible.

Returns:
  A PendingOperation which will emit PendingOperation::finished when the request has been made.

See also:
  connectsAutomaticallyPropertyChanged(), connectsAutomatically()

bool Tp::Account::hasBeenOnline | ( |  | ) | const

ConnectionStatus Tp::Account::connectionStatus | ( |  | ) | const

ConnectionStatusReason Tp::Account::connectionStatusReason | ( |  | ) | const

QString Tp::Account::connectionError | ( |  | ) | const

Connection::ErrorDetails Tp::Account::connectionErrorDetails | ( |  | ) | const

ConnectionPtr Tp::Account::connection | ( |  | ) | const

bool Tp::Account::isChangingPresence | ( |  | ) | const

Return whether this account connection is changing presence.

Change notification is via the changingPresence() signal.

This method requires Account::FeatureCore to be ready.

Returns:
  `true` if changing presence, `false` otherwise.

See also:
  changingPresence(), currentPresenceChanged(), setRequestedPresence()

PresenceSpecList Tp::Account::allowedPresenceStatuses | ( | bool | includeAllStatuses = `false` | ) | const

Return a list of presences allowed by a connection to this account.

In particular, for the statuses reported here it can be assumed that setting them as the requested presence via setRequestedPresence() will eventually result in currentPresence() changing to exactly said presence. Other statuses are only guaranteed to be matched as closely as possible.

The statuses can be also used for the automatic presence, as set by setAutomaticPresence(), with the exception of any status specifications for which Presence::type() is Tp::ConnectionPresenceTypeOffline for the Presence returned by PresenceSpec::presence().

However, the optional parameter can be used to allow reporting also other possible presence statuses on this protocol besides the others that can be set on yourself. These are purely informatory, for e.g. adjusting an UI to allow all possible remote contact statuses to be displayed.

An offline presence status is always included, because it's always valid to make an account offline by setting the requested presence to an offline status.

Full functionality requires Account::FeatureProtocolInfo and Account::FeatureProfile to be ready as well as connection with Connection::FeatureSimplePresence enabled. If the connection is online and Connection::FeatureSimplePresence is enabled, it will return the connection allowed statuses, otherwise it will return a list os statuses based on profile() and protocolInfo() information if the corresponding features are enabled.

If there's a mismatch between the presence status info provided in the .profile file and/or the .manager file and what an online Connection actually reports (for example, the said data files are missing or too old to include presence information), the returned value can change, in particular when connectionChanged() is emitted with a connection for which Connection::status() is Tp::ConnectionStatusConnected.

This method requires Account::FeatureCore to be ready.

Parameters:

  includeAllStatuses | Whether the returned list will include all statuses or just the ones that can be settable using setRequestedPresence().

Returns:
  The allowed statuses as a list of PresenceSpec objects.

uint Tp::Account::maxPresenceStatusMessageLength | ( |  | ) | const

Return the maximum length for a presence status message.

If a status message set using setRequestedPresence() (or setAutomaticPresence()) is longer than the maximum length allowed, the message will be truncated and currentPresenceChanged() will be emitted (if setting the presence worked) with the truncated message.

Full functionality requires Connection with Connection::FeatureSimplePresence enabled. If the connection is online and Connection::FeatureSimplePresence is enabled, it will return the connection maximum status message length, otherwise it will return 0.

This method requires Account::FeatureCore to be ready.

Returns:
  The maximum length, or 0 if there is no limit.

Presence Tp::Account::automaticPresence | ( |  | ) | const

PendingOperation * Tp::Account::setAutomaticPresence | ( | const Presence & | presence | ) |

Set the presence status that this account should have if it is brought online automatically by the account manager.

Note that changing this property won't actually change the account's status until the next time it is (re)connected for some reason.

The value of this property must be one that would be acceptable for setRequestedPresence(), as returned by allowedPresenceStatuses(), with the additional restriction that the offline presence cannot be used.

Parameters:

  presence | The presence to set when this account is brought online automatically by the account manager.

Returns:
  A PendingOperation which will emit PendingOperation::finished when the request has been made.

See also:
  automaticPresenceChanged(), automaticPresence(), setRequestedPresence()

Presence Tp::Account::currentPresence | ( |  | ) | const

Presence Tp::Account::requestedPresence | ( |  | ) | const

PendingOperation * Tp::Account::setRequestedPresence | ( | const Presence & | presence | ) |

Set the requested presence of this account.

When the requested presence is changed, the account manager will attempt to manipulate the connection to make currentPresence() match requestedPresence() as closely as possible.

Parameters:

  presence | The requested presence.

Returns:
  A PendingOperation which will emit PendingOperation::finished when the request has been made.

See also:
  requestedPresenceChanged(), currentPresence(), automaticPresence(), setAutomaticPresence()

bool Tp::Account::isOnline | ( |  | ) | const

Return whether this account is online.

Change notification is via the onlinenessChanged() signal.

This method requires Account::FeatureCore to be ready.

Returns:
  `true` if online, otherwise `false`.

See also:
  onlinenessChanged()

QString Tp::Account::uniqueIdentifier | ( |  | ) | const

QString Tp::Account::normalizedName | ( |  | ) | const

PendingOperation * Tp::Account::reconnect | ( |  | ) |

If this account is currently connected, disconnect and reconnect it. If it is currently trying to connect, cancel the attempt to connect and start another. If it is currently disconnected, do nothing.

Returns:
  A PendingOperation which will emit PendingOperation::finished when the request has been made.

PendingOperation * Tp::Account::remove | ( |  | ) |

Delete this account.

Returns:
  A PendingOperation which will emit PendingOperation::finished when the request has been made.

See also:
  removed()

bool Tp::Account::supportsRequestHints | ( |  | ) | const

Return whether passing hints on channel requests on this account is known to be supported.

This method requires Account::FeatureCore to be ready.

Returns:
  `true` if supported, `false` otherwise.

bool Tp::Account::requestsSucceedWithChannel | ( |  | ) | const

Return whether the ChannelRequest::succeeded(const Tp::ChannelPtr &channel) signal is expected to be emitted with a non-NULL channel parameter for requests made using this account.

This can be used as a run-time check for the Channel Dispatcher implementation being new enough. In particular, similarly old Channel Dispatchers don't support request hints either, so the return value for this function and Account::supportsRequestHints() will bet he same.

This method requires Account::FeatureCore to be ready.

Returns:
  `true` if supported, `false` otherwise.

PendingChannelRequest * Tp::Account::ensureTextChat | ( | const QString & | contactIdentifier,
|  | const QDateTime & | userActionTime = `QDateTime::currentDateTime()`,
|  | const QString & | preferredHandler = `QString()`,
|  | const ChannelRequestHints & | hints = `ChannelRequestHints()`
| ) |  |

Start a request to ensure that a text channel with the given contact contactIdentifier exists, creating it if necessary.

See ensureChannel() for more details.

Parameters:

  contactIdentifier | The identifier of the contact to chat with.
  userActionTime | The time at which user action occurred, or QDateTime() if this channel request is for some reason not involving user action.
  preferredHandler | Either the well-known bus name (starting with org.freedesktop.Telepathy.Client.) of the preferred handler for this channel, or an empty string to indicate that any handler would be acceptable.
  hints | Arbitrary metadata which will be relayed to the handler if supported, as indicated by supportsRequestHints().

Returns:
  A PendingChannelRequest which will emit PendingChannelRequest::finished when the request has been made.

See also:
  ensureChannel(), createChannel()

PendingChannelRequest * Tp::Account::ensureTextChat | ( | const ContactPtr & | contact,
|  | const QDateTime & | userActionTime = `QDateTime::currentDateTime()`,
|  | const QString & | preferredHandler = `QString()`,
|  | const ChannelRequestHints & | hints = `ChannelRequestHints()`
| ) |  |

Start a request to ensure that a text channel with the given contact contact exists, creating it if necessary.

See ensureChannel() for more details.

Parameters:

  contact | The contact to chat with.
  userActionTime | The time at which user action occurred, or QDateTime() if this channel request is for some reason not involving user action.
  preferredHandler | Either the well-known bus name (starting with org.freedesktop.Telepathy.Client.) of the preferred handler for this channel, or an empty string to indicate that any handler would be acceptable.
  hints | Arbitrary metadata which will be relayed to the handler if supported, as indicated by supportsRequestHints().

Returns:
  A PendingChannelRequest which will emit PendingChannelRequest::finished when the request has been made.

See also:
  ensureChannel(), createChannel()

PendingChannelRequest * Tp::Account::ensureTextChatroom | ( | const QString & | roomName,
|  | const QDateTime & | userActionTime = `QDateTime::currentDateTime()`,
|  | const QString & | preferredHandler = `QString()`,
|  | const ChannelRequestHints & | hints = `ChannelRequestHints()`
| ) |  |

Start a request to ensure that a text chat room with the given room name roomName exists, creating it if necessary.

See ensureChannel() for more details.

Parameters:

  roomName | The name of the chat room.
  userActionTime | The time at which user action occurred, or QDateTime() if this channel request is for some reason not involving user action.
  preferredHandler | Either the well-known bus name (starting with org.freedesktop.Telepathy.Client.) of the preferred handler for this channel, or an empty string to indicate that any handler would be acceptable.
  hints | Arbitrary metadata which will be relayed to the handler if supported, as indicated by supportsRequestHints().

Returns:
  A PendingChannelRequest which will emit PendingChannelRequest::finished when the request has been made.

See also:
  ensureChannel(), createChannel()

PendingChannelRequest * Tp::Account::ensureAudioCall | ( | const QString & | contactIdentifier,
|  | const QString & | initialAudioContentName = `QString()`,
|  | const QDateTime & | userActionTime = `QDateTime::currentDateTime()`,
|  | const QString & | preferredHandler = `QString()`,
|  | const ChannelRequestHints & | hints = `ChannelRequestHints()`
| ) |  |

Start a request to ensure that an audio call channel with the given contact contactIdentifier exists, creating it if necessary.

See ensureChannel() for more details.

Parameters:

  contactIdentifier | The identifier of the contact to call.
  initialAudioContentName | The name of the initial CallContent that will be automatically added on the channel.
  userActionTime | The time at which user action occurred, or QDateTime() if this channel request is for some reason not involving user action.
  preferredHandler | Either the well-known bus name (starting with org.freedesktop.Telepathy.Client.) of the preferred handler for this channel, or an empty string to indicate that any handler would be acceptable.
  hints | Arbitrary metadata which will be relayed to the handler if supported, as indicated by supportsRequestHints().

Returns:
  A PendingChannelRequest which will emit PendingChannelRequest::finished when the request has been made.

See also:
  ensureChannel(), createChannel()

PendingChannelRequest * Tp::Account::ensureAudioCall | ( | const ContactPtr & | contact,
|  | const QString & | initialAudioContentName = `QString()`,
|  | const QDateTime & | userActionTime = `QDateTime::currentDateTime()`,
|  | const QString & | preferredHandler = `QString()`,
|  | const ChannelRequestHints & | hints = `ChannelRequestHints()`
| ) |  |

Start a request to ensure that an audio call channel with the given contact contact exists, creating it if necessary.

See ensureChannel() for more details.

Parameters:

  contact | The contact to call.
  initialAudioContentName | The name of the initial audio CallContent that will be automatically added on the channel.
  userActionTime | The time at which user action occurred, or QDateTime() if this channel request is for some reason not involving user action.
  preferredHandler | Either the well-known bus name (starting with org.freedesktop.Telepathy.Client.) of the preferred handler for this channel, or an empty string to indicate that any handler would be acceptable.
  hints | Arbitrary metadata which will be relayed to the handler if supported, as indicated by supportsRequestHints().

Returns:
  A PendingChannelRequest which will emit PendingChannelRequest::finished when the request has been made.

See also:
  ensureChannel(), createChannel()

PendingChannelRequest * Tp::Account::ensureVideoCall | ( | const QString & | contactIdentifier,
|  | const QString & | initialVideoContentName = `QString()`,
|  | const QDateTime & | userActionTime = `QDateTime::currentDateTime()`,
|  | const QString & | preferredHandler = `QString()`,
|  | const ChannelRequestHints & | hints = `ChannelRequestHints()`
| ) |  |

Start a request to ensure that a video call channel with the given contact contactIdentifier exists, creating it if necessary.

See ensureChannel() for more details.

Parameters:

  contactIdentifier | The identifier of the contact to call.
  initialVideoContentName | The name of the initial video CallContent that will be automatically added on the channel.
  userActionTime | The time at which user action occurred, or QDateTime() if this channel request is for some reason not involving user action.
  preferredHandler | Either the well-known bus name (starting with org.freedesktop.Telepathy.Client.) of the preferred handler for this channel, or an empty string to indicate that any handler would be acceptable.
  hints | Arbitrary metadata which will be relayed to the handler if supported, as indicated by supportsRequestHints().

Returns:
  A PendingChannelRequest which will emit PendingChannelRequest::finished when the request has been made.

See also:
  ensureChannel(), createChannel()

PendingChannelRequest * Tp::Account::ensureVideoCall | ( | const ContactPtr & | contact,
|  | const QString & | initialVideoContentName = `QString()`,
|  | const QDateTime & | userActionTime = `QDateTime::currentDateTime()`,
|  | const QString & | preferredHandler = `QString()`,
|  | const ChannelRequestHints & | hints = `ChannelRequestHints()`
| ) |  |

Start a request to ensure that a video call channel with the given contact contact exists, creating it if necessary.

See ensureChannel() for more details.

Parameters:

  contact | The contact to call.
  initialVideoContentName | The name of the initial video CallContent that will be automatically added on the channel.
  userActionTime | The time at which user action occurred, or QDateTime() if this channel request is for some reason not involving user action.
  preferredHandler | Either the well-known bus name (starting with org.freedesktop.Telepathy.Client.) of the preferred handler for this channel, or an empty string to indicate that any handler would be acceptable.
  hints | Arbitrary metadata which will be relayed to the handler if supported, as indicated by supportsRequestHints().

Returns:
  A PendingChannelRequest which will emit PendingChannelRequest::finished when the request has been made.

See also:
  ensureChannel(), createChannel()

PendingChannelRequest * Tp::Account::ensureAudioVideoCall | ( | const QString & | contactIdentifier,
|  | const QString & | initialAudioContentName = `QString()`,
|  | const QString & | initialVideoContentName = `QString()`,
|  | const QDateTime & | userActionTime = `QDateTime::currentDateTime()`,
|  | const QString & | preferredHandler = `QString()`,
|  | const ChannelRequestHints & | hints = `ChannelRequestHints()`
| ) |  |

Start a request to ensure that an audio/video call channel with the given contact contactIdentifier exists, creating it if necessary.

See ensureChannel() for more details.

Parameters:

  contactIdentifier | The identifier of the contact to call.
  initialAudioContentName | The name of the initial audio CallContent that will be automatically added on the channel.
  initialVideoContentName | The name of the initial video CallContent that will be automatically added on the channel.
  userActionTime | The time at which user action occurred, or QDateTime() if this channel request is for some reason not involving user action.
  preferredHandler | Either the well-known bus name (starting with org.freedesktop.Telepathy.Client.) of the preferred handler for this channel, or an empty string to indicate that any handler would be acceptable.
  hints | Arbitrary metadata which will be relayed to the handler if supported, as indicated by supportsRequestHints().

Returns:
  A PendingChannelRequest which will emit PendingChannelRequest::finished when the request has been made.

See also:
  ensureChannel(), createChannel()

PendingChannelRequest * Tp::Account::ensureAudioVideoCall | ( | const ContactPtr & | contact,
|  | const QString & | initialAudioContentName = `QString()`,
|  | const QString & | initialVideoContentName = `QString()`,
|  | const QDateTime & | userActionTime = `QDateTime::currentDateTime()`,
|  | const QString & | preferredHandler = `QString()`,
|  | const ChannelRequestHints & | hints = `ChannelRequestHints()`
| ) |  |

Start a request to ensure that an audio/video call channel with the given contact contact exists, creating it if necessary.

See ensureChannel() for more details.

Parameters:

  contact | The contact to call.
  initialAudioContentName | The name of the initial audio CallContent that will be automatically added on the channel.
  initialVideoContentName | The name of the initial video CallContent that will be automatically added on the channel.
  userActionTime | The time at which user action occurred, or QDateTime() if this channel request is for some reason not involving user action.
  preferredHandler | Either the well-known bus name (starting with org.freedesktop.Telepathy.Client.) of the preferred handler for this channel, or an empty string to indicate that any handler would be acceptable.
  hints | Arbitrary metadata which will be relayed to the handler if supported, as indicated by supportsRequestHints().

Returns:
  A PendingChannelRequest which will emit PendingChannelRequest::finished when the request has been made.

See also:
  ensureChannel(), createChannel()

PendingChannelRequest * Tp::Account::ensureStreamedMediaCall | ( | const QString & | contactIdentifier,
|  | const QDateTime & | userActionTime = `QDateTime::currentDateTime()`,
|  | const QString & | preferredHandler = `QString()`,
|  | const ChannelRequestHints & | hints = `ChannelRequestHints()`
| ) |  |

Start a request to ensure that a media channel with the given contact contactIdentifier exists, creating it if necessary.

See ensureChannel() for more details.

Parameters:

  contactIdentifier | The identifier of the contact to call.
  userActionTime | The time at which user action occurred, or QDateTime() if this channel request is for some reason not involving user action.
  preferredHandler | Either the well-known bus name (starting with org.freedesktop.Telepathy.Client.) of the preferred handler for this channel, or an empty string to indicate that any handler would be acceptable.
  hints | Arbitrary metadata which will be relayed to the handler if supported, as indicated by supportsRequestHints().

Returns:
  A PendingChannelRequest which will emit PendingChannelRequest::finished when the request has been made.

See also:
  ensureChannel(), createChannel()

PendingChannelRequest * Tp::Account::ensureStreamedMediaCall | ( | const ContactPtr & | contact,
|  | const QDateTime & | userActionTime = `QDateTime::currentDateTime()`,
|  | const QString & | preferredHandler = `QString()`,
|  | const ChannelRequestHints & | hints = `ChannelRequestHints()`
| ) |  |

Start a request to ensure that a media channel with the given contact contact exists, creating it if necessary.

See ensureChannel() for more details.

Parameters:

  contact | The contact to call.
  userActionTime | The time at which user action occurred, or QDateTime() if this channel request is for some reason not involving user action.
  preferredHandler | Either the well-known bus name (starting with org.freedesktop.Telepathy.Client.) of the preferred handler for this channel, or an empty string to indicate that any handler would be acceptable.
  hints | Arbitrary metadata which will be relayed to the handler if supported, as indicated by supportsRequestHints().

Returns:
  A PendingChannelRequest which will emit PendingChannelRequest::finished when the request has been made.

See also:
  ensureChannel(), createChannel()

PendingChannelRequest * Tp::Account::ensureStreamedMediaAudioCall | ( | const QString & | contactIdentifier,
|  | const QDateTime & | userActionTime = `QDateTime::currentDateTime()`,
|  | const QString & | preferredHandler = `QString()`,
|  | const ChannelRequestHints & | hints = `ChannelRequestHints()`
| ) |  |

Start a request to ensure that an audio call with the given contact contactIdentifier exists, creating it if necessary.

See ensureChannel() for more details.

This will only work on relatively modern connection managers, like telepathy-gabble 0.9.0 or later.

Parameters:

  contactIdentifier | The identifier of the contact to call.
  userActionTime | The time at which user action occurred, or QDateTime() if this channel request is for some reason not involving user action.
  preferredHandler | Either the well-known bus name (starting with org.freedesktop.Telepathy.Client.) of the preferred handler for this channel, or an empty string to indicate that any handler would be acceptable.
  hints | Arbitrary metadata which will be relayed to the handler if supported, as indicated by supportsRequestHints().

Returns:
  A PendingChannelRequest which will emit PendingChannelRequest::finished when the request has been made.

See also:
  ensureChannel(), createChannel()

PendingChannelRequest * Tp::Account::ensureStreamedMediaAudioCall | ( | const ContactPtr & | contact,
|  | const QDateTime & | userActionTime = `QDateTime::currentDateTime()`,
|  | const QString & | preferredHandler = `QString()`,
|  | const ChannelRequestHints & | hints = `ChannelRequestHints()`
| ) |  |

Start a request to ensure that an audio call with the given contact contact exists, creating it if necessary.

See ensureChannel() for more details.

This will only work on relatively modern connection managers, like telepathy-gabble 0.9.0 or later.

Parameters:

  contact | The contact to call.
  userActionTime | The time at which user action occurred, or QDateTime() if this channel request is for some reason not involving user action.
  preferredHandler | Either the well-known bus name (starting with org.freedesktop.Telepathy.Client.) of the preferred handler for this channel, or an empty string to indicate that any handler would be acceptable.
  hints | Arbitrary metadata which will be relayed to the handler if supported, as indicated by supportsRequestHints().

Returns:
  A PendingChannelRequest which will emit PendingChannelRequest::finished when the request has been made.

See also:
  ensureChannel(), createChannel()

PendingChannelRequest * Tp::Account::ensureStreamedMediaVideoCall | ( | const QString & | contactIdentifier,
|  | bool | withAudio = `true`,
|  | const QDateTime & | userActionTime = `QDateTime::currentDateTime()`,
|  | const QString & | preferredHandler = `QString()`,
|  | const ChannelRequestHints & | hints = `ChannelRequestHints()`
| ) |  |

Start a request to ensure that a video call with the given contact contactIdentifier exists, creating it if necessary.

See ensureChannel() for more details.

This will only work on relatively modern connection managers, like telepathy-gabble 0.9.0 or later.

Parameters:

  contactIdentifier | The identifier of the contact to call.
  withAudio | true if both audio and video are required, false for a video-only call.
  userActionTime | The time at which user action occurred, or QDateTime() if this channel request is for some reason not involving user action.
  preferredHandler | Either the well-known bus name (starting with org.freedesktop.Telepathy.Client.) of the preferred handler for this channel, or an empty string to indicate that any handler would be acceptable.
  hints | Arbitrary metadata which will be relayed to the handler if supported, as indicated by supportsRequestHints().

Returns:
  A PendingChannelRequest which will emit PendingChannelRequest::finished when the request has been made.

See also:
  ensureChannel(), createChannel()

PendingChannelRequest * Tp::Account::ensureStreamedMediaVideoCall | ( | const ContactPtr & | contact,
|  | bool | withAudio = `false`,
|  | const QDateTime & | userActionTime = `QDateTime::currentDateTime()`,
|  | const QString & | preferredHandler = `QString()`,
|  | const ChannelRequestHints & | hints = `ChannelRequestHints()`
| ) |  |

Start a request to ensure that a video call with the given contact contact exists, creating it if necessary.

See ensureChannel() for more details.

This will only work on relatively modern connection managers, like telepathy-gabble 0.9.0 or later.

Parameters:

  contact | The contact to call.
  withAudio | true if both audio and video are required, false for a video-only call.
  userActionTime | The time at which user action occurred, or QDateTime() if this channel request is for some reason not involving user action.
  preferredHandler | Either the well-known bus name (starting with org.freedesktop.Telepathy.Client.) of the preferred handler for this channel, or an empty string to indicate that any handler would be acceptable.
  hints | Arbitrary metadata which will be relayed to the handler if supported, as indicated by supportsRequestHints().

Returns:
  A PendingChannelRequest which will emit PendingChannelRequest::finished when the request has been made.

See also:
  ensureChannel(), createChannel()

PendingChannelRequest * Tp::Account::createFileTransfer | ( | const QString & | contactIdentifier,
|  | const FileTransferChannelCreationProperties & | properties,
|  | const QDateTime & | userActionTime = `QDateTime::currentDateTime()`,
|  | const QString & | preferredHandler = `QString()`,
|  | const ChannelRequestHints & | hints = `ChannelRequestHints()`
| ) |  |

Start a request to create a file transfer channel with the given contact contact.

Parameters:

  contactIdentifier | The identifier of the contact to send a file.
  properties | The desired properties.
  userActionTime | The time at which user action occurred, or QDateTime() if this channel request is for some reason not involving user action.
  preferredHandler | Either the well-known bus name (starting with org.freedesktop.Telepathy.Client.) of the preferred handler for this channel, or an empty string to indicate that any handler would be acceptable.
  hints | Arbitrary metadata which will be relayed to the handler if supported, as indicated by supportsRequestHints().

Returns:
  A PendingChannelRequest which will emit PendingChannelRequest::finished when the request has been made.

See also:
  ensureChannel(), createChannel()

PendingChannelRequest * Tp::Account::createFileTransfer | ( | const ContactPtr & | contact,
|  | const FileTransferChannelCreationProperties & | properties,
|  | const QDateTime & | userActionTime = `QDateTime::currentDateTime()`,
|  | const QString & | preferredHandler = `QString()`,
|  | const ChannelRequestHints & | hints = `ChannelRequestHints()`
| ) |  |

Start a request to create a file transfer channel with the given contact contact.

Parameters:

  contact | The contact to send a file.
  properties | The desired properties.
  userActionTime | The time at which user action occurred, or QDateTime() if this channel request is for some reason not involving user action.
  preferredHandler | Either the well-known bus name (starting with org.freedesktop.Telepathy.Client.) of the preferred handler for this channel, or an empty string to indicate that any handler would be acceptable.
  hints | Arbitrary metadata which will be relayed to the handler if supported, as indicated by supportsRequestHints().

Returns:
  A PendingChannelRequest which will emit PendingChannelRequest::finished when the request has been made.

See also:
  ensureChannel(), createChannel()

PendingChannelRequest * Tp::Account::createStreamTube | ( | const QString & | contactIdentifier,
|  | const QString & | service,
|  | const QDateTime & | userActionTime = `QDateTime::currentDateTime()`,
|  | const QString & | preferredHandler = `QString()`,
|  | const ChannelRequestHints & | hints = `ChannelRequestHints()`
| ) |  |

Start a request to create a stream tube channel with the given contact identifier contactIdentifier.

Parameters:

  contactIdentifier | The identifier of the contact to open a stream tube with.
  service | The stream tube service.
  userActionTime | The time at which user action occurred, or QDateTime() if this channel request is for some reason not involving user action.
  preferredHandler | Either the well-known bus name (starting with org.freedesktop.Telepathy.Client.) of the preferred handler for this channel, or an empty string to indicate that any handler would be acceptable.
  hints | Arbitrary metadata which will be relayed to the handler if supported, as indicated by supportsRequestHints().

Returns:
  A PendingChannelRequest which will emit PendingChannelRequest::finished when the request has been made.

See also:
  ensureChannel(), createChannel()

PendingChannelRequest * Tp::Account::createStreamTube | ( | const ContactPtr & | contact,
|  | const QString & | service,
|  | const QDateTime & | userActionTime = `QDateTime::currentDateTime()`,
|  | const QString & | preferredHandler = `QString()`,
|  | const ChannelRequestHints & | hints = `ChannelRequestHints()`
| ) |  |

Start a request to create a stream tube channel with the given contact contact.

Parameters:

  contact | The contact to open a stream tube with.
  service | The stream tube service.
  userActionTime | The time at which user action occurred, or QDateTime() if this channel request is for some reason not involving user action.
  preferredHandler | Either the well-known bus name (starting with org.freedesktop.Telepathy.Client.) of the preferred handler for this channel, or an empty string to indicate that any handler would be acceptable.
  hints | Arbitrary metadata which will be relayed to the handler if supported, as indicated by supportsRequestHints().

Returns:
  A PendingChannelRequest which will emit PendingChannelRequest::finished when the request has been made.

See also:
  ensureChannel(), createChannel()

PendingChannelRequest * Tp::Account::createConferenceStreamedMediaCall | ( | const QList< ChannelPtr > & | channels,
|  | const QStringList & | initialInviteeContactsIdentifiers = `QStringList()`,
|  | const QDateTime & | userActionTime = `QDateTime::currentDateTime()`,
|  | const QString & | preferredHandler = `QString()`,
|  | const ChannelRequestHints & | hints = `ChannelRequestHints()`
| ) |  |

Start a request to create a conference media call with the given channels channels.

Parameters:

  channels | The conference channels.
  initialInviteeContactsIdentifiers | A list of additional contacts identifiers to be invited to this conference when it is created.
  userActionTime | The time at which user action occurred, or QDateTime() if this channel request is for some reason not involving user action.
  preferredHandler | Either the well-known bus name (starting with org.freedesktop.Telepathy.Client.) of the preferred handler for this channel, or an empty string to indicate that any handler would be acceptable.
  hints | Arbitrary metadata which will be relayed to the handler if supported, as indicated by supportsRequestHints().

Returns:
  A PendingChannelRequest which will emit PendingChannelRequest::finished when the request has been made.

See also:
  ensureChannel(), createChannel()

PendingChannelRequest * Tp::Account::createConferenceStreamedMediaCall | ( | const QList< ChannelPtr > & | channels,
|  | const QList< ContactPtr > & | initialInviteeContacts = `QList<ContactPtr>()`,
|  | const QDateTime & | userActionTime = `QDateTime::currentDateTime()`,
|  | const QString & | preferredHandler = `QString()`,
|  | const ChannelRequestHints & | hints = `ChannelRequestHints()`
| ) |  |

Start a request to create a conference media call with the given channels channels.

Parameters:

  channels | The conference channels.
  initialInviteeContacts | A list of additional contacts to be invited to this conference when it is created.
  userActionTime | The time at which user action occurred, or QDateTime() if this channel request is for some reason not involving user action.
  preferredHandler | Either the well-known bus name (starting with org.freedesktop.Telepathy.Client.) of the preferred handler for this channel, or an empty string to indicate that any handler would be acceptable.
  hints | Arbitrary metadata which will be relayed to the handler if supported, as indicated by supportsRequestHints().

Returns:
  A PendingChannelRequest which will emit PendingChannelRequest::finished when the request has been made.

See also:
  ensureChannel(), createChannel()

PendingChannelRequest * Tp::Account::createConferenceTextChat | ( | const QList< ChannelPtr > & | channels,
|  | const QList< ContactPtr > & | initialInviteeContacts = `QList<ContactPtr>()`,
|  | const QDateTime & | userActionTime = `QDateTime::currentDateTime()`,
|  | const QString & | preferredHandler = `QString()`,
|  | const ChannelRequestHints & | hints = `ChannelRequestHints()`
| ) |  |

Start a request to create a conference text chat with the given channels channels.

Parameters:

  channels | The conference channels.
  initialInviteeContacts | A list of additional contacts to be invited to this conference when it is created.
  userActionTime | The time at which user action occurred, or QDateTime() if this channel request is for some reason not involving user action.
  preferredHandler | Either the well-known bus name (starting with org.freedesktop.Telepathy.Client.) of the preferred handler for this channel, or an empty string to indicate that any handler would be acceptable.
  hints | Arbitrary metadata which will be relayed to the handler if supported, as indicated by supportsRequestHints().

Returns:
  A PendingChannelRequest which will emit PendingChannelRequest::finished when the request has been made.

See also:
  ensureChannel(), createChannel()

PendingChannelRequest * Tp::Account::createConferenceTextChat | ( | const QList< ChannelPtr > & | channels,
|  | const QStringList & | initialInviteeContactsIdentifiers = `QStringList()`,
|  | const QDateTime & | userActionTime = `QDateTime::currentDateTime()`,
|  | const QString & | preferredHandler = `QString()`,
|  | const ChannelRequestHints & | hints = `ChannelRequestHints()`
| ) |  |

Start a request to create a conference text chat with the given channels channels.

Parameters:

  channels | The conference channels.
  initialInviteeContactsIdentifiers | A list of additional contacts identifiers to be invited to this conference when it is created.
  userActionTime | The time at which user action occurred, or QDateTime() if this channel request is for some reason not involving user action.
  preferredHandler | Either the well-known bus name (starting with org.freedesktop.Telepathy.Client.) of the preferred handler for this channel, or an empty string to indicate that any handler would be acceptable.
  hints | Arbitrary metadata which will be relayed to the handler if supported, as indicated by supportsRequestHints().

Returns:
  A PendingChannelRequest which will emit PendingChannelRequest::finished when the request has been made.

See also:
  ensureChannel(), createChannel()

PendingChannelRequest * Tp::Account::createConferenceTextChatroom | ( | const QString & | roomName,
|  | const QList< ChannelPtr > & | channels,
|  | const QStringList & | initialInviteeContactsIdentifiers = `QStringList()`,
|  | const QDateTime & | userActionTime = `QDateTime::currentDateTime()`,
|  | const QString & | preferredHandler = `QString()`,
|  | const ChannelRequestHints & | hints = `ChannelRequestHints()`
| ) |  |

Start a request to create a conference text chat room with the given channels channels and room name roomName.

Parameters:

  roomName | The room name.
  channels | The conference channels.
  initialInviteeContactsIdentifiers | A list of additional contacts identifiers to be invited to this conference when it is created.
  userActionTime | The time at which user action occurred, or QDateTime() if this channel request is for some reason not involving user action.
  preferredHandler | Either the well-known bus name (starting with org.freedesktop.Telepathy.Client.) of the preferred handler for this channel, or an empty string to indicate that any handler would be acceptable.
  hints | Arbitrary metadata which will be relayed to the handler if supported, as indicated by supportsRequestHints().

Returns:
  A PendingChannelRequest which will emit PendingChannelRequest::finished when the request has been made.

See also:
  ensureChannel(), createChannel()

PendingChannelRequest * Tp::Account::createConferenceTextChatroom | ( | const QString & | roomName,
|  | const QList< ChannelPtr > & | channels,
|  | const QList< ContactPtr > & | initialInviteeContacts = `QList<ContactPtr>()`,
|  | const QDateTime & | userActionTime = `QDateTime::currentDateTime()`,
|  | const QString & | preferredHandler = `QString()`,
|  | const ChannelRequestHints & | hints = `ChannelRequestHints()`
| ) |  |

Start a request to create a conference text chat room with the given channels channels and room name roomName.

Parameters:

  roomName | The room name.
  channels | The conference channels.
  initialInviteeContacts | A list of additional contacts to be invited to this conference when it is created.
  userActionTime | The time at which user action occurred, or QDateTime() if this channel request is for some reason not involving user action.
  preferredHandler | Either the well-known bus name (starting with org.freedesktop.Telepathy.Client.) of the preferred handler for this channel, or an empty string to indicate that any handler would be acceptable.
  hints | Arbitrary metadata which will be relayed to the handler if supported, as indicated by supportsRequestHints().

Returns:
  A PendingChannelRequest which will emit PendingChannelRequest::finished when the request has been made.

See also:
  ensureChannel(), createChannel()

PendingChannelRequest * Tp::Account::createContactSearch | ( | const QString & | server,
|  | uint | limit = `0`,
|  | const QDateTime & | userActionTime = `QDateTime::currentDateTime()`,
|  | const QString & | preferredHandler = `QString()`,
|  | const ChannelRequestHints & | hints = `ChannelRequestHints()`
| ) |  |

Start a request to create a contact search channel with the given server server and limit limit.

Parameters:

  server | For protocols which support searching for contacts on multiple servers with different DNS names (like XMPP), the DNS name of the server to be searched, e.g. "characters.shakespeare.lit". Otherwise, an empty string.
  limit | The desired maximum number of results that should be returned by a doing a search. If the protocol does not support specifying a limit for the number of results returned at a time, this will be ignored.
  userActionTime | The time at which user action occurred, or QDateTime() if this channel request is for some reason not involving user action.
  preferredHandler | Either the well-known bus name (starting with org.freedesktop.Telepathy.Client.) of the preferred handler for this channel, or an empty string to indicate that any handler would be acceptable.
  hints | Arbitrary metadata which will be relayed to the handler if supported, as indicated by supportsRequestHints().

Returns:
  A PendingChannelRequest which will emit PendingChannelRequest::finished when the request has been made.

See also:
  createChannel()

PendingChannel * Tp::Account::ensureAndHandleTextChat | ( | const QString & | contactIdentifier,
|  | const QDateTime & | userActionTime = `QDateTime::currentDateTime()`
| ) |  |

Start a request to ensure that a text channel with the given contact contactIdentifier exists, creating it if necessary. This initially just creates a PendingChannel object, which can be used to track the success or failure of the request.

Parameters:

  contactIdentifier | The identifier of the contact to chat with.
  userActionTime | The time at which user action occurred, or QDateTime() if this channel request is for some reason not involving user action.

Returns:
  A PendingChannel which will emit PendingChannel::finished successfully, when the Channel is available for handling using PendingChannel::channel(), or with an error if one has been encountered.

See also:
  ensureAndHandleChannel(), createAndHandleChannel()

PendingChannel * Tp::Account::ensureAndHandleTextChat | ( | const ContactPtr & | contact,
|  | const QDateTime & | userActionTime = `QDateTime::currentDateTime()`
| ) |  |

Start a request to ensure that a text channel with the given contact contact exists, creating it if necessary. This initially just creates a PendingChannel object, which can be used to track the success or failure of the request.

Parameters:

  contact | The contact to chat with.
  userActionTime | The time at which user action occurred, or QDateTime() if this channel request is for some reason not involving user action.

Returns:
  A PendingChannel which will emit PendingChannel::finished successfully, when the Channel is available for handling using PendingChannel::channel(), or with an error if one has been encountered.

See also:
  ensureAndHandleChannel(), createAndHandleChannel()

PendingChannel * Tp::Account::ensureAndHandleTextChatroom | ( | const QString & | roomName,
|  | const QDateTime & | userActionTime = `QDateTime::currentDateTime()`
| ) |  |

Start a request to ensure that a text chat room with the given room name roomName exists, creating it if necessary. This initially just creates a PendingChannel object, which can be used to track the success or failure of the request.

Parameters:

  roomName | The name of the chat room.
  userActionTime | The time at which user action occurred, or QDateTime() if this channel request is for some reason not involving user action.

Returns:
  A PendingChannel which will emit PendingChannel::finished successfully, when the Channel is available for handling using PendingChannel::channel(), or with an error if one has been encountered.

See also:
  ensureAndHandleChannel(), createAndHandleChannel()

PendingChannel * Tp::Account::ensureAndHandleAudioCall | ( | const QString & | contactIdentifier,
|  | const QString & | initialAudioContentName = `QString()`,
|  | const QDateTime & | userActionTime = `QDateTime::currentDateTime()`
| ) |  |

Start a request to ensure that an audio call channel with the given contact contactIdentifier exists, creating it if necessary. This initially just creates a PendingChannel object, which can be used to track the success or failure of the request.

Parameters:

  contactIdentifier | The identifier of the contact to call.
  initialAudioContentName | The name of the initial audio CallContent that will be automatically added on the channel.
  userActionTime | The time at which user action occurred, or QDateTime() if this channel request is for some reason not involving user action.

Returns:
  A PendingChannel which will emit PendingChannel::finished successfully, when the Channel is available for handling using PendingChannel::channel(), or with an error if one has been encountered.

See also:
  ensureAndHandleChannel(), createAndHandleChannel()

PendingChannel * Tp::Account::ensureAndHandleAudioCall | ( | const ContactPtr & | contact,
|  | const QString & | initialAudioContentName = `QString()`,
|  | const QDateTime & | userActionTime = `QDateTime::currentDateTime()`
| ) |  |

Start a request to ensure that an audio call channel with the given contact contact exists, creating it if necessary. This initially just creates a PendingChannel object, which can be used to track the success or failure of the request.

Parameters:

  contact | The contact to call.
  initialAudioContentName | The name of the initial audio CallContent that will be automatically added on the channel.
  userActionTime | The time at which user action occurred, or QDateTime() if this channel request is for some reason not involving user action.

Returns:
  A PendingChannel which will emit PendingChannel::finished successfully, when the Channel is available for handling using PendingChannel::channel(), or with an error if one has been encountered.

See also:
  ensureAndHandleChannel(), createAndHandleChannel()

PendingChannel * Tp::Account::ensureAndHandleVideoCall | ( | const QString & | contactIdentifier,
|  | const QString & | initialVideoContentName = `QString()`,
|  | const QDateTime & | userActionTime = `QDateTime::currentDateTime()`
| ) |  |

Start a request to ensure that a video call channel with the given contact contactIdentifier exists, creating it if necessary. This initially just creates a PendingChannel object, which can be used to track the success or failure of the request.

Parameters:

  contactIdentifier | The identifier of the contact to call.
  initialVideoContentName | The name of the initial video CallContent that will be automatically added on the channel.
  userActionTime | The time at which user action occurred, or QDateTime() if this channel request is for some reason not involving user action.

Returns:
  A PendingChannel which will emit PendingChannel::finished successfully, when the Channel is available for handling using PendingChannel::channel(), or with an error if one has been encountered.

See also:
  ensureAndHandleChannel(), createAndHandleChannel()

PendingChannel * Tp::Account::ensureAndHandleVideoCall | ( | const ContactPtr & | contact,
|  | const QString & | initialVideoContentName = `QString()`,
|  | const QDateTime & | userActionTime = `QDateTime::currentDateTime()`
| ) |  |

Start a request to ensure that a video call channel with the given contact contact exists, creating it if necessary. This initially just creates a PendingChannel object, which can be used to track the success or failure of the request.

Parameters:

  contact | The contact to call.
  initialVideoContentName | The name of the initial video CallContent that will be automatically added on the channel.
  userActionTime | The time at which user action occurred, or QDateTime() if this channel request is for some reason not involving user action.

Returns:
  A PendingChannel which will emit PendingChannel::finished successfully, when the Channel is available for handling using PendingChannel::channel(), or with an error if one has been encountered.

See also:
  ensureAndHandleChannel(), createAndHandleChannel()

PendingChannel * Tp::Account::ensureAndHandleAudioVideoCall | ( | const QString & | contactIdentifier,
|  | const QString & | initialAudioContentName = `QString()`,
|  | const QString & | initialVideoContentName = `QString()`,
|  | const QDateTime & | userActionTime = `QDateTime::currentDateTime()`
| ) |  |

Start a request to ensure that an audio/video call channel with the given contact contactIdentifier exists, creating it if necessary. This initially just creates a PendingChannel object, which can be used to track the success or failure of the request.

Parameters:

  contactIdentifier | The identifier of the contact to call.
  initialAudioContentName | The name of the initial audio CallContent that will be automatically added on the channel.
  initialVideoContentName | The name of the initial video CallContent that will be automatically added on the channel.
  userActionTime | The time at which user action occurred, or QDateTime() if this channel request is for some reason not involving user action.

Returns:
  A PendingChannel which will emit PendingChannel::finished successfully, when the Channel is available for handling using PendingChannel::channel(), or with an error if one has been encountered.

See also:
  ensureAndHandleChannel(), createAndHandleChannel()

PendingChannel * Tp::Account::ensureAndHandleAudioVideoCall | ( | const ContactPtr & | contact,
|  | const QString & | initialAudioContentName = `QString()`,
|  | const QString & | initialVideoContentName = `QString()`,
|  | const QDateTime & | userActionTime = `QDateTime::currentDateTime()`
| ) |  |

Start a request to ensure that an audio/video call channel with the given contact contact exists, creating it if necessary. This initially just creates a PendingChannel object, which can be used to track the success or failure of the request.

Parameters:

  contact | The contact to call.
  initialAudioContentName | The name of the initial audio CallContent that will be automatically added on the channel.
  initialVideoContentName | The name of the initial video CallContent that will be automatically added on the channel.
  userActionTime | The time at which user action occurred, or QDateTime() if this channel request is for some reason not involving user action.

Returns:
  A PendingChannel which will emit PendingChannel::finished successfully, when the Channel is available for handling using PendingChannel::channel(), or with an error if one has been encountered.

See also:
  ensureAndHandleChannel(), createAndHandleChannel()

PendingChannel * Tp::Account::ensureAndHandleStreamedMediaCall | ( | const QString & | contactIdentifier,
|  | const QDateTime & | userActionTime = `QDateTime::currentDateTime()`
| ) |  |

Start a request to ensure that a media channel with the given contact contactIdentifier exists, creating it if necessary. This initially just creates a PendingChannel object, which can be used to track the success or failure of the request.

Parameters:

  contactIdentifier | The identifier of the contact to call.
  userActionTime | The time at which user action occurred, or QDateTime() if this channel request is for some reason not involving user action.

Returns:
  A PendingChannel which will emit PendingChannel::finished successfully, when the Channel is available for handling using PendingChannel::channel(), or with an error if one has been encountered.

See also:
  ensureAndHandleChannel(), createAndHandleChannel()

PendingChannel * Tp::Account::ensureAndHandleStreamedMediaCall | ( | const ContactPtr & | contact,
|  | const QDateTime & | userActionTime = `QDateTime::currentDateTime()`
| ) |  |

Start a request to ensure that a media channel with the given contact contact exists, creating it if necessary. This initially just creates a PendingChannel object, which can be used to track the success or failure of the request.

Parameters:

  contact | The contact to call.
  userActionTime | The time at which user action occurred, or QDateTime() if this channel request is for some reason not involving user action.

Returns:
  A PendingChannel which will emit PendingChannel::finished successfully, when the Channel is available for handling using PendingChannel::channel(), or with an error if one has been encountered.

See also:
  ensureAndHandleChannel(), createAndHandleChannel()

PendingChannel * Tp::Account::ensureAndHandleStreamedMediaAudioCall | ( | const QString & | contactIdentifier,
|  | const QDateTime & | userActionTime = `QDateTime::currentDateTime()`
| ) |  |

Start a request to ensure that an audio call with the given contact contactIdentifier exists, creating it if necessary. This initially just creates a PendingChannel object, which can be used to track the success or failure of the request.

This will only work on relatively modern connection managers, like telepathy-gabble 0.9.0 or later.

Parameters:

  contactIdentifier | The identifier of the contact to call.
  userActionTime | The time at which user action occurred, or QDateTime() if this channel request is for some reason not involving user action.

Returns:
  A PendingChannel which will emit PendingChannel::finished successfully, when the Channel is available for handling using PendingChannel::channel(), or with an error if one has been encountered.

See also:
  ensureAndHandleChannel(), createAndHandleChannel()

PendingChannel * Tp::Account::ensureAndHandleStreamedMediaAudioCall | ( | const ContactPtr & | contact,
|  | const QDateTime & | userActionTime = `QDateTime::currentDateTime()`
| ) |  |

Start a request to ensure that an audio call with the given contact contact exists, creating it if necessary. This initially just creates a PendingChannel object, which can be used to track the success or failure of the request.

This will only work on relatively modern connection managers, like telepathy-gabble 0.9.0 or later.

Parameters:

  contact | The contact to call.
  userActionTime | The time at which user action occurred, or QDateTime() if this channel request is for some reason not involving user action.

Returns:
  A PendingChannel which will emit PendingChannel::finished successfully, when the Channel is available for handling using PendingChannel::channel(), or with an error if one has been encountered.

See also:
  ensureAndHandleChannel(), createAndHandleChannel()

PendingChannel * Tp::Account::ensureAndHandleStreamedMediaVideoCall | ( | const QString & | contactIdentifier,
|  | bool | withAudio = `true`,
|  | const QDateTime & | userActionTime = `QDateTime::currentDateTime()`
| ) |  |

Start a request to ensure that a video call with the given contact contactIdentifier exists, creating it if necessary. This initially just creates a PendingChannel object, which can be used to track the success or failure of the request.

This will only work on relatively modern connection managers, like telepathy-gabble 0.9.0 or later.

Parameters:

  contactIdentifier | The identifier of the contact to call.
  withAudio | true if both audio and video are required, false for a video-only call.
  userActionTime | The time at which user action occurred, or QDateTime() if this channel request is for some reason not involving user action.

Returns:
  A PendingChannel which will emit PendingChannel::finished successfully, when the Channel is available for handling using PendingChannel::channel(), or with an error if one has been encountered.

See also:
  ensureAndHandleChannel(), createAndHandleChannel()

PendingChannel * Tp::Account::ensureAndHandleStreamedMediaVideoCall | ( | const ContactPtr & | contact,
|  | bool | withAudio = `true`,
|  | const QDateTime & | userActionTime = `QDateTime::currentDateTime()`
| ) |  |

Start a request to ensure that a video call with the given contact contact exists, creating it if necessary. This initially just creates a PendingChannel object, which can be used to track the success or failure of the request.

This will only work on relatively modern connection managers, like telepathy-gabble 0.9.0 or later.

Parameters:

  contact | The contact to call.
  withAudio | true if both audio and video are required, false for a video-only call.
  userActionTime | The time at which user action occurred, or QDateTime() if this channel request is for some reason not involving user action.

Returns:
  A PendingChannel which will emit PendingChannel::finished successfully, when the Channel is available for handling using PendingChannel::channel(), or with an error if one has been encountered.

See also:
  ensureAndHandleChannel(), createAndHandleChannel()

PendingChannel * Tp::Account::createAndHandleFileTransfer | ( | const QString & | contactIdentifier,
|  | const FileTransferChannelCreationProperties & | properties,
|  | const QDateTime & | userActionTime = `QDateTime::currentDateTime()`
| ) |  |

Start a request to create a file transfer channel with the given contact contactIdentifier. This initially just creates a PendingChannel object, which can be used to track the success or failure of the request.

Parameters:

  contactIdentifier | The identifier of the contact to send a file.
  properties | The desired properties.
  userActionTime | The time at which user action occurred, or QDateTime() if this channel request is for some reason not involving user action.

Returns:
  A PendingChannel which will emit PendingChannel::finished successfully, when the Channel is available for handling using PendingChannel::channel(), or with an error if one has been encountered.

See also:
  ensureAndHandleChannel(), createAndHandleChannel()

PendingChannel * Tp::Account::createAndHandleFileTransfer | ( | const ContactPtr & | contact,
|  | const FileTransferChannelCreationProperties & | properties,
|  | const QDateTime & | userActionTime = `QDateTime::currentDateTime()`
| ) |  |

Start a request to create a file transfer channel with the given contact contact. This initially just creates a PendingChannel object, which can be used to track the success or failure of the request.

Parameters:

  contact | The contact to send a file.
  properties | The desired properties.
  userActionTime | The time at which user action occurred, or QDateTime() if this channel request is for some reason not involving user action.

Returns:
  A PendingChannel which will emit PendingChannel::finished successfully, when the Channel is available for handling using PendingChannel::channel(), or with an error if one has been encountered.

See also:
  ensureAndHandleChannel(), createAndHandleChannel()

PendingChannel * Tp::Account::createAndHandleStreamTube | ( | const QString & | contactIdentifier,
|  | const QString & | service,
|  | const QDateTime & | userActionTime = `QDateTime::currentDateTime()`
| ) |  |

Start a request to create a stream tube channel with the given contact identifier contactIdentifier. This initially just creates a PendingChannel object, which can be used to track the success or failure of the request.

Parameters:

  contactIdentifier | The identifier of the contact to open a stream tube with.
  service | The stream tube service.
  userActionTime | The time at which user action occurred, or QDateTime() if this channel request is for some reason not involving user action.

Returns:
  A PendingChannel which will emit PendingChannel::finished successfully, when the Channel is available for handling using PendingChannel::channel(), or with an error if one has been encountered.

See also:
  ensureAndHandleChannel(), createAndHandleChannel()

PendingChannel * Tp::Account::createAndHandleStreamTube | ( | const ContactPtr & | contact,
|  | const QString & | service,
|  | const QDateTime & | userActionTime = `QDateTime::currentDateTime()`
| ) |  |

Start a request to create a stream tube channel with the given contact contact. This initially just creates a PendingChannel object, which can be used to track the success or failure of the request.

Parameters:

  contact | The contact to open a stream tube with.
  service | The stream tube service.
  userActionTime | The time at which user action occurred, or QDateTime() if this channel request is for some reason not involving user action.

Returns:
  A PendingChannel which will emit PendingChannel::finished successfully, when the Channel is available for handling using PendingChannel::channel(), or with an error if one has been encountered.

See also:
  ensureAndHandleChannel(), createAndHandleChannel()

PendingChannel * Tp::Account::createAndHandleConferenceTextChat | ( | const QList< ChannelPtr > & | channels,
|  | const QList< ContactPtr > & | initialInviteeContacts = `QList<ContactPtr>()`,
|  | const QDateTime & | userActionTime = `QDateTime::currentDateTime()`
| ) |  |

Start a request to create a conference text chat with the given channels channels. This initially just creates a PendingChannel object, which can be used to track the success or failure of the request.

Parameters:

  channels | The conference channels.
  initialInviteeContacts | A list of additional contacts to be invited to this conference when it is created.
  userActionTime | The time at which user action occurred, or QDateTime() if this channel request is for some reason not involving user action.

Returns:
  A PendingChannel which will emit PendingChannel::finished successfully, when the Channel is available for handling using PendingChannel::channel(), or with an error if one has been encountered.

See also:
  ensureAndHandleChannel(), createAndHandleChannel()

PendingChannel * Tp::Account::createAndHandleConferenceTextChat | ( | const QList< ChannelPtr > & | channels,
|  | const QStringList & | initialInviteeContactsIdentifiers = `QStringList()`,
|  | const QDateTime & | userActionTime = `QDateTime::currentDateTime()`
| ) |  |

Start a request to create a conference text chat with the given channels channels. This initially just creates a PendingChannel object, which can be used to track the success or failure of the request.

Parameters:

  channels | The conference channels.
  initialInviteeContactsIdentifiers | A list of additional contacts identifiers to be invited to this conference when it is created.
  userActionTime | The time at which user action occurred, or QDateTime() if this channel request is for some reason not involving user action.

Returns:
  A PendingChannel which will emit PendingChannel::finished successfully, when the Channel is available for handling using PendingChannel::channel(), or with an error if one has been encountered.

See also:
  ensureAndHandleChannel(), createAndHandleChannel()

PendingChannel * Tp::Account::createAndHandleConferenceTextChatroom | ( | const QString & | roomName,
|  | const QList< ChannelPtr > & | channels,
|  | const QStringList & | initialInviteeContactsIdentifiers = `QStringList()`,
|  | const QDateTime & | userActionTime = `QDateTime::currentDateTime()`
| ) |  |

Start a request to create a conference text chat room with the given channels channels and room name roomName. This initially just creates a PendingChannel object, which can be used to track the success or failure of the request.

Parameters:

  roomName | The room name.
  channels | The conference channels.
  initialInviteeContactsIdentifiers | A list of additional contacts identifiers to be invited to this conference when it is created.
  userActionTime | The time at which user action occurred, or QDateTime() if this channel request is for some reason not involving user action.

Returns:
  A PendingChannel which will emit PendingChannel::finished successfully, when the Channel is available for handling using PendingChannel::channel(), or with an error if one has been encountered.

See also:
  ensureAndHandleChannel(), createAndHandleChannel()

PendingChannel * Tp::Account::createAndHandleConferenceTextChatroom | ( | const QString & | roomName,
|  | const QList< ChannelPtr > & | channels,
|  | const QList< ContactPtr > & | initialInviteeContacts = `QList<ContactPtr>()`,
|  | const QDateTime & | userActionTime = `QDateTime::currentDateTime()`
| ) |  |

Start a request to create a conference text chat room with the given channels channels and room name roomName. This initially just creates a PendingChannel object, which can be used to track the success or failure of the request.

Parameters:

  roomName | The room name.
  channels | The conference channels.
  initialInviteeContacts | A list of additional contacts to be invited to this conference when it is created.
  userActionTime | The time at which user action occurred, or QDateTime() if this channel request is for some reason not involving user action.

Returns:
  A PendingChannel which will emit PendingChannel::finished successfully, when the Channel is available for handling using PendingChannel::channel(), or with an error if one has been encountered.

See also:
  ensureAndHandleChannel(), createAndHandleChannel()

PendingChannel * Tp::Account::createAndHandleConferenceStreamedMediaCall | ( | const QList< ChannelPtr > & | channels,
|  | const QStringList & | initialInviteeContactsIdentifiers = `QStringList()`,
|  | const QDateTime & | userActionTime = `QDateTime::currentDateTime()`
| ) |  |

Start a request to create a conference media call with the given channels channels. This initially just creates a PendingChannel object, which can be used to track the success or failure of the request.

Parameters:

  channels | The conference channels.
  initialInviteeContactsIdentifiers | A list of additional contacts identifiers to be invited to this conference when it is created.
  userActionTime | The time at which user action occurred, or QDateTime() if this channel request is for some reason not involving user action.

Returns:
  A PendingChannel which will emit PendingChannel::finished successfully, when the Channel is available for handling using PendingChannel::channel(), or with an error if one has been encountered.

See also:
  ensureAndHandleChannel(), createAndHandleChannel()

PendingChannel * Tp::Account::createAndHandleConferenceStreamedMediaCall | ( | const QList< ChannelPtr > & | channels,
|  | const QList< ContactPtr > & | initialInviteeContacts = `QList<ContactPtr>()`,
|  | const QDateTime & | userActionTime = `QDateTime::currentDateTime()`
| ) |  |

Start a request to create a conference media call with the given channels channels. This initially just creates a PendingChannel object, which can be used to track the success or failure of the request.

Parameters:

  channels | The conference channels.
  initialInviteeContacts | A list of additional contacts to be invited to this conference when it is created.
  userActionTime | The time at which user action occurred, or QDateTime() if this channel request is for some reason not involving user action.

Returns:
  A PendingChannel which will emit PendingChannel::finished successfully, when the Channel is available for handling using PendingChannel::channel(), or with an error if one has been encountered.

See also:
  ensureAndHandleChannel(), createAndHandleChannel()

PendingChannel * Tp::Account::createAndHandleContactSearch | ( | const QString & | server = `QString()`,
|  | uint | limit = `0`,
|  | const QDateTime & | userActionTime = `QDateTime::currentDateTime()`
| ) |  |

Start a request to create a contact search channel with the given server server and limit limit. This initially just creates a PendingChannel object, which can be used to track the success or failure of the request.

Parameters:

  server | For protocols which support searching for contacts on multiple servers with different DNS names (like XMPP), the DNS name of the server to be searched, e.g. "characters.shakespeare.lit". Otherwise, an empty string. If the protocol does not support specifying a search server, this will be ignored.
  limit | The desired maximum number of results that should be returned by a doing a search. If the protocol does not support specifying a limit for the number of results returned at a time, this will be ignored.
  userActionTime | The time at which user action occurred, or QDateTime() if this channel request is for some reason not involving user action.

Returns:
  A PendingChannel which will emit PendingChannel::finished successfully, when the Channel is available for handling using PendingChannel::channel(), or with an error if one has been encountered.

See also:
  ensureAndHandleChannel(), createAndHandleChannel()

PendingChannelRequest * Tp::Account::createChannel | ( | const QVariantMap & | request,
|  | const QDateTime & | userActionTime = `QDateTime::currentDateTime()`,
|  | const QString & | preferredHandler = `QString()`,
|  | const ChannelRequestHints & | hints = `ChannelRequestHints()`
| ) |  |

Start a request to create a channel. This initially just creates a PendingChannelRequest object, which can be used to track the success or failure of the request, or to cancel it.

Helper methods for text chat, text chat room, media call and conference are provided and should be used if appropriate.

Parameters:

  request | A dictionary containing desirable properties.
  userActionTime | The time at which user action occurred, or QDateTime() if this channel request is for some reason not involving user action.
  preferredHandler | Either the well-known bus name (starting with org.freedesktop.Telepathy.Client.) of the preferred handler for this channel, or an empty string to indicate that any handler would be acceptable.
  hints | Arbitrary metadata which will be relayed to the handler if supported, as indicated by supportsRequestHints().

Returns:
  A PendingChannelRequest which will emit PendingChannelRequest::finished when the request has been made.

See also:
  createChannel()

PendingChannelRequest * Tp::Account::ensureChannel | ( | const QVariantMap & | request,
|  | const QDateTime & | userActionTime = `QDateTime::currentDateTime()`,
|  | const QString & | preferredHandler = `QString()`,
|  | const ChannelRequestHints & | hints = `ChannelRequestHints()`
| ) |  |

Start a request to ensure that a channel exists, creating it if necessary. This initially just creates a PendingChannelRequest object, which can be used to track the success or failure of the request, or to cancel it.

Helper methods for text chat, text chat room, media call and conference are provided and should be used if appropriate.

Parameters:

  request | A dictionary containing desirable properties.
  userActionTime | The time at which user action occurred, or QDateTime() if this channel request is for some reason not involving user action.
  preferredHandler | Either the well-known bus name (starting with org.freedesktop.Telepathy.Client.) of the preferred handler for this channel, or an empty string to indicate that any handler would be acceptable.
  hints | Arbitrary metadata which will be relayed to the handler if supported, as indicated by supportsRequestHints().

Returns:
  A PendingChannelRequest which will emit PendingChannelRequest::finished when the request has been made.

See also:
  createChannel()

PendingChannel * Tp::Account::createAndHandleChannel | ( | const QVariantMap & | request,
|  | const QDateTime & | userActionTime
| ) |  |

Start a request to create channel. This initially just creates a PendingChannel object, which can be used to track the success or failure of the request.

Helper methods for text chat, text chat room, media call and conference are provided and should be used if appropriate.

The caller is responsible for closing the channel with Channel::requestClose() or Channel::requestLeave() when it has finished handling it.

A possible error returned by this method is TP_QT_ERROR_NOT_AVAILABLE, in case a conflicting channel that matches request already exists.

Parameters:

  request | A dictionary containing desirable properties.
  userActionTime | The time at which user action occurred, or QDateTime() if this channel request is for some reason not involving user action.

Returns:
  A PendingChannel which will emit PendingChannel::finished successfully, when the Channel is available for handling using PendingChannel::channel(), or with an error if one has been encountered.

See also:
  ensureAndHandleChannel()

PendingChannel * Tp::Account::ensureAndHandleChannel | ( | const QVariantMap & | request,
|  | const QDateTime & | userActionTime
| ) |  |

Start a request to ensure that a channel exists, creating it if necessary. This initially just creates a PendingChannel object, which can be used to track the success or failure of the request.

Helper methods for text chat, text chat room, media call and conference are provided and should be used if appropriate.

The caller is responsible for closing the channel with Channel::requestClose() or Channel::requestLeave() when it has finished handling it.

A possible error returned by this method is TP_QT_ERROR_NOT_YOURS, in case somebody else is already handling a channel that matches request.

Parameters:

  request | A dictionary containing desirable properties.
  userActionTime | The time at which user action occurred, or QDateTime() if this channel request is for some reason not involving user action.

Returns:
  A PendingChannel which will emit PendingChannel::finished successfully, when the Channel is available for handling using PendingChannel::channel(), or with an error if one has been encountered.

See also:
  createAndHandleChannel()

void Tp::Account::removed | ( |  | ) | `[signal]`

Emitted when this account is removed from the account manager it belonged.

See also:
  remove().

void Tp::Account::serviceNameChanged | ( | const QString & | serviceName | ) | `[signal]`

Emitted when the value of serviceName() changes.

Parameters:

  serviceName | The new service name of this account.

See also:
  serviceName(), setServiceName()

void Tp::Account::profileChanged | ( | const Tp::ProfilePtr & | profile | ) | `[signal]`

Emitted when the value of profile() changes.

Parameters:

  profile | The new profile of this account.

See also:
  profile()

void Tp::Account::displayNameChanged | ( | const QString & | displayName | ) | `[signal]`

Emitted when the value of displayName() changes.

Parameters:

  displayName | The new display name of this account.

See also:
  displayName(), setDisplayName()

void Tp::Account::iconNameChanged | ( | const QString & | iconName | ) | `[signal]`

Emitted when the value of iconName() changes.

Parameters:

  iconName | The new icon name of this account.

See also:
  iconName(), setIconName()

void Tp::Account::nicknameChanged | ( | const QString & | nickname | ) | `[signal]`

Emitted when the value of nickname() changes.

Parameters:

  nickname | The new nickname of this account.

See also:
  nickname(), setNickname()

void Tp::Account::normalizedNameChanged | ( | const QString & | normalizedName | ) | `[signal]`

Emitted when the value of normalizedName() changes.

Parameters:

  normalizedName | The new normalized name of this account.

See also:
  normalizedName()

void Tp::Account::validityChanged | ( | bool | validity | ) | `[signal]`

Emitted when the value of isValidAccount() changes.

Parameters:

  validity | The new validity of this account.

See also:
  isValidAccount()

void Tp::Account::stateChanged | ( | bool | state | ) | `[signal]`

Emitted when the value of isEnabled() changes.

Parameters:

  state | The new state of this account.

See also:
  isEnabled()

void Tp::Account::capabilitiesChanged | ( | const Tp::ConnectionCapabilities & | capabilities | ) | `[signal]`

Emitted when the value of capabilities() changes.

Parameters:

  capabilities | The new capabilities of this account.

See also:
  capabilities()

void Tp::Account::connectsAutomaticallyPropertyChanged | ( | bool | connectsAutomatically | ) | `[signal]`

Emitted when the value of connectsAutomatically() changes.

Parameters:

  connectsAutomatically | The new value of connects automatically property of this account.

See also:
  isEnabled()

void Tp::Account::firstOnline | ( |  | ) | `[signal]`

Emitted when this account is first put online.

See also:
  hasBeenOnline()

void Tp::Account::parametersChanged | ( | const QVariantMap & | parameters | ) | `[signal]`

Emitted when the value of parameters() changes.

Parameters:

  parameters | The new parameters of this account.

See also:
  parameters()

void Tp::Account::changingPresence | ( | bool | value | ) | `[signal]`

Emitted when the value of isChangingPresence() changes.

Parameters:

  value | Whether this account's connection is changing presence.

See also:
  isChangingPresence()

void Tp::Account::automaticPresenceChanged | ( | const Tp::Presence & | automaticPresence | ) | `[signal]`

Emitted when the value of automaticPresence() changes.

Parameters:

  automaticPresence | The new value of automatic presence property of this account.

See also:
  automaticPresence(), currentPresenceChanged()

void Tp::Account::currentPresenceChanged | ( | const Tp::Presence & | currentPresence | ) | `[signal]`

Emitted when the value of currentPresence() changes.

Parameters:

  currentPresence | The new value of the current presence property of this account.

See also:
  currentPresence()

void Tp::Account::requestedPresenceChanged | ( | const Tp::Presence & | requestedPresence | ) | `[signal]`

Emitted when the value of requestedPresence() changes.

Parameters:

  requestedPresence | The new value of the requested presence property of this account.

See also:
  requestedPresence(), currentPresenceChanged()

void Tp::Account::onlinenessChanged | ( | bool | online | ) | `[signal]`

Emitted when the value of isOnline() changes.

Parameters:

  online | Whether this account is online.

See also:
  isOnline(), currentPresence()

void Tp::Account::avatarChanged | ( | const Tp::Avatar & | avatar | ) | `[signal]`

Emitted when the value of avatar() changes.

Parameters:

  avatar | The new avatar of this account.

See also:
  avatar()

void Tp::Account::connectionStatusChanged | ( | Tp::ConnectionStatus | status | ) | `[signal]`

Emitted when the connection status changes.

Parameters:

  status | The new status of this account connection.

See also:
  connectionStatus(), connectionStatusReason(), connectionError(), connectionErrorDetails(), Connection::ErrorDetails

void Tp::Account::connectionChanged | ( | const Tp::ConnectionPtr & | connection | ) | `[signal]`

Emitted when the value of connection() changes.

The connection will have the features set in the ConnectionFactory used by this account ready and the same channel and contact factories used by this account.

Parameters:

  connection | A ConnectionPtr pointing to the new Connection object or a null ConnectionPtr if there is no connection.

See also:
  connection()

Client::AccountInterface * Tp::Account::baseInterface | ( |  | ) | const`[protected]`

Return the Client::AccountInterface interface proxy object for this account. This method is protected since the convenience methods provided by this class should generally be used instead of calling D-Bus methods directly.

Returns:
  A pointer to the existing Client::AccountInterface object for this Account object.

Client::ChannelDispatcherInterface * Tp::Account::dispatcherInterface | ( |  | ) | const`[protected]`

Return the Client::ChannelDispatcherInterface interface proxy object to use for requesting channels on this account.

This method is protected since the convenience methods provided by this class should generally be used instead of calling D-Bus methods directly.

Returns:
  A pointer to the existing Client::ChannelDispatcherInterface object for this Account object.

## Member Data Documentation

const Feature Tp::Account::FeatureCore`[static]`

Feature representing the core that needs to become ready to make the Account object usable.

Note that this feature must be enabled in order to use most Account methods. See specific methods documentation for more details.

When calling isReady(), becomeReady(), this feature is implicitly added to the requested features.

const Feature Tp::Account::FeatureAvatar`[static]`

Feature used in order to access account avatar info.

See avatar specific methods' documentation for more details.

See also:
  avatar(), avatarChanged()

const Feature Tp::Account::FeatureProtocolInfo`[static]`

Feature used in order to access account protocol info.

See protocol info specific methods' documentation for more details.

See also:
  protocolInfo()

const Feature Tp::Account::FeatureCapabilities`[static]`

Feature used in order to access account capabilities.

Enabling this feature will also enable FeatureProtocolInfo and FeatureProfile.

See capabilities specific methods' documentation for more details.

See also:
  capabilities(), capabilitiesChanged()

const Feature Tp::Account::FeatureProfile`[static]`

Feature used in order to access account profile info.

See profile specific methods' documentation for more details.

See also:
  profile(), profileChanged()

## Property Documentation

bool Tp::Account::valid`[read]`

bool Tp::Account::enabled`[read]`

QString Tp::Account::cmName`[read]`

Return the connection manager name of this account.

Returns:
  The connection manager name.

QString Tp::Account::protocolName`[read]`

Return the protocol name of this account.

Returns:
  The protocol name.

QString Tp::Account::serviceName`[read]`

Return the service name of this account.

Note that this method will fallback to protocolName() if service name is not known.

Change notification is via the serviceNameChanged() signal.

This method requires Account::FeatureCore to be ready.

Returns:
  The service name.

See also:
  serviceNameChanged(), setServiceName(), protocolName()

ProfilePtr Tp::Account::profile`[read]`

Return the profile used by this account.

Profiles are intended to describe variants of the basic protocols supported by Telepathy connection managers. An example of this would be Google Talk vs Facebook chat vs Jabber/XMPP. Google Talk is a specific case of XMPP with well-known capabilities, quirks and settings, and Facebook chat is a subset of the standard XMPP offering.

This method will return the profile for this account based on the service used by it.

Note that if a profile for serviceName() is not available, a fake profile (Profile::isFake() is `true`) will be returned in case protocolInfo() is valid.

The fake profile will contain the following info:

- Profile::type() will return "IM"
- Profile::provider() will return an empty string
- Profile::serviceName() will return "cmName()-serviceName()"
- Profile::name() and Profile::protocolName() will return protocolName()
- Profile::iconName() will return "im-protocolName()"
- Profile::cmName() will return cmName()
- Profile::parameters() will return a list matching CM default parameters for protocol with name protocolName()
- Profile::presences() will return an empty list and Profile::allowOtherPresences() will return `true`, meaning that CM presences should be used
- Profile::unsupportedChannelClassSpecs() will return an empty list

Change notification is via the profileChanged() signal.

This method requires Account::FeatureProfile to be ready.

Returns:
  A pointer to the Profile object.

See also:
  profileChanged(), serviceName()

QString Tp::Account::displayName`[read]`

Return the display name of this account.

Change notification is via the displayNameChanged() signal.

This method requires Account::FeatureCore to be ready.

Returns:
  The display name.

See also:
  displayNameChanged(), setDisplayName()

QString Tp::Account::iconName`[read]`

Return the icon name of this account.

If the account has no icon, and Account::FeatureProfile is enabled, the icon from the result of profile() will be used.

If neither the account nor the profile has an icon, and Account::FeatureProtocolInfo is enabled, the icon from protocolInfo() will be used if set.

As a last resort, "im-" + protocolName() will be returned.

This matches the fallbacks recommended by the Telepathy specification.

Change notification is via the iconNameChanged() signal.

This method requires Account::FeatureCore to be ready.

Returns:
  The icon name.

See also:
  iconNameChanged(), setIconName()

QString Tp::Account::nickname`[read]`

Return the nickname of this account.

Change notification is via the nicknameChanged() signal.

This method requires Account::FeatureCore to be ready.

Returns:
  The nickname.

See also:
  nicknameChanged(), setNickname()

AvatarSpec Tp::Account::avatarRequirements`[read]`

Return the avatar requirements (size limits, supported MIME types, etc) for avatars passed to setAvatar() on this account.

For now this method will only return the avatar requirements found in protocolInfo() if Account::FeatureProtocolInfo is ready, otherwise an invalid AvatarSpec instance is returned.

Returns:
  The requirements as an AvatarSpec object.

See also:
  avatar(), setAvatar()

const Avatar & Tp::Account::avatar`[read]`

Return the avatar of this account.

Change notification is via the avatarChanged() signal.

This method requires Account::FeatureAvatar to be ready.

Returns:
  The avatar as an Avatar object.

See also:
  avatarChanged(), setAvatar()

QVariantMap Tp::Account::parameters`[read]`

Return the parameters of this account.

The account parameters are represented as a map from connection manager parameter names to their values.

Change notification is via the parametersChanged() signal.

This method requires Account::FeatureCore to be ready.

Returns:
  The parameters as QVariantMap.

See also:
  parametersChanged(), updateParameters()

ProtocolInfo Tp::Account::protocolInfo`[read]`

Return the protocol info of this account protocol.

This method requires Account::FeatureProtocolInfo to be ready.

Returns:
  The protocol info as a ProtocolInfo object.

ConnectionCapabilities Tp::Account::capabilities`[read]`

Return the capabilities for this account.

Note that this method will return the connection() capabilities if the account is online and ready. If the account is disconnected, it will fallback to return the subtraction of the protocolInfo() capabilities and the profile() unsupported capabilities.

Change notification is via the capabilitiesChanged() signal.

This method requires Account::FeatureCapabilities to be ready.

Returns:
  The capabilities as a ConnectionCapabilities object.

See also:
  capabilitiesChanged(), protocolInfo(), profile()

bool Tp::Account::hasBeenOnline`[read]`

Return whether this account has ever been put online successfully.

This property cannot change from `true` to `false`, only from `false` to `true`. When the account successfully goes online for the first time, or when it is detected that this has already happened, the firstOnline() signal is emitted.

This method requires Account::FeatureCore to be ready.

Returns:
  `true` if ever been online, `false` otherwise.

bool Tp::Account::connectsAutomatically`[read]`

Return whether this account should be put online automatically whenever possible.

Change notification is via the connectsAutomaticallyPropertyChanged() signal.

This method requires Account::FeatureCore to be ready.

Returns:
  `true` if it should try to connect automatically, `false` otherwise.

See also:
  connectsAutomaticallyPropertyChanged(), setConnectsAutomatically()

ConnectionStatus Tp::Account::connectionStatus`[read]`

Return the status of this account connection.

Note that this method may return a different value from the one returned by Connection::status() on this account connection. This happens because this value will change whenever the connection status of this account connection changes and won't consider the Connection introspection process. The same rationale also applies to connectionStatusReason() and connectionErrorDetails().

A valid use case for this is for account creation UIs that wish to display the accounts connection status and nothing else on the connections (e.g. retrieve the contact list).

Change notification is via the connectionStatusChanged() signal.

This method requires Account::FeatureCore to be ready.

Returns:
  The connection status as ConnectionStatus.

See also:
  connectionStatusChanged(), connectionStatusReason(), connectionError(), connectionErrorDetails()

ConnectionStatusReason Tp::Account::connectionStatusReason`[read]`

Return the reason for this account connection status.

This represents the reason for the last change to connectionStatus().

Note that this method may return a different value from the one returned by Connection::statusReason() on this account connection. See connectionStatus() for more details.

This method requires Account::FeatureCore to be ready.

Returns:
  The connection status reason as ConnectionStatusReason.

See also:
  connectionStatusChanged(), connectionStatus(), connectionError(), connectionErrorDetails()

QString Tp::Account::connectionError`[read]`

Return the D-Bus error name for the last disconnection or connection failure, (in particular, TP_QT_ERROR_CANCELLED if it was disconnected by user request), or an empty string if the account is connected.

This method requires Account::FeatureCore to be ready.

Returns:
  The D-Bus error name for the last disconnection or connection failure.

See also:
  connectionErrorDetails(), connectionStatus(), connectionStatusReason(), connectionStatusChanged()

Connection::ErrorDetails Tp::Account::connectionErrorDetails`[read]`

Return detailed information related to connectionError().

Note that this method may return a different value from the one returned by Connection::errorDetails() on this account connection. See connectionStatus() for more details.

This method requires Account::FeatureCore to be ready.

Returns:
  The connection error details as a Connection::ErrorDetails object.

See also:
  connectionError(), connectionStatus(), connectionStatusReason(), connectionStatusChanged(), Connection::ErrorDetails.

ConnectionPtr Tp::Account::connection`[read]`

Return the object representing the connection of this account.

Note that the Connection object returned by this method will have the features set in the connectionFactory() used by this account ready.

Change notification is via the connectionChanged() signal.

This method requires Account::FeatureCore to be ready.

Returns:
  A pointer to the Connection object, or a null ConnectionPtr if there is no connection currently or if an error occurred.

See also:
  connectionChanged()

bool Tp::Account::changingPresence`[read]`

Presence Tp::Account::automaticPresence`[read]`

Return the presence status that this account will have set on it by the account manager if it brings it online automatically.

Change notification is via the automaticPresenceChanged() signal.

This method requires Account::FeatureCore to be ready.

Returns:
  The automatic presence as a Presence object.

See also:
  automaticPresenceChanged(), setAutomaticPresence()

Presence Tp::Account::currentPresence`[read]`

Return the actual presence of this account.

Change notification is via the currentPresenceChanged() signal.

This method requires Account::FeatureCore to be ready.

Returns:
  The current presence as a Presence object.

See also:
  currentPresenceChanged(), setRequestedPresence(), requestedPresence(), automaticPresence()

Presence Tp::Account::requestedPresence`[read]`

Return the requested presence of this account.

Change notification is via the requestedPresenceChanged() signal.

This method requires Account::FeatureCore to be ready.

Returns:
  The requested presence as a Presence object.

See also:
  requestedPresenceChanged(), setRequestedPresence(), currentPresence(), automaticPresence()

bool Tp::Account::online`[read]`

QString Tp::Account::uniqueIdentifier`[read]`

Return the unique identifier of this account.

Returns:
  The unique identifier.

QString Tp::Account::normalizedName`[read]`

Return the normalized user ID of the local user of this account.

It is unspecified whether this user ID is globally unique.

As currently implemented, IRC user IDs are only unique within the same IRCnet. On some saner protocols, the user ID includes a DNS name which provides global uniqueness.

If this value is not known yet (which will always be the case for accounts that have never been online), it will be an empty string.

It is possible that this value will change if the connection manager's normalization algorithm changes.

This method requires Account::FeatureCore to be ready.

Returns:
  The normalized user ID of the local user.

See also:
  normalizedNameChanged()