KIMProxy Class Reference
This class provides an easy-to-use interface to any instant messengers or chat programs that you have installed that implement KIMIface. More...
#include <kimproxy.h>
Inheritance diagram for KIMProxy:


Public Slots | |
void | registeredToDCOP (const QCString &appId) |
void | unregisteredFromDCOP (const QCString &appId) |
Signals | |
void | sigContactPresenceChanged (const QString &uid) |
void | sigPresenceInfoExpired () |
Public Member Functions | |
bool | initialize () |
QStringList | allContacts () |
QStringList | reachableContacts () |
QStringList | onlineContacts () |
QStringList | fileTransferContacts () |
bool | isPresent (const QString &uid) |
QString | displayName (const QString &uid) |
int | presenceNumeric (const QString &uid) |
QString | presenceString (const QString &uid) |
QPixmap | presenceIcon (const QString &uid) |
bool | canReceiveFiles (const QString &uid) |
bool | canRespond (const QString &uid) |
QString | locate (const QString &contactId, const QString &protocol) |
QString | context (const QString &uid) |
void | chatWithContact (const QString &uid) |
void | messageContact (const QString &uid, const QString &message) |
void | sendFile (const QString &uid, const KURL &sourceURL, const QString &altFileName=QString::null, uint fileSize=0) |
bool | addContact (const QString &contactId, const QString &protocol) |
bool | imAppsAvailable () |
bool | startPreferredApp () |
void | contactPresenceChanged (QString uid, QCString appId, int presence) |
Static Public Member Functions | |
KIMProxy * | instance (DCOPClient *client) |
Protected Member Functions | |
void | pollAll (const QString &uid) |
bool | updatePresence (const QString &uid, const QCString &appId, int presence) |
QString | preferredApp () |
KIMIface_stub * | stubForUid (const QString &uid) |
KIMIface_stub * | stubForProtocol (const QString &protocol) |
Detailed Description
This class provides an easy-to-use interface to any instant messengers or chat programs that you have installed that implement KIMIface.It works simultaneously with any running programs that implement the ServiceType DCOP/InstantMessenger If a UID is reachable with more than one program, KIMProxy aggregates the available information and presents the 'best' presence. For example, for a contact who can be seen to be Away in IRC on program A but Online using ICQ on program B, the information from program B will be used. KIMProxy is designed for simple information in a wide number of cases, not for detailed messaging.
Most operations work in terms of uids belonging to KABC::Addressee, but use of the address book is optional. You can get a list of known contacts with imAddresseeUids and then check their presence using the various accessor methods presenceString, presenceNumeric and display the IM programs' display names for them using displayName.
To use, just get an instance using instance.
- Since:
- 3.3
- Author:
- Will Stephenson <lists@stevello.free-online.co.uk>
Definition at line 68 of file kimproxy.h.
Member Function Documentation
|
Obtain an instance of KIMProxy. Note, if you share this DCOPClient with your own app, that kimproxy uses DCOPClient::setNotifications() to make sure it updates its information when the IM application it is interfacing to exits.
|
|
Get the proxy ready to connect Discover any running preferred IM clients and set up stubs for it.
References endl(), k_funcinfo, kdDebug(), and DCOPClient::registeredApplications(). Referenced by addContact(), allContacts(), canReceiveFiles(), canRespond(), chatWithContact(), context(), displayName(), fileTransferContacts(), isPresent(), locate(), messageContact(), onlineContacts(), presenceIcon(), presenceNumeric(), presenceString(), reachableContacts(), and sendFile(). |
|
Obtain a list of IM-contactable entries in the KDE address book.
References initialize(). |
|
Obtain a list of KDE address book entries who are currently reachable.
References initialize(). |
|
Obtain a list of KDE address book entries who are currently online.
References initialize(). |
|
Obtain a list of KDE address book entries who may receive file transfers.
References initialize(). |
|
Confirm if a given KABC uid is known to KIMProxy.
References initialize(). |
|
Obtain the IM app's idea of the contact's display name Useful if KABC lookups may be too slow.
References initialize(), and stubForUid(). |
|
Obtain the IM presence as a number (see KIMIface) for the specified addressee.
References initialize(), and pollAll(). Referenced by presenceIcon(), and presenceString(). |
|
Obtain the IM presence as a i18ned string for the specified addressee.
References initialize(), presenceNumeric(), and stubForUid(). |
|
Obtain the icon representing IM presence for the specified addressee.
References initialize(), pollAll(), presenceNumeric(), and stubForUid(). |
|
Indicate if a given uid can receive files.
References initialize(), and stubForUid(). |
|
Some media are unidirectional (eg, sending SMS via a web interface).
References initialize(), and stubForUid(). |
|
Get the KABC uid corresponding to the supplied IM address Protocols should be.
References initialize(), and stubForProtocol(). |
|
Get the supplied addressee's current context (home, work, or any).
References initialize(), and stubForUid(). |
|
Start a chat session with the specified addressee.
References initialize(), and stubForUid(). |
|
Send a single message to the specified addressee Any response will be handled by the IM client as a normal conversation.
References initialize(), and stubForUid(). |
|
Send the file to the contact.
References initialize(). |
|
Add a contact to the contact list.
References initialize(), and stubForProtocol(). |
|
Are there any compatible instant messaging apps installed?
References endl(), k_funcinfo, and kdDebug(). |
|
Start the user's preferred IM application.
References endl(), k_funcinfo, kdDebug(), and preferredApp(). |
|
Just exists to let the idl compiler make the DCOP signal for this. Definition at line 504 of file kimproxy.cpp. References endl(), k_funcinfo, kdDebug(), sigContactPresenceChanged(), and updatePresence(). |
|
Indicates that the specified UID's presence changed.
Referenced by contactPresenceChanged(). |
|
Indicates that the sources of presence information have changed so any previously supplied presence info is invalid.
|
|
Bootstrap our presence data by polling all known apps. Definition at line 538 of file kimproxy.cpp. Referenced by presenceIcon(), presenceNumeric(), and stubForUid(). |
|
Update our records with the given data. Definition at line 512 of file kimproxy.cpp. Referenced by contactPresenceChanged(). |
|
Get the name of the user's IM weapon of choice. Definition at line 589 of file kimproxy.cpp. References preferredApp(), KConfigBase::readEntry(), and KConfigBase::setGroup(). Referenced by preferredApp(), startPreferredApp(), and stubForProtocol(). |
|
Get the app stub best able to reach this uid. Definition at line 556 of file kimproxy.cpp. References pollAll(). Referenced by canReceiveFiles(), canRespond(), chatWithContact(), context(), displayName(), messageContact(), presenceIcon(), and presenceString(). |
|
Get the app stub for this protocol. Take the preferred app first, then any other.Definition at line 569 of file kimproxy.cpp. References preferredApp(). Referenced by addContact(), and locate(). |
The documentation for this class was generated from the following files: