\section{KIMProxy Class Reference}
\label{classKIMProxy}\index{KIMProxy@{KIMProxy}}
This class provides an easy-to-use interface to any instant messengers or chat programs that you have installed that implement.  


{\tt \#include $<$kimproxy.h$>$}

Inheritance diagram for KIMProxy:\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=47pt]{classKIMProxy__inherit__graph}
\end{center}
\end{figure}
Collaboration diagram for KIMProxy:\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=247pt]{classKIMProxy__coll__graph}
\end{center}
\end{figure}
\subsection*{Public Slots}
\begin{CompactItemize}
\item 
void {\bf registered\-To\-DCOP} (const {\bf QCString} \&app\-Id)\label{classKIMProxy_i0}

\item 
void {\bf unregistered\-From\-DCOP} (const {\bf QCString} \&app\-Id)\label{classKIMProxy_i1}

\end{CompactItemize}
\subsection*{Signals}
\begin{CompactItemize}
\item 
void {\bf sig\-Contact\-Presence\-Changed} (const {\bf QString} \&uid)
\item 
void {\bf sig\-Presence\-Info\-Expired} ()
\end{CompactItemize}
\subsection*{Public Member Functions}
\begin{CompactItemize}
\item 
bool {\bf initialize} ()
\item 
{\bf QString\-List} {\bf all\-Contacts} ()
\item 
{\bf QString\-List} {\bf reachable\-Contacts} ()
\item 
{\bf QString\-List} {\bf online\-Contacts} ()
\item 
{\bf QString\-List} {\bf file\-Transfer\-Contacts} ()
\item 
bool {\bf is\-Present} (const {\bf QString} \&uid)
\item 
{\bf QString} {\bf display\-Name} (const {\bf QString} \&uid)
\item 
int {\bf presence\-Numeric} (const {\bf QString} \&uid)
\item 
{\bf QString} {\bf presence\-String} (const {\bf QString} \&uid)
\item 
{\bf QPixmap} {\bf presence\-Icon} (const {\bf QString} \&uid)
\item 
bool {\bf can\-Receive\-Files} (const {\bf QString} \&uid)
\item 
bool {\bf can\-Respond} (const {\bf QString} \&uid)
\item 
{\bf QString} {\bf locate} (const {\bf QString} \&contact\-Id, const {\bf QString} \&protocol)
\item 
{\bf QString} {\bf context} (const {\bf QString} \&uid)
\item 
void {\bf chat\-With\-Contact} (const {\bf QString} \&uid)
\item 
void {\bf message\-Contact} (const {\bf QString} \&uid, const {\bf QString} \&message)
\item 
void {\bf send\-File} (const {\bf QString} \&uid, const {\bf KURL} \&source\-URL, const {\bf QString} \&alt\-File\-Name=QString::null, uint file\-Size=0)
\item 
bool {\bf add\-Contact} (const {\bf QString} \&contact\-Id, const {\bf QString} \&protocol)
\item 
bool {\bf im\-Apps\-Available} ()
\item 
bool {\bf start\-Preferred\-App} ()
\item 
void {\bf contact\-Presence\-Changed} ({\bf QString} uid, {\bf QCString} app\-Id, int presence)
\end{CompactItemize}
\subsection*{Static Public Member Functions}
\begin{CompactItemize}
\item 
static {\bf KIMProxy} $\ast$ {\bf instance} ({\bf DCOPClient} $\ast$client)
\end{CompactItemize}
\subsection*{Protected Member Functions}
\begin{CompactItemize}
\item 
void {\bf poll\-App} (const {\bf QCString} \&app\-Id)
\item 
void {\bf poll\-All} (const {\bf QString} \&uid)
\item 
bool {\bf update\-Presence} (const {\bf QString} \&uid, const {\bf QCString} \&app\-Id, int presence)
\item 
{\bf QString} {\bf preferred\-App} ()
\item 
KIMIface\_\-stub $\ast$ {\bf stub\-For\-Uid} (const {\bf QString} \&uid)
\item 
KIMIface\_\-stub $\ast$ {\bf stub\-For\-Protocol} (const {\bf QString} \&protocol)
\end{CompactItemize}


\subsection{Detailed Description}
This class provides an easy-to-use interface to any instant messengers or chat programs that you have installed that implement. 

