.TH "KIMIface" kde3 "11 Jun 2005" "Version Version 3.4.1" "interfaces Library" \" -*- nroff -*-
.ad l
.nh
.SH NAME
KIMIface \- Generic DCOP interface for \fBKDE\fP instant messenger applications Note one omission of this interface is the lack of control over the range of values used for protocols' names.  

.PP
.SH SYNOPSIS
.br
.PP
\fC#include <kimiface.h>\fP
.PP
Inherits \fBDCOPObject\fP.
.PP
.SS "DCOP Member Functions"

.in +1c
.ti -1c
.RI "virtual \fBQStringList\fP \fBallContacts\fP ()=0"
.br
.ti -1c
.RI "virtual \fBQStringList\fP \fBreachableContacts\fP ()=0"
.br
.ti -1c
.RI "virtual \fBQStringList\fP \fBonlineContacts\fP ()=0"
.br
.ti -1c
.RI "virtual \fBQStringList\fP \fBfileTransferContacts\fP ()=0"
.br
.ti -1c
.RI "virtual bool \fBisPresent\fP (const \fBQString\fP &uid)=0"
.br
.ti -1c
.RI "virtual \fBQString\fP \fBdisplayName\fP (const \fBQString\fP &uid)=0"
.br
.ti -1c
.RI "virtual \fBQString\fP \fBpresenceString\fP (const \fBQString\fP &uid)=0"
.br
.ti -1c
.RI "virtual int \fBpresenceStatus\fP (const \fBQString\fP &uid)=0"
.br
.ti -1c
.RI "virtual bool \fBcanReceiveFiles\fP (const \fBQString\fP &uid)=0"
.br
.ti -1c
.RI "virtual bool \fBcanRespond\fP (const \fBQString\fP &uid)=0"
.br
.ti -1c
.RI "virtual \fBQString\fP \fBlocate\fP (const \fBQString\fP &contactId, const \fBQString\fP &protocol)=0"
.br
.ti -1c
.RI "virtual \fBQPixmap\fP \fBicon\fP (const \fBQString\fP &uid)=0"
.br
.ti -1c
.RI "virtual \fBQString\fP \fBcontext\fP (const \fBQString\fP &uid)=0"
.br
.ti -1c
.RI "virtual \fBQStringList\fP \fBprotocols\fP ()=0"
.br
.ti -1c
.RI "virtual void \fBmessageContact\fP (const \fBQString\fP &uid, const \fBQString\fP &message)=0"
.br
.ti -1c
.RI "virtual void \fBmessageNewContact\fP (const \fBQString\fP &contactId, const \fBQString\fP &protocol)=0"
.br
.ti -1c
.RI "virtual void \fBchatWithContact\fP (const \fBQString\fP &uid)=0"
.br
.ti -1c
.RI "virtual void \fBsendFile\fP (const \fBQString\fP &uid, const \fBKURL\fP &sourceURL, const \fBQString\fP &altFileName=QString::null, uint fileSize=0)=0"
.br
.ti -1c
.RI "virtual bool \fBaddContact\fP (const \fBQString\fP &contactId, const \fBQString\fP &protocol)=0"
.br
.in -1c
.SS "Public Attributes"

.in +1c
.ti -1c
.RI "k_dcop_signals \fB__pad0__\fP: void contactPresenceChanged( \fBQString\fP uid"
.br
.ti -1c
.RI "k_dcop_signals \fBQCString\fP \fBappId\fP"
.br
.ti -1c
.RI "k_dcop_signals \fBQCString\fP int \fBpresence\fP"
.br
.in -1c
.SH "Detailed Description"
.PP 
Generic DCOP interface for \fBKDE\fP instant messenger applications Note one omission of this interface is the lack of control over the range of values used for protocols' names. 

If you are implementing this interface, note that your application must have the following information in its desktop file, so that it can be identified as providing KIMIface at runtime: X-DCOP-ServiceName=<application name> ServiceTypes=DCOP/InstantMessenger and the class implementing KIMIface must pass 'KIMIface' to the \fBDCOPObject\fP constructor.
.PP
\fBSince:\fP
.RS 4
3.3 
.RE
.PP
\fBAuthor:\fP
.RS 4
Will Stephenson <lists@stevello.free-online.co.uk> 
.RE
.PP

