Sophie

Sophie

distrib > Fedora > 15 > i386 > by-pkgid > 1f9eb832ba1e4b88d9a5c2b384813bb4 > files > 280

kdelibs3-apidocs-3.5.10-31.fc15.noarch.rpm

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en_US" xml:lang="en_US">

<head>
  <title>interfaces: KIMProxy Class Reference (interfaces)</title>
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

  <meta http-equiv="Content-Style-Type" content="text/css" />

  <meta http-equiv="pics-label" content='(pics-1.1 "http://www.icra.org/ratingsv02.html" comment "ICRAonline DE v2.0" l gen true for "http://www.kde.org"  r (nz 1 vz 1 lz 1 oz 1 cb 1) "http://www.rsac.org/ratingsv01.html" l gen true for "http://www.kde.org"  r (n 0 s 0 v 0 l 0))' />

  <meta name="trademark" content="KDE e.V." />
  <meta name="description" content="K Desktop Environment Homepage, KDE.org" />
  <meta name="MSSmartTagsPreventParsing" content="true" />
  <meta name="robots" content="all" />

  <link rel="shortcut icon" href="../../favicon.ico" />

<link rel="stylesheet" media="screen" type="text/css" title="APIDOX" href="doxygen.css" />



</head>

<body>

<div id="nav_header_top" align="right">
  <a href="#content" class="doNotDisplay" accesskey="2">Skip to main content ::</a>

  <a href="../.."><img id="nav_header_logo" alt="Home" align="left" src="../../kde_gear_64.png" border="0" /></a>
  <span class="doNotDisplay">::</span>

  <div id="nav_header_title" align="left">KDE API Reference</div>


</div>

<div id="nav_header_bottom" align="right">
  <span class="doNotDisplay">:: <a href="#navigation" accesskey="5">Skip to Link Menu</a><br/></span>
  <div id="nav_header_bottom_right" style="text-align: left;">
/ <a href="../..">API Reference</a>
 / <a href=".">interfaces</a>
  </div>
</div>


<table id="main" border="0" cellpadding="0" cellspacing="0" width="100%">
<tr>
      <td valign="top" class="menuheader" height="0"></td>

  <td id="contentcolumn" valign="top" rowspan="2" >
    <div id="content" style="padding-top: 0px;"><div style="width:100%; margin: 0px; padding: 0px;">
    <a name="content"></a>


<!-- Generated by Doxygen 1.7.4 -->
</div>
<div class="header">
  <div class="summary">
<a href="#pub-slots">Public Slots</a> &#124;
<a href="#signals">Signals</a> &#124;
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pub-static-methods">Static Public Member Functions</a> &#124;
<a href="#pro-methods">Protected Member Functions</a> &#124;
<a href="#friends">Friends</a>  </div>
  <div class="headertitle">
<div class="title">KIMProxy Class Reference</div>  </div>
</div>
<div class="contents">
<!-- doxytag: class="KIMProxy" --><!-- doxytag: inherits="QObject,KIMProxyIface" -->
<p>Provides access to instant messenger programs which implement KDE's instant messanger interface <a class="el" href="classKIMIface.html" title="Generic DCOP interface for KDE instant messenger applications.">KIMIface</a>.  
 <a href="classKIMProxy.html#details">More...</a></p>

<p><code>#include &lt;<a class="el" href="kimproxy_8h_source.html">kimproxy.h</a>&gt;</code></p>
<div class="dynheader">
Inheritance diagram for KIMProxy:</div>
<div class="dyncontent">
 <div class="center">
  <img src="classKIMProxy.png" usemap="#KIMProxy_map" alt=""/>
  <map id="KIMProxy_map" name="KIMProxy_map">
<area href="qobject.html" alt="QObject" shape="rect" coords="0,0,67,24"/>
</map>
 </div></div>