\begin{Desc}
\item[See also:]{\bf KIMIface}{\rm (p.\,\pageref{classKIMIface})}\end{Desc}
It works simultaneously with any running programs that implement the \begin{Desc}
\item[See also:]Service\-Type DCOP/Instant\-Messenger 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.\end{Desc}
Most operations work in terms of uids belonging to \begin{Desc}
\item[See also:]KABC::Addressee, but use of the address book is optional. You can get a list of known contacts with 

im\-Addressee\-Uids and then check their presence using the various accessor methods 

{\bf presence\-String}{\rm (p.\,\pageref{classKIMProxy_a8})}, 

{\bf presence\-Numeric}{\rm (p.\,\pageref{classKIMProxy_a7})} and display the IM programs' display names for them using 

{\bf display\-Name}{\rm (p.\,\pageref{classKIMProxy_a6})}.\end{Desc}
To use, just get an instance using {\bf instance}{\rm (p.\,\pageref{classKIMProxy_e0})}.

\begin{Desc}
\item[Since:]3.3 \end{Desc}
\begin{Desc}
\item[Author:]Will Stephenson $<${\tt lists@stevello.free-online.co.uk}$>$ \end{Desc}




Definition at line 71 of file kimproxy.h.

\subsection{Member Function Documentation}
\index{KIMProxy@{KIMProxy}!instance@{instance}}
\index{instance@{instance}!KIMProxy@{KIMProxy}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf KIMProxy} $\ast$ KIMProxy::instance ({\bf DCOPClient} $\ast$ {\em client})\hspace{0.3cm}{\tt  [static]}}\label{classKIMProxy_e0}


Obtain an instance of KIMProxy. 

Note, if you share this \begin{Desc}
\item[See also:]{\bf DCOPClient} with your own app, that kimproxy uses {\bf DCOPClient::set\-Notifications()} to make sure it updates its information when the IM application it is interfacing to exits. \end{Desc}
\begin{Desc}
\item[Parameters:]
\begin{description}
\item[{\em client}]your app's DCOP client. \end{description}
\end{Desc}
\begin{Desc}
\item[Returns:]The singleton instance of this class.\end{Desc}


Definition at line 166 of file kimproxy.cpp.

References KStatic\-Deleter$<$ type $>$::set\-Object().\index{KIMProxy@{KIMProxy}!initialize@{initialize}}
\index{initialize@{initialize}!KIMProxy@{KIMProxy}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}bool KIMProxy::initialize ()}\label{classKIMProxy_a0}


Get the proxy ready to connect Discover any running preferred IM clients and set up stubs for it. 

\begin{Desc}
\item[Returns:]whether the proxy is ready to use. False if there are no apps running.\end{Desc}


Definition at line 215 of file kimproxy.cpp.

References endl(), QDict::find(), QDict::insert(), QDict::is\-Empty(), QCString::is\-Empty(), kd\-Debug(), QString::latin1(), QString::left(), QCString::length(), poll\-App(), and KShortcut::to\-String().

Referenced by add\-Contact(), can\-Receive\-Files(), can\-Respond(), chat\-With\-Contact(), context(), display\-Name(), file\-Transfer\-Contacts(), locate(), message\-Contact(), presence\-Icon(), presence\-Numeric(), presence\-String(), reachable\-Contacts(), and send\-File().\index{KIMProxy@{KIMProxy}!allContacts@{allContacts}}
\index{allContacts@{allContacts}!KIMProxy@{KIMProxy}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf QString\-List} KIMProxy::all\-Contacts ()}\label{classKIMProxy_a1}


Obtain a list of IM-contactable entries in the {\bf KDE} address book. 

\begin{Desc}
\item[Returns:]a list of KABC uids.\end{Desc}


Definition at line 394 of file kimproxy.cpp.\index{KIMProxy@{KIMProxy}!reachableContacts@{reachableContacts}}
\index{reachableContacts@{reachableContacts}!KIMProxy@{KIMProxy}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf QString\-List} KIMProxy::reachable\-Contacts ()}\label{classKIMProxy_a2}


Obtain a list of {\bf KDE} address book entries who are currently reachable. 

\begin{Desc}
\item[Returns:]a list of KABC uids who can receive a message, even if online.\end{Desc}


Definition at line 400 of file kimproxy.cpp.

References QDict\-Iterator::current(), and initialize().\index{KIMProxy@{KIMProxy}!onlineContacts@{onlineContacts}}
\index{onlineContacts@{onlineContacts}!KIMProxy@{KIMProxy}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf QString\-List} KIMProxy::online\-Contacts ()}\label{classKIMProxy_a3}


Obtain a list of {\bf KDE} address book entries who are currently online. 

\begin{Desc}
\item[Returns:]a list of KABC uids who are online with unspecified presence.\end{Desc}


Definition at line 415 of file kimproxy.cpp.\index{KIMProxy@{KIMProxy}!fileTransferContacts@{fileTransferContacts}}
\index{fileTransferContacts@{fileTransferContacts}!KIMProxy@{KIMProxy}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf QString\-List} KIMProxy::file\-Transfer\-Contacts ()}\label{classKIMProxy_a4}


Obtain a list of {\bf KDE} address book entries who may receive file transfers. 

\begin{Desc}
\item[Returns:]a list of KABC uids capable of file transfer.\end{Desc}


Definition at line 427 of file kimproxy.cpp.

References QDict\-Iterator::current(), and initialize().\index{KIMProxy@{KIMProxy}!isPresent@{isPresent}}
\index{isPresent@{isPresent}!KIMProxy@{KIMProxy}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}bool KIMProxy::is\-Present (const {\bf QString} \& {\em uid})}\label{classKIMProxy_a5}


Confirm if a given KABC uid is known to KIMProxy. 

\begin{Desc}
\item[Parameters:]
\begin{description}
\item[{\em uid}]the KABC uid you are interested in. \end{description}
\end{Desc}
\begin{Desc}
\item[Returns:]whether one of the chat programs KIMProxy talks to knows of this KABC uid.\end{Desc}


Definition at line 442 of file kimproxy.cpp.\index{KIMProxy@{KIMProxy}!displayName@{displayName}}
\index{displayName@{displayName}!KIMProxy@{KIMProxy}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf QString} KIMProxy::display\-Name (const {\bf QString} \& {\em uid})}\label{classKIMProxy_a6}


Obtain the IM app's idea of the contact's display name Useful if KABC lookups may be too slow. 

\begin{Desc}
\item[Parameters:]
\begin{description}
\item[{\em uid}]the KABC uid you are interested in. \end{description}
\end{Desc}
\begin{Desc}
\item[Returns:]The corresponding display name.\end{Desc}


Definition at line 447 of file kimproxy.cpp.

References initialize(), and stub\-For\-Uid().\index{KIMProxy@{KIMProxy}!presenceNumeric@{presenceNumeric}}
\index{presenceNumeric@{presenceNumeric}!KIMProxy@{KIMProxy}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int KIMProxy::presence\-Numeric (const {\bf QString} \& {\em uid})}\label{classKIMProxy_a7}


Obtain the IM presence as a number (see {\bf KIMIface}{\rm (p.\,\pageref{classKIMIface})}) for the specified addressee. 

\begin{Desc}
\item[Parameters:]
\begin{description}
\item[{\em uid}]the KABC uid you want the presence for. \end{description}
\end{Desc}
\begin{Desc}
\item[Returns:]a numeric representation of presence - currently one of 0 (Unknown), 1 (Offline), 2 (Connecting), 3 (Away), 4 (Online)\end{Desc}


Definition at line 346 of file kimproxy.cpp.

References initialize().\index{KIMProxy@{KIMProxy}!presenceString@{presenceString}}
\index{presenceString@{presenceString}!KIMProxy@{KIMProxy}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf QString} KIMProxy::presence\-String (const {\bf QString} \& {\em uid})}\label{classKIMProxy_a8}


Obtain the IM presence as a i18ned string for the specified addressee. 

\begin{Desc}
\item[Parameters:]
\begin{description}
\item[{\em uid}]the KABC uid you want the presence for. \end{description}
\end{Desc}
\begin{Desc}
\item[Returns:]the i18ned string describing presence.\end{Desc}


Definition at line 358 of file kimproxy.cpp.

References initialize().\index{KIMProxy@{KIMProxy}!presenceIcon@{presenceIcon}}
\index{presenceIcon@{presenceIcon}!KIMProxy@{KIMProxy}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf QPixmap} KIMProxy::presence\-Icon (const {\bf QString} \& {\em uid})}\label{classKIMProxy_a9}


Obtain the icon representing IM presence for the specified addressee. 

\begin{Desc}
\item[Parameters:]
\begin{description}
\item[{\em uid}]the KABC uid you want the presence for. \end{description}
\end{Desc}
\begin{Desc}
\item[Returns:]a pixmap representing the uid's presence.\end{Desc}