.PP
Definition at line 43 of file kimiface.h.
.SH "Member Function Documentation"
.PP 
.SS "virtual \fBQStringList\fP KIMIface::allContacts ()\fC [pure virtual]\fP"
.PP
Obtain a list of IM-contactable entries in the \fBKDE\fP address book. 
.PP
\fBReturns:\fP
.RS 4
a list of KABC uids.
.RE
.PP

.SS "virtual \fBQStringList\fP KIMIface::reachableContacts ()\fC [pure virtual]\fP"
.PP
Obtain a list of \fBKDE\fP address book entries who are currently reachable. 
.PP
\fBReturns:\fP
.RS 4
a list of KABC uids who can receive a message, even if offline.
.RE
.PP

.SS "virtual \fBQStringList\fP KIMIface::onlineContacts ()\fC [pure virtual]\fP"
.PP
Obtain a list of \fBKDE\fP address book entries who are currently online. 
.PP
\fBReturns:\fP
.RS 4
a list of KABC uids who are online with unspecified presence.
.RE
.PP

.SS "virtual \fBQStringList\fP KIMIface::fileTransferContacts ()\fC [pure virtual]\fP"
.PP
Obtain a list of \fBKDE\fP address book entries who may receive file transfers. 
.PP
\fBReturns:\fP
.RS 4
a list of KABC uids capable of file transfer.
.RE
.PP

.SS "virtual bool KIMIface::isPresent (const \fBQString\fP & uid)\fC [pure virtual]\fP"
.PP
Confirm if a given contact is known to the IM application. 
.PP
\fBParameters:\fP
.RS 4
\fIuid\fP the KABC uid you are interested in. 
.RE
.PP
\fBReturns:\fP
.RS 4
whether the program knows of this KABC uid.
.RE
.PP

.SS "virtual \fBQString\fP KIMIface::displayName (const \fBQString\fP & uid)\fC [pure virtual]\fP"
.PP
Obtain the IM app's idea of the contact's display name Useful if KABC lookups may be too slow. 
.PP
\fBParameters:\fP
.RS 4
\fIuid\fP the KABC uid you are interested in. 
.RE
.PP
\fBReturns:\fP
.RS 4
the corresponding display name.
.RE
.PP

.SS "virtual \fBQString\fP KIMIface::presenceString (const \fBQString\fP & uid)\fC [pure virtual]\fP"
.PP
Obtain the IM presence as a i18ned string for the specified contact. 
.PP
\fBParameters:\fP
.RS 4
\fIuid\fP the KABC uid you want the presence for. 
.RE
.PP
\fBReturns:\fP
.RS 4
the i18ned string describing presence.
.RE
.PP

.SS "virtual int KIMIface::presenceStatus (const \fBQString\fP & uid)\fC [pure virtual]\fP"
.PP
Obtain the IM presence as a number for the specified contact. 
.PP
\fBParameters:\fP
.RS 4
\fIuid\fP the KABC uid you want the presence for. 
.RE
.PP
\fBReturns:\fP
.RS 4
a numeric representation of presence - currently one of 0 (Unknown), 1 (Offline), 2 (Connecting), 3 (Away), 4 (Online)
.RE
.PP

.SS "virtual bool KIMIface::canReceiveFiles (const \fBQString\fP & uid)\fC [pure virtual]\fP"
.PP
Indicate if a given contact can receive files. 
.PP
\fBParameters:\fP
.RS 4
\fIuid\fP the KABC uid you are interested in. 
.RE
.PP
\fBReturns:\fP
.RS 4
whether the specified addressee can receive files.
.RE
.PP

.SS "virtual bool KIMIface::canRespond (const \fBQString\fP & uid)\fC [pure virtual]\fP"
.PP
Some media are unidirectional (eg, sending SMS via a web interface). 
.PP
This refers to the contact's ability to respond as defined by the medium, not by their presence. Someone may appear offline (SMS has no presence) to you but in fact be able to respond. 
.PP
\fBParameters:\fP
.RS 4
\fIuid\fP the KABC uid you are interested in. 
.RE
.PP
\fBReturns:\fP
.RS 4
whether the specified contact can respond.
.RE
.PP

.SS "virtual \fBQString\fP KIMIface::locate (const \fBQString\fP & contactId, const \fBQString\fP & protocol)\fC [pure virtual]\fP"
.PP
Get the KABC uid corresponding to the supplied IM address. 
.PP
\fBParameters:\fP
.RS 4
\fIcontactId\fP the protocol specific identifier for the contact, eg UIN for ICQ, screenname for AIM, nick for IRC. 
.br
\fIprotocol\fP the protocol, eg one of 'AIMProtocol', 'MSNProtocol', 'ICQProtocol', 
.RE
.PP
\fBReturns:\fP
.RS 4
a KABC uid or null if none found
.RE
.PP

.SS "virtual \fBQPixmap\fP KIMIface::icon (const \fBQString\fP & uid)\fC [pure virtual]\fP"
.PP
Obtain the icon representing IM presence for the specified contact. 
.PP
\fBParameters:\fP
.RS 4
\fIuid\fP the KABC uid you want the presence for. 
.RE
.PP
\fBReturns:\fP
.RS 4
a pixmap representing the uid's presence.
.RE
.PP

.SS "virtual \fBQString\fP KIMIface::context (const \fBQString\fP & uid)\fC [pure virtual]\fP"
.PP
Get the supplied contact's current context (home, work, or any). 
.PP
\fBParameters:\fP
.RS 4
\fIuid\fP the KABC uid you want the context for. 
.RE
.PP
\fBReturns:\fP
.RS 4
a \fBQString\fP describing the context, or null if not supported.
.RE
.PP

.SS "virtual \fBQStringList\fP KIMIface::protocols ()\fC [pure virtual]\fP"
.PP
Discover what protocols the application supports. 
.PP
\fBReturns:\fP
.RS 4
the set of protocols that the application supports, ie a list of protocol names, eg 'AIMProtocol', 'MSNProtocol', 'ICQProtocol', ...
.RE
.PP

.SS "virtual void KIMIface::messageContact (const \fBQString\fP & uid, const \fBQString\fP & message)\fC [pure virtual]\fP"
.PP
Send a single message to the specified contact Any response will be handled by the IM client as a normal conversation. 
.PP
\fBParameters:\fP
.RS 4
\fIuid\fP the KABC uid you want to send the message to. 
.br
\fImessage\fP the message to send them.
.RE
.PP

.SS "virtual void KIMIface::messageNewContact (const \fBQString\fP & contactId, const \fBQString\fP & protocol)\fC [pure virtual]\fP"
.PP
Open a chat to a contact, and optionally set some initial text. 
.PP
.SS "virtual void KIMIface::chatWithContact (const \fBQString\fP & uid)\fC [pure virtual]\fP"
.PP
Start a chat session with the specified contact. 
.PP
\fBParameters:\fP
.RS 4
\fIuid\fP the KABC uid you want to chat with.
.RE
.PP

.SS "virtual void KIMIface::sendFile (const \fBQString\fP & uid, const \fBKURL\fP & sourceURL, const \fBQString\fP & altFileName = \fCQString::null\fP, uint fileSize = \fC0\fP)\fC [pure virtual]\fP"
.PP
Send a file to the contact. 
.PP
\fBParameters:\fP
.RS 4
\fIuid\fP the KABC uid you are sending to. 
.br
\fIsourceURL\fP a 
.RE
.PP
\fBSee also:\fP
.RS 4
\fBKURL\fP to send. 
.RE
.PP
\fBParameters:\fP
.RS 4
\fIaltFileName\fP an alternate filename describing the file 
.br
\fIfileSize\fP file size in bytes
.RE
.PP

.SS "virtual bool KIMIface::addContact (const \fBQString\fP & contactId, const \fBQString\fP & protocol)\fC [pure virtual]\fP"
.PP
Add a contact to the contact list. 
.PP
\fBParameters:\fP
.RS 4
\fIcontactId\fP the protocol specific identifier for the contact, eg UIN for ICQ, screenname for AIM, nick for IRC. 
.br
\fIprotocol\fP the protocol, eg one of 'AIMProtocol', 'MSNProtocol', 'ICQProtocol', ... 
.RE
.PP
\fBReturns:\fP
.RS 4
whether the add succeeded. False may signal already present, protocol not supported, or add operation not supported. 
.RE
.PP
\fBSee also:\fP
.RS 4
\fBlocate\fP
.RE
.PP


.SH "Author"
.PP 
Generated automatically by Doxygen for interfaces Library from the source code.
