Home · All Classes · All Namespaces · Modules · Functions · Files |
The ProtocolInfo class represents a Telepathy Protocol. More...
#include <TelepathyQt/ProtocolInfo>
Public Member Functions | |
ProtocolInfo () | |
ProtocolInfo (const ProtocolInfo &other) | |
~ProtocolInfo () | |
bool | isValid () const |
ProtocolInfo & | operator= (const ProtocolInfo &other) |
QString | cmName () const |
QString | name () const |
ProtocolParameterList | parameters () const |
bool | hasParameter (const QString &name) const |
bool | canRegister () const |
ConnectionCapabilities | capabilities () const |
QString | vcardField () const |
QString | englishName () const |
QString | iconName () const |
PresenceSpecList | allowedPresenceStatuses () const |
AvatarSpec | avatarRequirements () const |
QStringList | addressableVCardFields () const |
QStringList | addressableUriSchemes () const |
PendingString * | normalizeVCardAddress (const QString &vcardField, const QString &vcardAddress) |
PendingString * | normalizeContactUri (const QString &uri) |
The ProtocolInfo class represents a Telepathy Protocol.
Tp::ProtocolInfo::ProtocolInfo | ( | ) |
Tp::ProtocolInfo::ProtocolInfo | ( | const ProtocolInfo & | other | ) |
Tp::ProtocolInfo::~ProtocolInfo | ( | ) |
Class destructor.
|
inline |
ProtocolInfo & Tp::ProtocolInfo::operator= | ( | const ProtocolInfo & | other | ) |
QString Tp::ProtocolInfo::cmName | ( | ) | const |
Return the short name of the connection manager (e.g. "gabble") for this protocol.
QString Tp::ProtocolInfo::name | ( | ) | const |
Return the string identifying this protocol as described in the Telepathy specification (e.g. "jabber").
This identifier is not intended to be displayed to users directly; user interfaces are responsible for mapping them to localized strings.
ProtocolParameterList Tp::ProtocolInfo::parameters | ( | ) | const |
Return all supported parameters for this protocol. The parameters' names may either be the well-known strings specified by the Telepathy specification (e.g. "account" and "password"), or implementation-specific strings.
bool Tp::ProtocolInfo::hasParameter | ( | const QString & | name | ) | const |
Return whether a given parameter can be passed to the connection manager when creating a connection to this protocol.
name | The name of a parameter. |
bool Tp::ProtocolInfo::canRegister | ( | ) | const |
Return whether it might be possible to register new accounts on this protocol, by setting the special parameter named register
to true
.
ConnectionCapabilities Tp::ProtocolInfo::capabilities | ( | ) | const |
Return the capabilities that are expected to be available from a connection to this protocol, i.e. those for which Connection::createChannel() can reasonably be expected to succeed. User interfaces can use this information to show or hide UI components.
QString Tp::ProtocolInfo::vcardField | ( | ) | const |
Return the name of the most common vcard field used for this protocol's contact identifiers, normalized to lower case.
One valid use of this field is to answer the question: given a contact's vcard containing an X-JABBER field, how can you communicate with the contact? By iterating through protocols looking for an x-jabber VCardField, one can build up a list of protocols that handle x-jabber, then offer the user a list of accounts for those protocols and/or the option to create a new account for one of those protocols. It is not necessarily valid to interpret contacts' identifiers as values of this vcard field. For instance, telepathy-sofiasip supports contacts whose identifiers are of the form sip:jenny or tel:8675309, which would not normally both be represented by any single vcard field. @exa mple. com
QString Tp::ProtocolInfo::englishName | ( | ) | const |
Return the English-language name of this protocol, such as "AIM" or "Yahoo!".
The name can be used as a fallback if an application doesn't have a localized name for this protocol.
If the manager file or the CM service doesn't specify the english name, it is inferred from this protocol name, such that for example "google-talk" becomes "Google Talk", but "local-xmpp" becomes "Local Xmpp".
QString Tp::ProtocolInfo::iconName | ( | ) | const |
Return the name of an icon for this protocol in the system's icon theme, such as "im-msn".
If the manager file or the CM service doesn't specify the icon name, "im-<protocolname>" is assumed.
PresenceSpecList Tp::ProtocolInfo::allowedPresenceStatuses | ( | ) | const |
Return a list of PresenceSpec representing the possible presence statuses from a connection to this protocol.
AvatarSpec Tp::ProtocolInfo::avatarRequirements | ( | ) | const |
Return the requirements (size limits, supported MIME types, etc) for avatars used on to this protocol.
QStringList Tp::ProtocolInfo::addressableVCardFields | ( | ) | const |
Return the vcard fields that can be used to request a contact with on this protocol, normalized to lower case.
QStringList Tp::ProtocolInfo::addressableUriSchemes | ( | ) | const |
Return the URI schemes that are supported by this protocol.
PendingString * Tp::ProtocolInfo::normalizeVCardAddress | ( | const QString & | vcardField, |
const QString & | vcardAddress | ||
) |
Attempt to normalize the given vcardAddress.
For example, a vcard TEL field formatted as +1 (206) 555 1234, could be normalized to +12065551234.
If a vcard address X would be normalized to Y, a successful ContactManager contact request using ContactManager::contactsForVCardAddresses() for vcard address X would result in a contact with Y reported as an address that can identify it in Contact::vcardAddresses().
vcardField | The vcard field the vcardAddress belongs to. |
vcardAddress | The address to normalize. |
PendingString * Tp::ProtocolInfo::normalizeContactUri | ( | const QString & | uri | ) |
Attempt to normalize the given contact uri.
If the URI has extra information beyond what's necessary to identify a particular contact, such as an XMPP resource or an action to carry out, this extra information wil be removed.
An example would be xmpp:romeo/Empathy?message;body=Hello, which would be normalized to xmpp: @Exa mple. Comromeo. @exa mple. com
If a URI address X would be normalized to Y, a successful ContactManager contact request using ContactManager::contactsForUris() for URI address X would result in a contact with Y reported as an address that can identify it in Contact::uris().
uri | The URI to normalize. |
Copyright © 2008-2011 Collabora Ltd. and Nokia Corporation | Telepathy-Qt 0.9.7 |