Definition at line 373 of file kimproxy.cpp.

References initialize().\index{KIMProxy@{KIMProxy}!canReceiveFiles@{canReceiveFiles}}
\index{canReceiveFiles@{canReceiveFiles}!KIMProxy@{KIMProxy}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}bool KIMProxy::can\-Receive\-Files (const {\bf QString} \& {\em uid})}\label{classKIMProxy_a10}


Indicate if a given uid can receive files. 

\begin{Desc}
\item[Parameters:]
\begin{description}
\item[{\em uid}]the KABC uid you are interested in. \end{description}
\end{Desc}
\begin{Desc}
\item[Returns:]Whether the specified addressee can receive files.\end{Desc}


Definition at line 459 of file kimproxy.cpp.

References initialize(), and stub\-For\-Uid().\index{KIMProxy@{KIMProxy}!canRespond@{canRespond}}
\index{canRespond@{canRespond}!KIMProxy@{KIMProxy}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}bool KIMProxy::can\-Respond (const {\bf QString} \& {\em uid})}\label{classKIMProxy_a11}


Some media are unidirectional (eg, sending SMS via a web interface). 

\begin{Desc}
\item[Parameters:]
\begin{description}
\item[{\em uid}]the KABC uid you are interested in. \end{description}
\end{Desc}
\begin{Desc}
\item[Returns:]Whether the specified addressee can respond.\end{Desc}


Definition at line 469 of file kimproxy.cpp.

References initialize(), and stub\-For\-Uid().\index{KIMProxy@{KIMProxy}!locate@{locate}}
\index{locate@{locate}!KIMProxy@{KIMProxy}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf QString} KIMProxy::locate (const {\bf QString} \& {\em contact\-Id}, const {\bf QString} \& {\em protocol})}\label{classKIMProxy_a12}


Get the KABC uid corresponding to the supplied IM address Protocols should be. 

\begin{Desc}
\item[Parameters:]
\begin{description}
\item[{\em contact\-Id}]the protocol specific identifier for the contact, eg UIN for ICQ, screenname for AIM, nick for IRC. \item[{\em protocol}]the protocol, eg one of \char`\"{}AIMProtocol\char`\"{}, \char`\"{}MSNProtocol\char`\"{}, \char`\"{}ICQProtocol\char`\"{}, \end{description}
\end{Desc}
\begin{Desc}
\item[Returns:]a KABC uid or null if none found/\end{Desc}


Definition at line 543 of file kimproxy.cpp.

References initialize(), and stub\-For\-Protocol().\index{KIMProxy@{KIMProxy}!context@{context}}
\index{context@{context}!KIMProxy@{KIMProxy}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf QString} KIMProxy::context (const {\bf QString} \& {\em uid})}\label{classKIMProxy_a13}


Get the supplied addressee's current context (home, work, or any). 

\begin{Desc}
\item[Parameters:]
\begin{description}
\item[{\em uid}]the KABC uid you want the context for. \end{description}
\end{Desc}
\begin{Desc}
\item[Returns:]A {\bf QString} describing the context, or null if not supported.\end{Desc}


Definition at line 479 of file kimproxy.cpp.

References initialize(), and stub\-For\-Uid().\index{KIMProxy@{KIMProxy}!chatWithContact@{chatWithContact}}
\index{chatWithContact@{chatWithContact}!KIMProxy@{KIMProxy}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void KIMProxy::chat\-With\-Contact (const {\bf QString} \& {\em uid})}\label{classKIMProxy_a14}


Start a chat session with the specified addressee. 

\begin{Desc}
\item[Parameters:]
\begin{description}
\item[{\em uid}]the KABC uid you want to chat with.\end{description}
\end{Desc}


Definition at line 489 of file kimproxy.cpp.

References initialize(), and stub\-For\-Uid().\index{KIMProxy@{KIMProxy}!messageContact@{messageContact}}
\index{messageContact@{messageContact}!KIMProxy@{KIMProxy}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void KIMProxy::message\-Contact (const {\bf QString} \& {\em uid}, const {\bf QString} \& {\em message})}\label{classKIMProxy_a15}


Send a single message to the specified addressee Any response will be handled by the IM client as a normal conversation. 