<p><a href="classKIMProxy-members.html">List of all members.</a></p>
<table class="memberdecls">
<tr><td colspan="2"><h2><a name="pub-slots"></a>
Public Slots</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKIMProxy.html#ae05a5b8eca2a84d920e56edee15c8813">registeredToDCOP</a> (const <a class="elRef" href="qcstring.html">QCString</a> &amp;appId)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKIMProxy.html#aaaae56c3b58c99752f0bde08e97f533f">unregisteredFromDCOP</a> (const <a class="elRef" href="qcstring.html">QCString</a> &amp;appId)</td></tr>
<tr><td colspan="2"><h2><a name="signals"></a>
Signals</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKIMProxy.html#aee11bdb993679d6974e7690c73aae442">sigContactPresenceChanged</a> (const <a class="elRef" href="qstring.html">QString</a> &amp;uid)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKIMProxy.html#a1dc56f5c66e4dbfa5ff523ec1f21dd83">sigPresenceInfoExpired</a> ()</td></tr>
<tr><td colspan="2"><h2><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKIMProxy.html#a3193fb0f41c75ceeaa33b4489601fe42">initialize</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="elRef" href="qstringlist.html">QStringList</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKIMProxy.html#a85d6a063ae44a369861e44deb2f07dc7">allContacts</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="elRef" href="qstringlist.html">QStringList</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKIMProxy.html#affeb58bccb6aa0b8dd79e68068d8a497">reachableContacts</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="elRef" href="qstringlist.html">QStringList</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKIMProxy.html#a154656cc1952d2e8a476d1b15eb392bf">onlineContacts</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="elRef" href="qstringlist.html">QStringList</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKIMProxy.html#a1d02f9f85a7f5af4162f2dec424f1b90">fileTransferContacts</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKIMProxy.html#a4e31705108604c7314635768e80828bb">isPresent</a> (const <a class="elRef" href="qstring.html">QString</a> &amp;uid)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="elRef" href="qstring.html">QString</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKIMProxy.html#a5fee1c79aeff7f94a38cc0456a3a9fab">displayName</a> (const <a class="elRef" href="qstring.html">QString</a> &amp;uid)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKIMProxy.html#a5ef08be65cd6cd53eccaad945fe2044c">presenceNumeric</a> (const <a class="elRef" href="qstring.html">QString</a> &amp;uid)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="elRef" href="qstring.html">QString</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKIMProxy.html#ac67e20a529a22a578362eefe3fde816e">presenceString</a> (const <a class="elRef" href="qstring.html">QString</a> &amp;uid)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="elRef" href="qpixmap.html">QPixmap</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKIMProxy.html#acac424488ca651eef5b2b2fa51814915">presenceIcon</a> (const <a class="elRef" href="qstring.html">QString</a> &amp;uid)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKIMProxy.html#aac9d6ec424eb7a21305b114ac877e891">canReceiveFiles</a> (const <a class="elRef" href="qstring.html">QString</a> &amp;uid)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKIMProxy.html#a267dc5507df926ed18c7b4ed373121be">canRespond</a> (const <a class="elRef" href="qstring.html">QString</a> &amp;uid)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="elRef" href="qstring.html">QString</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKIMProxy.html#a0ee83ebea98f0af3db83c96c3d3ece53">locate</a> (const <a class="elRef" href="qstring.html">QString</a> &amp;contactId, const <a class="elRef" href="qstring.html">QString</a> &amp;protocol)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="elRef" href="qstring.html">QString</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKIMProxy.html#a0d1f1e663d5bf30d688b8e0a0d8982cc">context</a> (const <a class="elRef" href="qstring.html">QString</a> &amp;uid)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKIMProxy.html#a8fc8d0e966fb79156fc6d6cf1bf6b59a">chatWithContact</a> (const <a class="elRef" href="qstring.html">QString</a> &amp;uid)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKIMProxy.html#a51d917c2cf1f619a1be25cc1cf08df74">messageContact</a> (const <a class="elRef" href="qstring.html">QString</a> &amp;uid, const <a class="elRef" href="qstring.html">QString</a> &amp;message)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKIMProxy.html#a681583dd4d014924d0e3e7e303170ba4">sendFile</a> (const <a class="elRef" href="qstring.html">QString</a> &amp;uid, const <a class="elRef" doxygen="kdecore.tag:../../kdecore/html/" href="../../kdecore/html/classKURL.html">KURL</a> &amp;sourceURL, const <a class="elRef" href="qstring.html">QString</a> &amp;altFileName=QString::null, uint fileSize=0)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKIMProxy.html#a7d71362a9ba1b162672e2a6c80f319bf">addContact</a> (const <a class="elRef" href="qstring.html">QString</a> &amp;contactId, const <a class="elRef" href="qstring.html">QString</a> &amp;protocol)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKIMProxy.html#a79de4cc33ee155d9989680372e9045f3">imAppsAvailable</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKIMProxy.html#a6afbe30b196de30d57366a8fc9c01ee2">startPreferredApp</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKIMProxy.html#a4fd78f3e6a9a306ff83681e04af8dc57">contactPresenceChanged</a> (<a class="elRef" href="qstring.html">QString</a> uid, <a class="elRef" href="qcstring.html">QCString</a> appId, int presence)</td></tr>
<tr><td colspan="2"><h2><a name="pub-static-methods"></a>
Static Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static <a class="el" href="classKIMProxy.html">KIMProxy</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKIMProxy.html#aba4d2f7cc6437a23dcbf3ac7be65e8b7">instance</a> (<a class="elRef" doxygen="dcop.tag:../../dcop/html/" href="../../dcop/html/classDCOPClient.html">DCOPClient</a> *client)</td></tr>
<tr><td colspan="2"><h2><a name="pro-methods"></a>
Protected Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKIMProxy.html#a9231fdbbfd7e4d850b20868a2b122e2c">pollApp</a> (const <a class="elRef" href="qcstring.html">QCString</a> &amp;appId)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKIMProxy.html#a9c0ea64187311ef936d41fd5c3381b2a">pollAll</a> (const <a class="elRef" href="qstring.html">QString</a> &amp;uid)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKIMProxy.html#a7ab0ee40b5a45e281ae7498cff6ec954">updatePresence</a> (const <a class="elRef" href="qstring.html">QString</a> &amp;uid, const <a class="elRef" href="qcstring.html">QCString</a> &amp;appId, int presence)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="elRef" href="qstring.html">QString</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKIMProxy.html#a35e909ffad0720620e6c8f305366b7c7">preferredApp</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">KIMIface_stub *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKIMProxy.html#a5d6d1b8e5f553f16379adc6fb25880de">stubForUid</a> (const <a class="elRef" href="qstring.html">QString</a> &amp;uid)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">KIMIface_stub *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKIMProxy.html#a3f777da662e7d0e257e18c32922d93ce">stubForProtocol</a> (const <a class="elRef" href="qstring.html">QString</a> &amp;protocol)</td></tr>
<tr><td colspan="2"><h2><a name="friends"></a>
Friends</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8ac68a7547b5f24e3d6935a4abdb32d2"></a><!-- doxytag: member="KIMProxy::KStaticDeleter" ref="a8ac68a7547b5f24e3d6935a4abdb32d2" args="" -->
class&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKIMProxy.html#a8ac68a7547b5f24e3d6935a4abdb32d2">KStaticDeleter</a></td></tr>
</table>
<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
<div class="textblock"><p>Provides access to instant messenger programs which implement KDE's instant messanger interface <a class="el" href="classKIMIface.html" title="Generic DCOP interface for KDE instant messenger applications.">KIMIface</a>. </p>
<p>This class provides an easy-to-use interface to all running instant messengers or chat programs that implement <a class="el" href="classKIMIface.html" title="Generic DCOP interface for KDE instant messenger applications.">KIMIface</a>.</p>
<p>It works simultaneously with any running programs that implement the ServiceType <code>DCOP/InstantMessenger</code>.</p>
<p>IM-contacts are identified using unique identifier strings (UID) used by KDE's address book framework KABC. However the use of the address book API is optional, <a class="el" href="classKIMProxy.html" title="Provides access to instant messenger programs which implement KDE&#39;s instant messanger interface KIMIf...">KIMProxy</a> provides methods to fetch lists of available contact UIDs from the applications. If a UID is reachable with more than one program, <a class="el" href="classKIMProxy.html" title="Provides access to instant messenger programs which implement KDE&#39;s instant messanger interface KIMIf...">KIMProxy</a> aggregates the available information and presents the 'best' presence. For example, for a contact who can be seen to be <code>Away</code> in <code>IRC</code> on program A but <code>Online</code> using <code>ICQ</code> on program B, the information from program B will be used.</p>
<p><a class="el" href="classKIMProxy.html" title="Provides access to instant messenger programs which implement KDE&#39;s instant messanger interface KIMIf...">KIMProxy</a> is designed for simple information in a wide number of cases, not for detailed messaging.</p>
<p>The class is implemented as a singleton, so whenever you need access to one of its methods, just retrieve the single instance using <a class="el" href="classKIMProxy.html#aba4d2f7cc6437a23dcbf3ac7be65e8b7" title="Obtain an instance of KIMProxy.">instance()</a>. The following code snippet demonstrated how to send a message to all reachable IM-contacts: </p>
<div class="fragment"><pre class="fragment"> <span class="comment">// get proxy instance</span>
 <a class="code" href="classKIMProxy.html" title="Provides access to instant messenger programs which implement KDE&#39;s instant messanger interface KIMIf...">KIMProxy</a>* proxy = <a class="code" href="classKIMProxy.html#aba4d2f7cc6437a23dcbf3ac7be65e8b7" title="Obtain an instance of KIMProxy.">KIMProxy::instance</a>();

 <span class="comment">// check if there are suitable applications reachable</span>
 <span class="keywordflow">if</span> (!proxy-&gt;<a class="code" href="classKIMProxy.html#a3193fb0f41c75ceeaa33b4489601fe42" title="Get the proxy ready to connect.">initialize</a>()) <span class="keywordflow">return</span>;

 <a class="codeRef" href="qstring.html">QString</a> message = <span class="stringliteral">&quot;Hi!\nHow are you on this wonderful day?&quot;</span>;

 <span class="comment">// iterate over the list of reachable contacts</span>
 <a class="codeRef" href="qstringlist.html">QStringList</a> <a class="code" href="classKIMProxy.html#affeb58bccb6aa0b8dd79e68068d8a497" title="Obtain a list of IM-contacts that are currently reachable.">reachableContacts</a> = proxy-&gt;<a class="code" href="classKIMProxy.html#affeb58bccb6aa0b8dd79e68068d8a497" title="Obtain a list of IM-contacts that are currently reachable.">reachableContacts</a>();
 <span class="keywordflow">for</span> (QStringList::const_iterator it = reachableContacts.begin();
      it != reachableContacts.end(); ++it)
 {
       proxy-&gt;<a class="code" href="classKIMProxy.html#a51d917c2cf1f619a1be25cc1cf08df74" title="Send a single message to the specified contact.">messageContact</a>(*it, message);
 }
</pre></div><dl class="note"><dt><b>Note:</b></dt><dd>While it is possible to communicate with each of those application's by DCOP using <a class="el" href="classKIMProxy.html" title="Provides access to instant messenger programs which implement KDE&#39;s instant messanger interface KIMIf...">KIMProxy</a> has the advantage of communicating with all applications simultaneously and thus getting an augmented view of availability, capability and presence (online status) of IM-contacts.</dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classKIMIface.html" title="Generic DCOP interface for KDE instant messenger applications.">KIMIface</a> </dd>
<dd>
KABC::AddressBook </dd>
<dd>
KABC::Addressee</dd></dl>
<dl class="since"><dt><b>Since:</b></dt><dd>3.3 </dd></dl>
<dl class="author"><dt><b>Author:</b></dt><dd>Will Stephenson &lt;<a href="mailto:lists@stevello.free-online.co.uk">lists@stevello.free-online.co.uk</a>&gt; </dd></dl>