\begin{Desc}
\item[Parameters:]
\begin{description}
\item[{\em uid}]the KABC uid you want to chat with. \item[{\em message}]the message to send them.\end{description}
\end{Desc}


Definition at line 502 of file kimproxy.cpp.

References initialize(), and stub\-For\-Uid().\index{KIMProxy@{KIMProxy}!sendFile@{sendFile}}
\index{sendFile@{sendFile}!KIMProxy@{KIMProxy}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void KIMProxy::send\-File (const {\bf QString} \& {\em uid}, const {\bf KURL} \& {\em source\-URL}, const {\bf QString} \& {\em alt\-File\-Name} = {\tt QString::null}, uint {\em file\-Size} = {\tt 0})}\label{classKIMProxy_a16}


Send the file to the contact. 

\begin{Desc}
\item[Parameters:]
\begin{description}
\item[{\em uid}]the KABC uid you are sending to. \item[{\em source\-URL}]a \end{description}
\end{Desc}
\begin{Desc}
\item[See also:]{\bf KURL} to send. \end{Desc}
\begin{Desc}
\item[Parameters:]
\begin{description}
\item[{\em alt\-File\-Name}]an alternate filename describing the file \item[{\em file\-Size}]file size in bytes\end{description}
\end{Desc}


Definition at line 515 of file kimproxy.cpp.

References QDict\-Iterator::current(), and initialize().\index{KIMProxy@{KIMProxy}!addContact@{addContact}}
\index{addContact@{addContact}!KIMProxy@{KIMProxy}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}bool KIMProxy::add\-Contact (const {\bf QString} \& {\em contact\-Id}, const {\bf QString} \& {\em protocol})}\label{classKIMProxy_a17}


Add a contact to the contact list. 

\begin{Desc}
\item[Parameters:]
\begin{description}
\item[{\em contact\-Id}]the protocol specific identifier for the contact, eg UIN for ICQ, screenname for AIM, nick for IRC. \item[{\em protocol}]the protocol, eg one of \char`\"{}AIMProtocol\char`\"{}, \char`\"{}MSNProtocol\char`\"{}, \char`\"{}ICQProtocol\char`\"{}, \end{description}
\end{Desc}
\begin{Desc}
\item[Returns:]whether the add succeeded. False may signal already present, protocol not supported, or add operation not supported.\end{Desc}


Definition at line 533 of file kimproxy.cpp.

References initialize(), and stub\-For\-Protocol().\index{KIMProxy@{KIMProxy}!imAppsAvailable@{imAppsAvailable}}
\index{imAppsAvailable@{imAppsAvailable}!KIMProxy@{KIMProxy}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}bool KIMProxy::im\-Apps\-Available ()}\label{classKIMProxy_a18}


Are there any compatible instant messaging apps installed? 

\begin{Desc}
\item[Returns:]true if there are any apps installed, to see if they are running, {\bf initialize}{\rm (p.\,\pageref{classKIMProxy_a0})} instead.\end{Desc}


Definition at line 553 of file kimproxy.cpp.

References QDict::is\-Empty().\index{KIMProxy@{KIMProxy}!startPreferredApp@{startPreferredApp}}
\index{startPreferredApp@{startPreferredApp}!KIMProxy@{KIMProxy}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}bool KIMProxy::start\-Preferred\-App ()}\label{classKIMProxy_a19}


Start the user's preferred IM application. 

\begin{Desc}
\item[Returns:]whether a preferred app was found. No guarantee that it started correctly\end{Desc}


Definition at line 558 of file kimproxy.cpp.

References endl(), k\_\-funcinfo, kd\-Debug(), and preferred\-App().\index{KIMProxy@{KIMProxy}!contactPresenceChanged@{contactPresenceChanged}}
\index{contactPresenceChanged@{contactPresenceChanged}!KIMProxy@{KIMProxy}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void KIMProxy::contact\-Presence\-Changed ({\bf QString} {\em uid}, {\bf QCString} {\em app\-Id}, int {\em presence})}\label{classKIMProxy_a20}


Just exists to let the idl compiler make the DCOP signal for this. 



Definition at line 328 of file kimproxy.cpp.

References sig\-Contact\-Presence\-Changed().\index{KIMProxy@{KIMProxy}!sigContactPresenceChanged@{sigContactPresenceChanged}}
\index{sigContactPresenceChanged@{sigContactPresenceChanged}!KIMProxy@{KIMProxy}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void KIMProxy::sig\-Contact\-Presence\-Changed (const {\bf QString} \& {\em uid})\hspace{0.3cm}{\tt  [signal]}}\label{classKIMProxy_l0}