<p>Definition at line <a class="el" href="kimproxy_8h_source.html#l00107">107</a> of file <a class="el" href="kimproxy_8h_source.html">kimproxy.h</a>.</p>
</div><hr/><h2>Member Function Documentation</h2>
<a class="anchor" id="a7d71362a9ba1b162672e2a6c80f319bf"></a><!-- doxytag: member="KIMProxy::addContact" ref="a7d71362a9ba1b162672e2a6c80f319bf" args="(const QString &amp;contactId, const QString &amp;protocol)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool KIMProxy::addContact </td>
          <td>(</td>
          <td class="paramtype">const <a class="elRef" href="qstring.html">QString</a> &amp;&#160;</td>
          <td class="paramname"><em>contactId</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="elRef" href="qstring.html">QString</a> &amp;&#160;</td>
          <td class="paramname"><em>protocol</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Add a new contact given its protocol specific identifier. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">contactId</td><td>the protocol specific identifier for the contact e.g. UIN for ICQ, screenname for AIM, nick for IRC </td></tr>
    <tr><td class="paramname">protocol</td><td>the IM protocol/service to use. See <a class="el" href="classKIMIface.html" title="Generic DCOP interface for KDE instant messenger applications.">KIMIface</a>:::protocols() </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>whether the add succeeded. <code>false</code> may signal already present, protocol not supported, or add operation not supported.</dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classKIMProxy.html#a0ee83ebea98f0af3db83c96c3d3ece53" title="Obtain the KABC UID corresponding to the given IM address.">locate()</a> </dd>
<dd>
<a class="el" href="classKIMIface.html#a8cd2b852952e0d2072bafff36ef928c4" title="Obtain a list of supported IM services/protocols.">KIMIface::protocols()</a> </dd></dl>

<p>Definition at line <a class="el" href="kimproxy_8cpp_source.html#l00533">533</a> of file <a class="el" href="kimproxy_8cpp_source.html">kimproxy.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a85d6a063ae44a369861e44deb2f07dc7"></a><!-- doxytag: member="KIMProxy::allContacts" ref="a85d6a063ae44a369861e44deb2f07dc7" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="elRef" href="qstringlist.html">QStringList</a> KIMProxy::allContacts </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Obtain a list of IM-contacts known to IM-applications. </p>
<p>Returns a list of KABC UIDs gathered by merging the lists of each application the proxy can communicate with. The method uses cached information to make it fast and not require actually communicating with the applications every time it is called.</p>
<dl class="return"><dt><b>Returns:</b></dt><dd>a list of KABC UIDs known to any IM-application</dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classKIMProxy.html#affeb58bccb6aa0b8dd79e68068d8a497" title="Obtain a list of IM-contacts that are currently reachable.">reachableContacts()</a> </dd>
<dd>
<a class="el" href="classKIMProxy.html#a154656cc1952d2e8a476d1b15eb392bf" title="Obtain a list of IM-contacts that are currently online.">onlineContacts()</a> </dd>
<dd>
<a class="el" href="classKIMProxy.html#a1d02f9f85a7f5af4162f2dec424f1b90" title="Obtain a list of IM-contacts who may receive file transfers.">fileTransferContacts()</a> </dd>
<dd>
<a class="el" href="classKIMProxy.html#a4e31705108604c7314635768e80828bb" title="Confirm if a given contact is known to the proxy.">isPresent()</a> </dd>
<dd>
KABC::Addressee::uid() </dd></dl>

<p>Definition at line <a class="el" href="kimproxy_8cpp_source.html#l00394">394</a> of file <a class="el" href="kimproxy_8cpp_source.html">kimproxy.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="aac9d6ec424eb7a21305b114ac877e891"></a><!-- doxytag: member="KIMProxy::canReceiveFiles" ref="aac9d6ec424eb7a21305b114ac877e891" args="(const QString &amp;uid)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool KIMProxy::canReceiveFiles </td>
          <td>(</td>
          <td class="paramtype">const <a class="elRef" href="qstring.html">QString</a> &amp;&#160;</td>
          <td class="paramname"><em>uid</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Indicate if a given contact can receive files. </p>
<p>If the given KABC UID is known to more than one IM-application the result of the application which has the best presence for the contact is taken. For example if a contact is <code>Online</code> on ICQ and Away on AIM, the value returned by the application providing ICQ is taken.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">uid</td><td>the KABC UID you want to the file transfer capability for </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>whether the specified contact can receive files</dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classKIMProxy.html#a1d02f9f85a7f5af4162f2dec424f1b90" title="Obtain a list of IM-contacts who may receive file transfers.">fileTransferContacts()</a> </dd>
<dd>
KABC::Addressee::uid() </dd></dl>

<p>Definition at line <a class="el" href="kimproxy_8cpp_source.html#l00459">459</a> of file <a class="el" href="kimproxy_8cpp_source.html">kimproxy.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a267dc5507df926ed18c7b4ed373121be"></a><!-- doxytag: member="KIMProxy::canRespond" ref="a267dc5507df926ed18c7b4ed373121be" args="(const QString &amp;uid)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool KIMProxy::canRespond </td>
          <td>(</td>
          <td class="paramtype">const <a class="elRef" href="qstring.html">QString</a> &amp;&#160;</td>
          <td class="paramname"><em>uid</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Indicate if a given contact will be able to respond. </p>
<p>Some media are unidirectional (e.g., sending SMS via a web interface). This refers to the contact's ability to respond as defined by the medium, not by their presence.</p>
<p>Someone may appear offline (SMS has no presence) to you but in fact be able to respond.</p>
<p>If the given KABC UID is known to more than one IM-application the result of the application which has the best presence for the contact is taken. For example if a contact is <code>Online</code> on ICQ and Away on AIM, the value returned by the application providing ICQ is taken.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">uid</td><td>the KABC UID you are interested in </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>whether the specified contact can respond</dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classKIMProxy.html#a4e31705108604c7314635768e80828bb" title="Confirm if a given contact is known to the proxy.">isPresent()</a> </dd>
<dd>
KABC::Addressee::uid() </dd></dl>

<p>Definition at line <a class="el" href="kimproxy_8cpp_source.html#l00469">469</a> of file <a class="el" href="kimproxy_8cpp_source.html">kimproxy.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a8fc8d0e966fb79156fc6d6cf1bf6b59a"></a><!-- doxytag: member="KIMProxy::chatWithContact" ref="a8fc8d0e966fb79156fc6d6cf1bf6b59a" args="(const QString &amp;uid)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void KIMProxy::chatWithContact </td>
          <td>(</td>
          <td class="paramtype">const <a class="elRef" href="qstring.html">QString</a> &amp;&#160;</td>
          <td class="paramname"><em>uid</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Start a chat session with the specified contact. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">uid</td><td>the KABC UID you want to chat with</td></tr>
  </table>
  </dd>
</dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classKIMProxy.html#a51d917c2cf1f619a1be25cc1cf08df74" title="Send a single message to the specified contact.">messageContact()</a> </dd>
<dd>
<a class="el" href="classKIMProxy.html#a681583dd4d014924d0e3e7e303170ba4" title="Send a file to the contact.">sendFile()</a> </dd>
<dd>
<a class="el" href="classKIMProxy.html#a4e31705108604c7314635768e80828bb" title="Confirm if a given contact is known to the proxy.">isPresent()</a> </dd>
<dd>
<a class="el" href="classKIMProxy.html#affeb58bccb6aa0b8dd79e68068d8a497" title="Obtain a list of IM-contacts that are currently reachable.">reachableContacts()</a> </dd>
<dd>
KABC::Addressee::uid() </dd></dl>

<p>Definition at line <a class="el" href="kimproxy_8cpp_source.html#l00489">489</a> of file <a class="el" href="kimproxy_8cpp_source.html">kimproxy.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a4fd78f3e6a9a306ff83681e04af8dc57"></a><!-- doxytag: member="KIMProxy::contactPresenceChanged" ref="a4fd78f3e6a9a306ff83681e04af8dc57" args="(QString uid, QCString appId, int presence)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void KIMProxy::contactPresenceChanged </td>
          <td>(</td>
          <td class="paramtype"><a class="elRef" href="qstring.html">QString</a>&#160;</td>
          <td class="paramname"><em>uid</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="elRef" href="qcstring.html">QCString</a>&#160;</td>
          <td class="paramname"><em>appId</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>presence</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Just exists to let the IDL compiler make the DCOP signal for this. </p>

<p>Definition at line <a class="el" href="kimproxy_8cpp_source.html#l00328">328</a> of file <a class="el" href="kimproxy_8cpp_source.html">kimproxy.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a0d1f1e663d5bf30d688b8e0a0d8982cc"></a><!-- doxytag: member="KIMProxy::context" ref="a0d1f1e663d5bf30d688b8e0a0d8982cc" args="(const QString &amp;uid)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="elRef" href="qstring.html">QString</a> KIMProxy::context </td>
          <td>(</td>
          <td class="paramtype">const <a class="elRef" href="qstring.html">QString</a> &amp;&#160;</td>
          <td class="paramname"><em>uid</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Obtain the given contact's current context (home, work, or any) </p>
<p>Not all IM services/protocols support the concept of contexts. If the given UID maps to such a service, <code>QString::null</code> will be returned</p>
<p>If the given KABC UID is known to more than one IM-application the result of the application which has the best presence for the contact is taken. For example if a contact is <code>Online</code> on ICQ and Away on AIM, the value returned by the application providing ICQ is taken.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">uid</td><td>the KABC UID you want the context for </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>a string describing the context, or <code>QString::null</code> if not supported or if the contact is unknown</dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classKIMProxy.html#a4e31705108604c7314635768e80828bb" title="Confirm if a given contact is known to the proxy.">isPresent()</a> </dd>
<dd>
KABC::Addressee::uid() </dd></dl>

<p>Definition at line <a class="el" href="kimproxy_8cpp_source.html#l00479">479</a> of file <a class="el" href="kimproxy_8cpp_source.html">kimproxy.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a5fee1c79aeff7f94a38cc0456a3a9fab"></a><!-- doxytag: member="KIMProxy::displayName" ref="a5fee1c79aeff7f94a38cc0456a3a9fab" args="(const QString &amp;uid)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="elRef" href="qstring.html">QString</a> KIMProxy::displayName </td>
          <td>(</td>
          <td class="paramtype">const <a class="elRef" href="qstring.html">QString</a> &amp;&#160;</td>
          <td class="paramname"><em>uid</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Obtain the proxy's idea of the contact's display name. </p>
<p>If the given KABC UID is known to more than one IM-application the result of the application which has the best presence for the contact is taken. For example if a contact is <code>Online</code> on ICQ and <code>Away</code> on AIM, the value returned by the application providing ICQ is taken.</p>
<p>Useful if KABC lookups may be too slow.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">uid</td><td>the KABC UID you are interested in </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>the corresponding display name or <a class="elRef" href="qstring.html">QString</a>:null if the UID is unknown</dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classKIMProxy.html#a4e31705108604c7314635768e80828bb" title="Confirm if a given contact is known to the proxy.">isPresent()</a> </dd>
<dd>
<a class="el" href="classKIMProxy.html#ac67e20a529a22a578362eefe3fde816e" title="Obtain the IM presence as a i18ned string for the specified contact.">presenceString()</a> </dd>
<dd>
<a class="el" href="classKIMProxy.html#a5ef08be65cd6cd53eccaad945fe2044c" title="Obtain the IM presence as a number for the specified contact.">presenceNumeric()</a> </dd>
<dd>
KABC::Addressee::uid() </dd></dl>

<p>Definition at line <a class="el" href="kimproxy_8cpp_source.html#l00447">447</a> of file <a class="el" href="kimproxy_8cpp_source.html">kimproxy.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a1d02f9f85a7f5af4162f2dec424f1b90"></a><!-- doxytag: member="KIMProxy::fileTransferContacts" ref="a1d02f9f85a7f5af4162f2dec424f1b90" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="elRef" href="qstringlist.html">QStringList</a> KIMProxy::fileTransferContacts </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Obtain a list of IM-contacts who may receive file transfers. </p>
<p>Returned IM-contacts might not be capable of receiving file tranfers due to limitations of their clients or because they are behind a firewall. <a class="el" href="classKIMProxy.html" title="Provides access to instant messenger programs which implement KDE&#39;s instant messanger interface KIMIf...">KIMProxy</a> doesn't have the possibilities to discover this and will list them as well.</p>
<p>Returns a list of KABC UIDs gathered by merging the lists of each application the proxy can communicate with.</p>
<dl class="return"><dt><b>Returns:</b></dt><dd>a list of KABC UIDs capable of file transfer</dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classKIMProxy.html#a85d6a063ae44a369861e44deb2f07dc7" title="Obtain a list of IM-contacts known to IM-applications.">allContacts()</a> </dd>
<dd>
<a class="el" href="classKIMProxy.html#affeb58bccb6aa0b8dd79e68068d8a497" title="Obtain a list of IM-contacts that are currently reachable.">reachableContacts()</a> </dd>
<dd>
<a class="el" href="classKIMProxy.html#a154656cc1952d2e8a476d1b15eb392bf" title="Obtain a list of IM-contacts that are currently online.">onlineContacts()</a> </dd>
<dd>
<a class="el" href="classKIMProxy.html#aac9d6ec424eb7a21305b114ac877e891" title="Indicate if a given contact can receive files.">canReceiveFiles()</a> </dd>
<dd>
KABC::Addressee::uid() </dd></dl>

<p>Definition at line <a class="el" href="kimproxy_8cpp_source.html#l00427">427</a> of file <a class="el" href="kimproxy_8cpp_source.html">kimproxy.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a79de4cc33ee155d9989680372e9045f3"></a><!-- doxytag: member="KIMProxy::imAppsAvailable" ref="a79de4cc33ee155d9989680372e9045f3" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool KIMProxy::imAppsAvailable </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Checks if there are any compatible instant messaging applications available. </p>
<p>Available means that they are started and registered with DCOP and implementing the correct DCOP service. This information will be updated on the first call to <a class="el" href="classKIMProxy.html#a3193fb0f41c75ceeaa33b4489601fe42" title="Get the proxy ready to connect.">initialize()</a> and whenever an application registers or unregisters with DCOP, i.e. the information will be kept up to date.</p>
<dl class="return"><dt><b>Returns:</b></dt><dd><code>true</code> if there are any apps available </dd></dl>

<p>Definition at line <a class="el" href="kimproxy_8cpp_source.html#l00553">553</a> of file <a class="el" href="kimproxy_8cpp_source.html">kimproxy.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a3193fb0f41c75ceeaa33b4489601fe42"></a><!-- doxytag: member="KIMProxy::initialize" ref="a3193fb0f41c75ceeaa33b4489601fe42" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool KIMProxy::initialize </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get the proxy ready to connect. </p>
<p>Discover any running IM clients and setup communication handlers for them. The list of available clients is updated automatically through notification about added or removed DCOP applications as provided by <a class="elRef" doxygen="dcop.tag:../../dcop/html/" href="../../dcop/html/classDCOPClient.html">DCOPClient</a>.</p>
<p>It is safe to call this method more than once, initialization only occurs at the first time.</p>
<dl class="return"><dt><b>Returns:</b></dt><dd>whether the proxy is ready to use. <code>false</code> if there are no suitable apps running </dd></dl>

<p>Definition at line <a class="el" href="kimproxy_8cpp_source.html#l00215">215</a> of file <a class="el" href="kimproxy_8cpp_source.html">kimproxy.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="aba4d2f7cc6437a23dcbf3ac7be65e8b7"></a><!-- doxytag: member="KIMProxy::instance" ref="aba4d2f7cc6437a23dcbf3ac7be65e8b7" args="(DCOPClient *client)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classKIMProxy.html">KIMProxy</a> * KIMProxy::instance </td>
          <td>(</td>
          <td class="paramtype"><a class="elRef" doxygen="dcop.tag:../../dcop/html/" href="../../dcop/html/classDCOPClient.html">DCOPClient</a> *&#160;</td>
          <td class="paramname"><em>client</em></td><td>)</td>
          <td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Obtain an instance of <a class="el" href="classKIMProxy.html" title="Provides access to instant messenger programs which implement KDE&#39;s instant messanger interface KIMIf...">KIMProxy</a>. </p>
<p>Creates a new instance if it is called for the first time. Call <a class="el" href="classKIMProxy.html#a3193fb0f41c75ceeaa33b4489601fe42" title="Get the proxy ready to connect.">initialize()</a> to check if there are applications available for communication.</p>
<dl class="note"><dt><b>Note:</b></dt><dd><a class="el" href="classKIMProxy.html" title="Provides access to instant messenger programs which implement KDE&#39;s instant messanger interface KIMIf...">KIMProxy</a> uses <a class="elRef" doxygen="dcop.tag:../../dcop/html/" href="../../dcop/html/classDCOPClient.html#a9bc15bce767c2eee47c69b3130476f27">DCOPClient::setNotifications()</a> to make sure it updates its information about IM applications it interacts with, e.g. that it gets notified about newly available applications or about applications exiting</dd></dl>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">client</td><td>your application's DCOP client </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>the singleton instance of this class </dd></dl>

<p>Definition at line <a class="el" href="kimproxy_8cpp_source.html#l00166">166</a> of file <a class="el" href="kimproxy_8cpp_source.html">kimproxy.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a4e31705108604c7314635768e80828bb"></a><!-- doxytag: member="KIMProxy::isPresent" ref="a4e31705108604c7314635768e80828bb" args="(const QString &amp;uid)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool KIMProxy::isPresent </td>
          <td>(</td>
          <td class="paramtype">const <a class="elRef" href="qstring.html">QString</a> &amp;&#160;</td>
          <td class="paramname"><em>uid</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Confirm if a given contact is known to the proxy. </p>
<p>A contact is known to the proxy if it is know to at least one IM-application the proxy is communicating with.</p>
<p>The method uses cached information to make it fast and not require actually communicating with the applications every time it is called.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">uid</td><td>the KABC UID you are interested in </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>whether any IM-program knows of this KABC UID</dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classKIMProxy.html#a85d6a063ae44a369861e44deb2f07dc7" title="Obtain a list of IM-contacts known to IM-applications.">allContacts()</a> </dd>
<dd>
<a class="el" href="classKIMProxy.html#ac67e20a529a22a578362eefe3fde816e" title="Obtain the IM presence as a i18ned string for the specified contact.">presenceString()</a> </dd>
<dd>
<a class="el" href="classKIMProxy.html#a5ef08be65cd6cd53eccaad945fe2044c" title="Obtain the IM presence as a number for the specified contact.">presenceNumeric()</a> </dd>
<dd>
KABC::Addressee::uid() </dd></dl>

<p>Definition at line <a class="el" href="kimproxy_8cpp_source.html#l00442">442</a> of file <a class="el" href="kimproxy_8cpp_source.html">kimproxy.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a0ee83ebea98f0af3db83c96c3d3ece53"></a><!-- doxytag: member="KIMProxy::locate" ref="a0ee83ebea98f0af3db83c96c3d3ece53" args="(const QString &amp;contactId, const QString &amp;protocol)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="elRef" href="qstring.html">QString</a> KIMProxy::locate </td>
          <td>(</td>
          <td class="paramtype">const <a class="elRef" href="qstring.html">QString</a> &amp;&#160;</td>
          <td class="paramname"><em>contactId</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="elRef" href="qstring.html">QString</a> &amp;&#160;</td>
          <td class="paramname"><em>protocol</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Obtain the KABC UID corresponding to the given IM address. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">contactId</td><td>the protocol specific identifier for the contact, e.g. UIN for ICQ, screenname for AIM, nick for IRC </td></tr>
    <tr><td class="paramname">protocol</td><td>the IM protocol/service to check. See <a class="el" href="classKIMIface.html#a8cd2b852952e0d2072bafff36ef928c4" title="Obtain a list of supported IM services/protocols.">KIMIface::protocols()</a> </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>the KABC UID for the given contact or <code>QString::null</code> if not found or either input stream was empty or the protocol is not supported</dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classKIMIface.html#a8cd2b852952e0d2072bafff36ef928c4" title="Obtain a list of supported IM services/protocols.">KIMIface::protocols()</a> </dd>
<dd>
<a class="el" href="classKIMProxy.html#a7d71362a9ba1b162672e2a6c80f319bf" title="Add a new contact given its protocol specific identifier.">addContact()</a> </dd>
<dd>
<a class="el" href="classKIMProxy.html#a4e31705108604c7314635768e80828bb" title="Confirm if a given contact is known to the proxy.">isPresent()</a> </dd>
<dd>
KABC::Addressee::uid() </dd></dl>

<p>Definition at line <a class="el" href="kimproxy_8cpp_source.html#l00543">543</a> of file <a class="el" href="kimproxy_8cpp_source.html">kimproxy.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a51d917c2cf1f619a1be25cc1cf08df74"></a><!-- doxytag: member="KIMProxy::messageContact" ref="a51d917c2cf1f619a1be25cc1cf08df74" args="(const QString &amp;uid, const QString &amp;message)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void KIMProxy::messageContact </td>
          <td>(</td>
          <td class="paramtype">const <a class="elRef" href="qstring.html">QString</a> &amp;&#160;</td>
          <td class="paramname"><em>uid</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="elRef" href="qstring.html">QString</a> &amp;&#160;</td>
          <td class="paramname"><em>message</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Send a single message to the specified contact. </p>
<p>Any response will be handled by the IM client as a normal conversation.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">uid</td><td>the KABC UID you want to send the message to </td></tr>
    <tr><td class="paramname">message</td><td>the message text to send to the contact</td></tr>
  </table>
  </dd>
</dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classKIMProxy.html#a8fc8d0e966fb79156fc6d6cf1bf6b59a" title="Start a chat session with the specified contact.">chatWithContact()</a> </dd>
<dd>
<a class="el" href="classKIMProxy.html#a681583dd4d014924d0e3e7e303170ba4" title="Send a file to the contact.">sendFile()</a> </dd>
<dd>
<a class="el" href="classKIMProxy.html#a4e31705108604c7314635768e80828bb" title="Confirm if a given contact is known to the proxy.">isPresent()</a> </dd>
<dd>
<a class="el" href="classKIMProxy.html#affeb58bccb6aa0b8dd79e68068d8a497" title="Obtain a list of IM-contacts that are currently reachable.">reachableContacts()</a> </dd>
<dd>
KABC::Addressee::uid() </dd></dl>

<p>Definition at line <a class="el" href="kimproxy_8cpp_source.html#l00502">502</a> of file <a class="el" href="kimproxy_8cpp_source.html">kimproxy.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a154656cc1952d2e8a476d1b15eb392bf"></a><!-- doxytag: member="KIMProxy::onlineContacts" ref="a154656cc1952d2e8a476d1b15eb392bf" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="elRef" href="qstringlist.html">QStringList</a> KIMProxy::onlineContacts </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Obtain a list of IM-contacts that are currently online. </p>
<p>Returns a list of KABC UIDs gathered by merging the lists of each application the proxy can communicate with. The method uses cached information to make it fast and not require actually communicating with the applications every time it is called.</p>
<dl class="return"><dt><b>Returns:</b></dt><dd>a list of KABC UIDs who are online with unspecified presence</dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classKIMProxy.html#a85d6a063ae44a369861e44deb2f07dc7" title="Obtain a list of IM-contacts known to IM-applications.">allContacts()</a> </dd>
<dd>
<a class="el" href="classKIMProxy.html#affeb58bccb6aa0b8dd79e68068d8a497" title="Obtain a list of IM-contacts that are currently reachable.">reachableContacts()</a> </dd>
<dd>
<a class="el" href="classKIMProxy.html#a1d02f9f85a7f5af4162f2dec424f1b90" title="Obtain a list of IM-contacts who may receive file transfers.">fileTransferContacts()</a> </dd>
<dd>
<a class="el" href="classKIMProxy.html#a51d917c2cf1f619a1be25cc1cf08df74" title="Send a single message to the specified contact.">messageContact()</a> </dd>
<dd>
<a class="el" href="classKIMProxy.html#a8fc8d0e966fb79156fc6d6cf1bf6b59a" title="Start a chat session with the specified contact.">chatWithContact()</a> </dd>
<dd>
KABC::Addressee::uid() </dd></dl>

<p>Definition at line <a class="el" href="kimproxy_8cpp_source.html#l00415">415</a> of file <a class="el" href="kimproxy_8cpp_source.html">kimproxy.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a9c0ea64187311ef936d41fd5c3381b2a"></a><!-- doxytag: member="KIMProxy::pollAll" ref="a9c0ea64187311ef936d41fd5c3381b2a" args="(const QString &amp;uid)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void KIMProxy::pollAll </td>
          <td>(</td>
          <td class="paramtype">const <a class="elRef" href="qstring.html">QString</a> &amp;&#160;</td>
          <td class="paramname"><em>uid</em></td><td>)</td>
          <td><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Bootstrap our presence data by polling all known apps. </p>

<p>Definition at line <a class="el" href="kimproxy_8cpp_source.html#l00576">576</a> of file <a class="el" href="kimproxy_8cpp_source.html">kimproxy.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a9231fdbbfd7e4d850b20868a2b122e2c"></a><!-- doxytag: member="KIMProxy::pollApp" ref="a9231fdbbfd7e4d850b20868a2b122e2c" args="(const QCString &amp;appId)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void KIMProxy::pollApp </td>
          <td>(</td>
          <td class="paramtype">const <a class="elRef" href="qcstring.html">QCString</a> &amp;&#160;</td>
          <td class="paramname"><em>appId</em></td><td>)</td>
          <td><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Bootstrap our presence data for a newly registered app. </p>

<p>Definition at line <a class="el" href="kimproxy_8cpp_source.html#l00594">594</a> of file <a class="el" href="kimproxy_8cpp_source.html">kimproxy.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a35e909ffad0720620e6c8f305366b7c7"></a><!-- doxytag: member="KIMProxy::preferredApp" ref="a35e909ffad0720620e6c8f305366b7c7" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="elRef" href="qstring.html">QString</a> KIMProxy::preferredApp </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get the name of the user's IM application of choice. </p>

<p>Definition at line <a class="el" href="kimproxy_8cpp_source.html#l00644">644</a> of file <a class="el" href="kimproxy_8cpp_source.html">kimproxy.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="acac424488ca651eef5b2b2fa51814915"></a><!-- doxytag: member="KIMProxy::presenceIcon" ref="acac424488ca651eef5b2b2fa51814915" args="(const QString &amp;uid)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="elRef" href="qpixmap.html">QPixmap</a> KIMProxy::presenceIcon </td>
          <td>(</td>
          <td class="paramtype">const <a class="elRef" href="qstring.html">QString</a> &amp;&#160;</td>
          <td class="paramname"><em>uid</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Obtain the icon representing the IM presence for the specified contact. </p>
<p>If the given KABC UID is known to more than one IM-application the result of the application which has the best presence for the contact is taken. For example if a contact is <code>Online</code> on ICQ and Away on AIM, the value returned by the application providing ICQ is taken.</p>
<dl class="note"><dt><b>Note:</b></dt><dd>The presence icon is chosen based on the numerical presence value returned by the applications. It currently does not return the presence icon used by the applications.</dd></dl>
<p>The method uses cached information to make it fast and not require actually communicating with the applications every time it is called.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">uid</td><td>the KABC UID you want the presence icon for </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>a pixmap representing the contact's presence or a null pixmap if the contact is unknown. See <a class="elRef" href="qpixmap.html#isNull">QPixmap::isNull()</a></dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classKIMProxy.html#a4e31705108604c7314635768e80828bb" title="Confirm if a given contact is known to the proxy.">isPresent()</a> </dd>
<dd>
<a class="el" href="classKIMProxy.html#ac67e20a529a22a578362eefe3fde816e" title="Obtain the IM presence as a i18ned string for the specified contact.">presenceString()</a> </dd>
<dd>
<a class="el" href="classKIMProxy.html#a5ef08be65cd6cd53eccaad945fe2044c" title="Obtain the IM presence as a number for the specified contact.">presenceNumeric()</a> </dd>
<dd>
KABC::Addressee::uid() </dd></dl>

<p>Definition at line <a class="el" href="kimproxy_8cpp_source.html#l00373">373</a> of file <a class="el" href="kimproxy_8cpp_source.html">kimproxy.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a5ef08be65cd6cd53eccaad945fe2044c"></a><!-- doxytag: member="KIMProxy::presenceNumeric" ref="a5ef08be65cd6cd53eccaad945fe2044c" args="(const QString &amp;uid)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int KIMProxy::presenceNumeric </td>
          <td>(</td>
          <td class="paramtype">const <a class="elRef" href="qstring.html">QString</a> &amp;&#160;</td>
          <td class="paramname"><em>uid</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Obtain the IM presence as a number for the specified contact. </p>
<p>Returns one of the following values depending on the given contact's presence:</p>
<ul>
<li>0 - <code>Unknown:</code> for contacts where you can not use any of the other values</li>
</ul>
<ul>
<li>1 - <code>Offline:</code> for contacts that are offline, i.e. not connected to their IM-service.</li>
</ul>
<ul>
<li>2 - <code>Connecting</code> </li>
</ul>
<ul>
<li>3 - <code>Away:</code> for contacts that are connected to their IM-service but not <code>Online</code> </li>
</ul>
<ul>
<li>4 - <code>Online</code> </li>
</ul>
<p>If the given KABC UID is known to more than one IM-application the result of the application which has the best presence for the contact is taken. For example if a contact is <code>Online</code> on ICQ and Away on AIM, the value returned by the application providing ICQ is taken.</p>
<p>The method uses cached information to make it fast and not require actually communicating with the applications every time it is called.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">uid</td><td>the KABC UID you want the presence for </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>a numeric representation of presence - currently one of 0 (Unknown), 1 (Offline), 2 (Connecting), 3 (Away), 4 (Online). Returns 0 if the given UID is unknown</dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classKIMProxy.html#a4e31705108604c7314635768e80828bb" title="Confirm if a given contact is known to the proxy.">isPresent()</a> </dd>
<dd>
<a class="el" href="classKIMProxy.html#ac67e20a529a22a578362eefe3fde816e" title="Obtain the IM presence as a i18ned string for the specified contact.">presenceString()</a> </dd>
<dd>
<a class="el" href="classKIMProxy.html#acac424488ca651eef5b2b2fa51814915" title="Obtain the icon representing the IM presence for the specified contact.">presenceIcon()</a> </dd>
<dd>
<a class="el" href="classKIMIface.html#a0100d77fb96b40ba5b47ff0eef989178" title="Obtain the IM presence as a number for the specified contact.">KIMIface::presenceStatus()</a> </dd>
<dd>
KABC::Addressee::uid() </dd></dl>

<p>Definition at line <a class="el" href="kimproxy_8cpp_source.html#l00346">346</a> of file <a class="el" href="kimproxy_8cpp_source.html">kimproxy.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="ac67e20a529a22a578362eefe3fde816e"></a><!-- doxytag: member="KIMProxy::presenceString" ref="ac67e20a529a22a578362eefe3fde816e" args="(const QString &amp;uid)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="elRef" href="qstring.html">QString</a> KIMProxy::presenceString </td>
          <td>(</td>
          <td class="paramtype">const <a class="elRef" href="qstring.html">QString</a> &amp;&#160;</td>
          <td class="paramname"><em>uid</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Obtain the IM presence as a i18ned string for the specified contact. </p>
<p>The presence string is one of the following:</p>
<ul>
<li>i18n("Unknown")</li>
<li>i18n("Offline")</li>
<li>i18n("Connecting")</li>
<li>i18n("Away")</li>
<li>i18n("Online")</li>
</ul>
<p>If the given KABC UID is known to more than one IM-application the result of the application which has the best presence for the contact is taken. For example if a contact is <code>Online</code> on ICQ and Away on AIM, the value returned by the application providing ICQ is taken.</p>
<dl class="note"><dt><b>Note:</b></dt><dd>The presence string is created based on the numerical presence value returned by the applications. It currently does not return the presence strings used by the applications.</dd></dl>
<p>The method uses cached information to make it fast and not require actually communicating with the applications every time it is called.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">uid</td><td>the KABC UID you want the presence for </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>the i18ned string describing the contact's presence or QString::null if the UID is unknown</dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classKIMProxy.html#a4e31705108604c7314635768e80828bb" title="Confirm if a given contact is known to the proxy.">isPresent()</a> </dd>
<dd>
<a class="el" href="classKIMProxy.html#a5ef08be65cd6cd53eccaad945fe2044c" title="Obtain the IM presence as a number for the specified contact.">presenceNumeric()</a> </dd>
<dd>
<a class="el" href="classKIMProxy.html#acac424488ca651eef5b2b2fa51814915" title="Obtain the icon representing the IM presence for the specified contact.">presenceIcon()</a> </dd>
<dd>
KABC::Addressee::uid() </dd></dl>

<p>Definition at line <a class="el" href="kimproxy_8cpp_source.html#l00358">358</a> of file <a class="el" href="kimproxy_8cpp_source.html">kimproxy.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="affeb58bccb6aa0b8dd79e68068d8a497"></a><!-- doxytag: member="KIMProxy::reachableContacts" ref="affeb58bccb6aa0b8dd79e68068d8a497" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="elRef" href="qstringlist.html">QStringList</a> KIMProxy::reachableContacts </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Obtain a list of IM-contacts that are currently reachable. </p>
<p>Returns a list of KABC UIDs gathered by merging the lists of each application the proxy can communicate with.</p>
<dl class="return"><dt><b>Returns:</b></dt><dd>a list of KABC UIDs who can receive a message, even if offline</dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classKIMProxy.html#a85d6a063ae44a369861e44deb2f07dc7" title="Obtain a list of IM-contacts known to IM-applications.">allContacts()</a> </dd>
<dd>
<a class="el" href="classKIMProxy.html#a154656cc1952d2e8a476d1b15eb392bf" title="Obtain a list of IM-contacts that are currently online.">onlineContacts()</a> </dd>
<dd>
<a class="el" href="classKIMProxy.html#a1d02f9f85a7f5af4162f2dec424f1b90" title="Obtain a list of IM-contacts who may receive file transfers.">fileTransferContacts()</a> </dd>
<dd>
<a class="el" href="classKIMProxy.html#a51d917c2cf1f619a1be25cc1cf08df74" title="Send a single message to the specified contact.">messageContact()</a> </dd>
<dd>
KABC::Addressee::uid() </dd></dl>

<p>Definition at line <a class="el" href="kimproxy_8cpp_source.html#l00400">400</a> of file <a class="el" href="kimproxy_8cpp_source.html">kimproxy.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="ae05a5b8eca2a84d920e56edee15c8813"></a><!-- doxytag: member="KIMProxy::registeredToDCOP" ref="ae05a5b8eca2a84d920e56edee15c8813" args="(const QCString &amp;appId)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void KIMProxy::registeredToDCOP </td>
          <td>(</td>
          <td class="paramtype">const <a class="elRef" href="qcstring.html">QCString</a> &amp;&#160;</td>
          <td class="paramname"><em>appId</em></td><td>)</td>
          <td><code> [slot]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Updates the proxy's data after a new application registered with DCOP. </p>
<p>Checks if the application specified by the given DCOP application identifier implements the instant messenger service.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">appId</td><td>the DCOP application ID of the newly registered application</td></tr>
  </table>
  </dd>
</dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="elRef" doxygen="dcop.tag:../../dcop/html/" href="../../dcop/html/classDCOPClient.html#a572dc5b8630fceabbdbc1bca314c5717">DCOPClient::applicationRegistered()</a> </dd></dl>

<p>Definition at line <a class="el" href="kimproxy_8cpp_source.html#l00266">266</a> of file <a class="el" href="kimproxy_8cpp_source.html">kimproxy.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a681583dd4d014924d0e3e7e303170ba4"></a><!-- doxytag: member="KIMProxy::sendFile" ref="a681583dd4d014924d0e3e7e303170ba4" args="(const QString &amp;uid, const KURL &amp;sourceURL, const QString &amp;altFileName=QString::null, uint fileSize=0)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void KIMProxy::sendFile </td>
          <td>(</td>
          <td class="paramtype">const <a class="elRef" href="qstring.html">QString</a> &amp;&#160;</td>
          <td class="paramname"><em>uid</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="elRef" doxygen="kdecore.tag:../../kdecore/html/" href="../../kdecore/html/classKURL.html">KURL</a> &amp;&#160;</td>
          <td class="paramname"><em>sourceURL</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="elRef" href="qstring.html">QString</a> &amp;&#160;</td>
          <td class="paramname"><em>altFileName</em> = <code>QString::null</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint&#160;</td>
          <td class="paramname"><em>fileSize</em> = <code>0</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Send a file to the contact. </p>
<p>Initiates a file transfer with the given contact if possible.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">uid</td><td>the KABC UID you want to send to </td></tr>
    <tr><td class="paramname">sourceURL</td><td>a <a class="elRef" doxygen="kdecore.tag:../../kdecore/html/" href="../../kdecore/html/classKURL.html">KURL</a> pointing to the file to send </td></tr>
    <tr><td class="paramname">altFileName</td><td>an alternate filename describing the file or a description or title </td></tr>
    <tr><td class="paramname">fileSize</td><td>file size in bytes</td></tr>
  </table>
  </dd>
</dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classKIMProxy.html#a51d917c2cf1f619a1be25cc1cf08df74" title="Send a single message to the specified contact.">messageContact()</a> </dd>
<dd>
<a class="el" href="classKIMProxy.html#a8fc8d0e966fb79156fc6d6cf1bf6b59a" title="Start a chat session with the specified contact.">chatWithContact()</a> </dd>
<dd>
<a class="el" href="classKIMProxy.html#a4e31705108604c7314635768e80828bb" title="Confirm if a given contact is known to the proxy.">isPresent()</a> </dd>
<dd>
<a class="el" href="classKIMProxy.html#a1d02f9f85a7f5af4162f2dec424f1b90" title="Obtain a list of IM-contacts who may receive file transfers.">fileTransferContacts()</a> </dd>
<dd>
KABC::Addressee::uid() </dd></dl>

<p>Definition at line <a class="el" href="kimproxy_8cpp_source.html#l00515">515</a> of file <a class="el" href="kimproxy_8cpp_source.html">kimproxy.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="aee11bdb993679d6974e7690c73aae442"></a><!-- doxytag: member="KIMProxy::sigContactPresenceChanged" ref="aee11bdb993679d6974e7690c73aae442" args="(const QString &amp;uid)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void KIMProxy::sigContactPresenceChanged </td>
          <td>(</td>
          <td class="paramtype">const <a class="elRef" href="qstring.html">QString</a> &amp;&#160;</td>
          <td class="paramname"><em>uid</em></td><td>)</td>
          <td><code> [signal]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Indicates that the specified IM-contact's presence changed. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">uid</td><td>the KABC UID whose presence changed</td></tr>
  </table>
  </dd>
</dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classKIMProxy.html#a4e31705108604c7314635768e80828bb" title="Confirm if a given contact is known to the proxy.">isPresent()</a> </dd>
<dd>
<a class="el" href="classKIMProxy.html#a5ef08be65cd6cd53eccaad945fe2044c" title="Obtain the IM presence as a number for the specified contact.">presenceNumeric()</a> </dd>
<dd>
<a class="el" href="classKIMProxy.html#acac424488ca651eef5b2b2fa51814915" title="Obtain the icon representing the IM presence for the specified contact.">presenceIcon()</a> </dd>
<dd>
KABC::Addressee::uid() </dd></dl>

</div>
</div>
<a class="anchor" id="a1dc56f5c66e4dbfa5ff523ec1f21dd83"></a><!-- doxytag: member="KIMProxy::sigPresenceInfoExpired" ref="a1dc56f5c66e4dbfa5ff523ec1f21dd83" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void KIMProxy::sigPresenceInfoExpired </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td><code> [signal]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Indicates that presence information obtained earlier on might not be valid any longer. </p>
<p>After the sources of presence information have changed so any previously supplied presence info is invalid. </p>

</div>
</div>
<a class="anchor" id="a6afbe30b196de30d57366a8fc9c01ee2"></a><!-- doxytag: member="KIMProxy::startPreferredApp" ref="a6afbe30b196de30d57366a8fc9c01ee2" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool KIMProxy::startPreferredApp </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Start the user's preferred IM application. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>whether a preferred app was found. No guarantee that it started correctly </dd></dl>

<p>Definition at line <a class="el" href="kimproxy_8cpp_source.html#l00558">558</a> of file <a class="el" href="kimproxy_8cpp_source.html">kimproxy.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a3f777da662e7d0e257e18c32922d93ce"></a><!-- doxytag: member="KIMProxy::stubForProtocol" ref="a3f777da662e7d0e257e18c32922d93ce" args="(const QString &amp;protocol)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">KIMIface_stub * KIMProxy::stubForProtocol </td>
          <td>(</td>
          <td class="paramtype">const <a class="elRef" href="qstring.html">QString</a> &amp;&#160;</td>
          <td class="paramname"><em>protocol</em></td><td>)</td>
          <td><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get the app stub for this protocol. </p>
<p>Take the preferred app first, then any other. </p>

<p>Definition at line <a class="el" href="kimproxy_8cpp_source.html#l00624">624</a> of file <a class="el" href="kimproxy_8cpp_source.html">kimproxy.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a5d6d1b8e5f553f16379adc6fb25880de"></a><!-- doxytag: member="KIMProxy::stubForUid" ref="a5d6d1b8e5f553f16379adc6fb25880de" args="(const QString &amp;uid)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">KIMIface_stub * KIMProxy::stubForUid </td>
          <td>(</td>
          <td class="paramtype">const <a class="elRef" href="qstring.html">QString</a> &amp;&#160;</td>
          <td class="paramname"><em>uid</em></td><td>)</td>
          <td><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get the app stub best able to reach this uid. </p>

<p>Definition at line <a class="el" href="kimproxy_8cpp_source.html#l00616">616</a> of file <a class="el" href="kimproxy_8cpp_source.html">kimproxy.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="aaaae56c3b58c99752f0bde08e97f533f"></a><!-- doxytag: member="KIMProxy::unregisteredFromDCOP" ref="aaaae56c3b58c99752f0bde08e97f533f" args="(const QCString &amp;appId)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void KIMProxy::unregisteredFromDCOP </td>
          <td>(</td>
          <td class="paramtype">const <a class="elRef" href="qcstring.html">QCString</a> &amp;&#160;</td>
          <td class="paramname"><em>appId</em></td><td>)</td>
          <td><code> [slot]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Updates the proxy's data after an application unregistered with DCOP. </p>
<p>If the application specified by the given DCOP application identifier is one of the instant messenger applications of the proxy, it will remove the presence information it gathered from it earlier on.</p>
<p>Emits <a class="el" href="classKIMProxy.html#a1dc56f5c66e4dbfa5ff523ec1f21dd83" title="Indicates that presence information obtained earlier on might not be valid any longer.">sigPresenceInfoExpired()</a> to let the using applcation know its presence related information might need updating.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">appId</td><td>the DCOP application ID of the now unregistered application</td></tr>
  </table>
  </dd>
</dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="elRef" doxygen="dcop.tag:../../dcop/html/" href="../../dcop/html/classDCOPClient.html#afd4e3a1fd898e1c29d22dc6ef505810d">DCOPClient::applicationRemoved()</a> </dd></dl>

<p>Definition at line <a class="el" href="kimproxy_8cpp_source.html#l00301">301</a> of file <a class="el" href="kimproxy_8cpp_source.html">kimproxy.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a7ab0ee40b5a45e281ae7498cff6ec954"></a><!-- doxytag: member="KIMProxy::updatePresence" ref="a7ab0ee40b5a45e281ae7498cff6ec954" args="(const QString &amp;uid, const QCString &amp;appId, int presence)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool KIMProxy::updatePresence </td>
          <td>(</td>
          <td class="paramtype">const <a class="elRef" href="qstring.html">QString</a> &amp;&#160;</td>
          <td class="paramname"><em>uid</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="elRef" href="qcstring.html">QCString</a> &amp;&#160;</td>
          <td class="paramname"><em>appId</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>presence</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Update our records with the given data. </p>

</div>
</div>
<hr/>The documentation for this class was generated from the following files:<ul>
<li><a class="el" href="kimproxy_8h_source.html">kimproxy.h</a></li>
<li><a class="el" href="kimproxy_8cpp_source.html">kimproxy.cpp</a></li>
</ul>
</div>
    </div></div>


      </td>
  </tr>
  <tr>
    <td valign="top" id="leftmenu" width="25%">
      <a name="navigation"></a>
      <div class="menu_box"><h2>interfaces</h2>
<div class="nav_list">
<ul><li><a href="index.html">Main Page</a></li><li><a href="namespaces.html">Namespace List</a></li><li><a href="hierarchy.html">Class Hierarchy</a></li><li><a href="classes.html">Alphabetical List</a></li><li><a href="annotated.html">Class List</a></li><li><a href="files.html">File List</a></li><li><a href="namespacemembers.html">Namespace Members</a></li><li><a href="functions.html">Class Members</a></li></ul>
<!--
<h2>Class Picker</h2>
<div style="text-align: center;">
<form name="guideform">
<select name="guidelinks" style="width:100%;" onChange="window.location=document.guideform.guidelinks.options[document.guideform.guidelinks.selectedIndex].value">
<option value="annotated.html">-- Choose --</option>
  <option value="classExtTerminalInterface.html">extterminalinterface</option>,  <option value="classKFileAudioPreview.html">kfileaudiopreview</option>,  <option value="classKHE_1_1BytesEditInterface.html">khe::byteseditinterface</option>,  <option value="classKHE_1_1CharColumnInterface.html">khe::charcolumninterface</option>,  <option value="classKHE_1_1ClipboardInterface.html">khe::clipboardinterface</option>,  <option value="classKHE_1_1ValueColumnInterface.html">khe::valuecolumninterface</option>,  <option value="classKHE_1_1ZoomInterface.html">khe::zoominterface</option>,  <option value="classKIMIface.html">kimiface</option>,  <option value="classKIMProxy.html">kimproxy</option>,  <option value="classKMediaPlayer_1_1Player.html">kmediaplayer::player</option>,  <option value="classKMediaPlayer_1_1View.html">kmediaplayer::view</option>,  <option value="classKRegExpEditorInterface.html">kregexpeditorinterface</option>,  <option value="classKScriptClientInterface.html">kscriptclientinterface</option>,  <option value="classKScriptInterface.html">kscriptinterface</option>,  <option value="classKScriptManager.html">kscriptmanager</option>,  <option value="classKSpeech.html">kspeech</option>,  <option value="classKSpeechSink.html">kspeechsink</option>,  <option value="classKTextEditor_1_1BlockSelectionDCOPInterface.html">ktexteditor::blockselectiondcopinterface</option>,  <option value="classKTextEditor_1_1BlockSelectionInterface.html">ktexteditor::blockselectioninterface</option>,  <option value="classKTextEditor_1_1ClipboardDCOPInterface.html">ktexteditor::clipboarddcopinterface</option>,  <option value="classKTextEditor_1_1ClipboardInterface.html">ktexteditor::clipboardinterface</option>,  <option value="classKTextEditor_1_1CodeCompletionInterface.html">ktexteditor::codecompletioninterface</option>,  <option value="classKTextEditor_1_1CompletionEntry.html">ktexteditor::completionentry</option>,  <option value="classKTextEditor_1_1ConfigInterface.html">ktexteditor::configinterface</option>,  <option value="classKTextEditor_1_1ConfigInterfaceExtension.html">ktexteditor::configinterfaceextension</option>,  <option value="classKTextEditor_1_1Cursor.html">ktexteditor::cursor</option>,  <option value="classKTextEditor_1_1CursorInterface.html">ktexteditor::cursorinterface</option>,  <option value="classKTextEditor_1_1Document.html">ktexteditor::document</option>,  <option value="classKTextEditor_1_1DocumentInfoDCOPInterface.html">ktexteditor::documentinfodcopinterface</option>,  <option value="classKTextEditor_1_1DocumentInfoInterface.html">ktexteditor::documentinfointerface</option>,  <option value="classKTextEditor_1_1DynWordWrapInterface.html">ktexteditor::dynwordwrapinterface</option>,  <option value="classKTextEditor_1_1EditDCOPInterface.html">ktexteditor::editdcopinterface</option>,  <option value="classKTextEditor_1_1EditInterface.html">ktexteditor::editinterface</option>,  <option value="classKTextEditor_1_1EditInterfaceExt.html">ktexteditor::editinterfaceext</option>,  <option value="classKTextEditor_1_1Editor.html">ktexteditor::editor</option>,  <option value="classKTextEditor_1_1EncodingDCOPInterface.html">ktexteditor::encodingdcopinterface</option>,  <option value="classKTextEditor_1_1EncodingInterface.html">ktexteditor::encodinginterface</option>,  <option value="classKTextEditor_1_1HighlightingInterface.html">ktexteditor::highlightinginterface</option>,  <option value="classKTextEditor_1_1MarkInterface.html">ktexteditor::markinterface</option>,  <option value="classKTextEditor_1_1MarkInterfaceExtension.html">ktexteditor::markinterfaceextension</option>,  <option value="classKTextEditor_1_1Plugin.html">ktexteditor::plugin</option>,  <option value="classKTextEditor_1_1PluginViewInterface.html">ktexteditor::pluginviewinterface</option>,  <option value="classKTextEditor_1_1PopupMenuInterface.html">ktexteditor::popupmenuinterface</option>,  <option value="classKTextEditor_1_1PrintDCOPInterface.html">ktexteditor::printdcopinterface</option>,  <option value="classKTextEditor_1_1PrintInterface.html">ktexteditor::printinterface</option>,  <option value="classKTextEditor_1_1SearchDCOPInterface.html">ktexteditor::searchdcopinterface</option>,  <option value="classKTextEditor_1_1SearchInterface.html">ktexteditor::searchinterface</option>,  <option value="classKTextEditor_1_1SelectionDCOPInterface.html">ktexteditor::selectiondcopinterface</option>,  <option value="classKTextEditor_1_1SelectionExtDCOPInterface.html">ktexteditor::selectionextdcopinterface</option>,  <option value="classKTextEditor_1_1SelectionInterface.html">ktexteditor::selectioninterface</option>,  <option value="classKTextEditor_1_1SelectionInterfaceExt.html">ktexteditor::selectioninterfaceext</option>,  <option value="classKTextEditor_1_1SessionConfigInterface.html">ktexteditor::sessionconfiginterface</option>,  <option value="classKTextEditor_1_1TemplateInterface.html">ktexteditor::templateinterface</option>,  <option value="classKTextEditor_1_1TextHintInterface.html">ktexteditor::texthintinterface</option>,  <option value="classKTextEditor_1_1UndoDCOPInterface.html">ktexteditor::undodcopinterface</option>,  <option value="classKTextEditor_1_1UndoInterface.html">ktexteditor::undointerface</option>,  <option value="classKTextEditor_1_1VariableInterface.html">ktexteditor::variableinterface</option>,  <option value="classKTextEditor_1_1View.html">ktexteditor::view</option>,  <option value="classKTextEditor_1_1ViewCursorDCOPInterface.html">ktexteditor::viewcursordcopinterface</option>,  <option value="classKTextEditor_1_1ViewCursorInterface.html">ktexteditor::viewcursorinterface</option>,  <option value="classKTextEditor_1_1ViewStatusMsgDCOPInterface.html">ktexteditor::viewstatusmsgdcopinterface</option>,  <option value="classKTextEditor_1_1ViewStatusMsgInterface.html">ktexteditor::viewstatusmsginterface</option>,  <option value="classKTextEditor_1_1WordWrapInterface.html">ktexteditor::wordwrapinterface</option>,  <option value="classScriptLoader.html">scriptloader</option>,  <option value="classTerminalInterface.html">terminalinterface</option>,
</select>
</form>
</div>
-->
</div></div>
<div class="menu_box"><h2>API Dox</h2>
<div class="nav_list">
<ul>
<li><a href="../../arts/html/index.html">arts</a></li><li><a href="../../dcop/html/index.html">dcop</a></li><li><a href="../../dnssd/html/index.html">dnssd</a></li><li><a href="../../interfaces/html/index.html">interfaces</a></li><li>&nbsp;&nbsp;&nbsp;&nbsp;<a href="../../interfaces/kimproxy/interface/html/index.html">interface</a></li><li>&nbsp;&nbsp;&nbsp;&nbsp;<a href="../../interfaces/kimproxy/library/html/index.html">library</a></li><li>&nbsp;&nbsp;<a href="../../interfaces/kspeech/html/index.html">kspeech</a></li><li>&nbsp;&nbsp;<a href="../../interfaces/ktexteditor/html/index.html">ktexteditor</a></li><li><a href="../../kabc/html/index.html">kabc</a></li><li><a href="../../kate/html/index.html">kate</a></li><li><a href="../../kcmshell/html/index.html">kcmshell</a></li><li><a href="../../kdecore/html/index.html">kdecore</a></li><li><a href="../../kded/html/index.html">kded</a></li><li><a href="../../kdefx/html/index.html">kdefx</a></li><li><a href="../../kdeprint/html/index.html">kdeprint</a></li><li><a href="../../kdesu/html/index.html">kdesu</a></li><li><a href="../../kdeui/html/index.html">kdeui</a></li><li><a href="../../kdoctools/html/index.html">kdoctools</a></li><li><a href="../../khtml/html/index.html">khtml</a></li><li><a href="../../kimgio/html/index.html">kimgio</a></li><li><a href="../../kinit/html/index.html">kinit</a></li><li><a href="../../kio/html/index.html">kio</a></li><li>&nbsp;&nbsp;<a href="../../kio/bookmarks/html/index.html">bookmarks</a></li><li>&nbsp;&nbsp;<a href="../../kio/httpfilter/html/index.html">httpfilter</a></li><li>&nbsp;&nbsp;<a href="../../kio/kfile/html/index.html">kfile</a></li><li>&nbsp;&nbsp;<a href="../../kio/kio/html/index.html">kio</a></li><li>&nbsp;&nbsp;<a href="../../kio/kioexec/html/index.html">kioexec</a></li><li>&nbsp;&nbsp;<a href="../../kio/kpasswdserver/html/index.html">kpasswdserver</a></li><li>&nbsp;&nbsp;<a href="../../kio/kssl/html/index.html">kssl</a></li><li><a href="../../kioslave/html/index.html">kioslave</a></li><li>&nbsp;&nbsp;<a href="../../kioslave/http/html/index.html">http</a></li><li><a href="../../kjs/html/index.html">kjs</a></li><li><a href="../../kmdi/html/index.html">kmdi</a></li><li>&nbsp;&nbsp;<a href="../../kmdi/kmdi/html/index.html">kmdi</a></li><li><a href="../../knewstuff/html/index.html">knewstuff</a></li><li><a href="../../kparts/html/index.html">kparts</a></li><li><a href="../../kresources/html/index.html">kresources</a></li><li><a href="../../kspell2/html/index.html">kspell2</a></li><li><a href="../../kunittest/html/index.html">kunittest</a></li><li><a href="../../kutils/html/index.html">kutils</a></li><li><a href="../../kwallet/html/index.html">kwallet</a></li><li><a href="../../libkmid/html/index.html">libkmid</a></li><li><a href="../../libkscreensaver/html/index.html">libkscreensaver</a></li>
</ul></div></div>


        </td>
</tr>
</table>

<span class="doNotDisplay">
  <a href="http://www.kde.org/" accesskey="8">KDE Home</a> |
  <a href="http://accessibility.kde.org/" accesskey="9">KDE Accessibility Home</a> |
  <a href="http://www.kde.org/media/accesskeys.php" accesskey="0">Description of Access Keys</a>
</span>


<div style="height: 8px"></div>

<div id="footer">
  <div id="footer_left">
    Maintained by <a href="&#109;&#97;&#105;&#108;&#116;&#111;&#58;groo&#116;&#64;kde&#46;or&#x67;">Adriaan de Groot</a>
and
<a href="&#109;a&#105;&#108;&#116;&#111;&#58;w&#105;nter&#64;kde&#46;or&#x67">Allen Winter</a>.
<br/>
    KDE and K Desktop Environment are trademarks of <a href="http://www.kde.org/areas/kde-ev/" title="Homepage of the KDE non-profit Organization">KDE e.V.</a> |
    <a href="http://www.kde.org/contact/impressum.php">Legal</a>
  </div>
  <div id="footer_right"><img src="/media/images/footer_right.png" style="margin: 0px" alt="" /></div>
</div>

<!--
WARNING: DO NOT SEND MAIL TO THE FOLLOWING EMAIL ADDRESS! YOU WILL
BE BLOCKED INSTANTLY AND PERMANENTLY!
<a href="mailto:aaaatrap-425acc3b5374943f@kde.org">Block me</a>
WARNING END
-->

</body>
</html>