Indicates that the specified UID's presence changed. 

\begin{Desc}
\item[Parameters:]
\begin{description}
\item[{\em uid}]the KABC uid whose presence changed.\end{description}
\end{Desc}


Referenced by contact\-Presence\-Changed(), and poll\-App().\index{KIMProxy@{KIMProxy}!sigPresenceInfoExpired@{sigPresenceInfoExpired}}
\index{sigPresenceInfoExpired@{sigPresenceInfoExpired}!KIMProxy@{KIMProxy}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void KIMProxy::sig\-Presence\-Info\-Expired ()\hspace{0.3cm}{\tt  [signal]}}\label{classKIMProxy_l1}


Indicates that the sources of presence information have changed so any previously supplied presence info is invalid. 

\index{KIMProxy@{KIMProxy}!pollApp@{pollApp}}
\index{pollApp@{pollApp}!KIMProxy@{KIMProxy}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void KIMProxy::poll\-App (const {\bf QCString} \& {\em app\-Id})\hspace{0.3cm}{\tt  [protected]}}\label{classKIMProxy_b0}


Bootstrap our presence data for a newly registered app. 



Definition at line 594 of file kimproxy.cpp.

References sig\-Contact\-Presence\-Changed().

Referenced by initialize().\index{KIMProxy@{KIMProxy}!pollAll@{pollAll}}
\index{pollAll@{pollAll}!KIMProxy@{KIMProxy}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void KIMProxy::poll\-All (const {\bf QString} \& {\em uid})\hspace{0.3cm}{\tt  [protected]}}\label{classKIMProxy_b1}


Bootstrap our presence data by polling all known apps. 



Definition at line 576 of file kimproxy.cpp.\index{KIMProxy@{KIMProxy}!updatePresence@{updatePresence}}
\index{updatePresence@{updatePresence}!KIMProxy@{KIMProxy}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}bool KIMProxy::update\-Presence (const {\bf QString} \& {\em uid}, const {\bf QCString} \& {\em app\-Id}, int {\em presence})\hspace{0.3cm}{\tt  [protected]}}\label{classKIMProxy_b2}


Update our records with the given data. 

\index{KIMProxy@{KIMProxy}!preferredApp@{preferredApp}}
\index{preferredApp@{preferredApp}!KIMProxy@{KIMProxy}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf QString} KIMProxy::preferred\-App ()\hspace{0.3cm}{\tt  [protected]}}\label{classKIMProxy_b3}


Get the name of the user's IM weapon of choice. 



Definition at line 644 of file kimproxy.cpp.

References preferred\-App(), KConfig\-Base::read\-Entry(), and KConfig\-Base::set\-Group().

Referenced by preferred\-App(), start\-Preferred\-App(), and stub\-For\-Protocol().\index{KIMProxy@{KIMProxy}!stubForUid@{stubForUid}}
\index{stubForUid@{stubForUid}!KIMProxy@{KIMProxy}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}KIMIface\_\-stub $\ast$ KIMProxy::stub\-For\-Uid (const {\bf QString} \& {\em uid})\hspace{0.3cm}{\tt  [protected]}}\label{classKIMProxy_b4}


Get the app stub best able to reach this uid. 



Definition at line 616 of file kimproxy.cpp.

References QDict::find().

Referenced by can\-Receive\-Files(), can\-Respond(), chat\-With\-Contact(), context(), display\-Name(), and message\-Contact().\index{KIMProxy@{KIMProxy}!stubForProtocol@{stubForProtocol}}
\index{stubForProtocol@{stubForProtocol}!KIMProxy@{KIMProxy}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}KIMIface\_\-stub $\ast$ KIMProxy::stub\-For\-Protocol (const {\bf QString} \& {\em protocol})\hspace{0.3cm}{\tt  [protected]}}\label{classKIMProxy_b5}


Get the app stub for this protocol. 

Take the preferred app first, then any other.

Definition at line 624 of file kimproxy.cpp.

References QDict\-Iterator::count(), QDict\-Iterator::current(), QDict::find(), and preferred\-App().

Referenced by add\-Contact(), and locate().

The documentation for this class was generated from the following files:\begin{CompactItemize}
\item 
kimproxy.h\item 
kimproxy.cpp\end{CompactItemize}
