<div dir="ltr"><div>At requestHandles(), instead of calling ensureHandle(), I tried to check if it was a contact with that identifier and only in that case I would add the contact handle to the return list.<br><br>The problem is that it's not adding the contact anymore when I try to add it. It seems that to add a contact (requestSubscription()), the function requestHandles() is also being called even tough there isn't a direct call for requestHandles() inside requestSubscription().<br><br></div>I look at empathy website and there it says this (telepathy) is the list to discuss about empathy.<br><div><div class="gmail_extra"><br><div class="gmail_quote">2016-06-04 18:48 GMT-03:00 Mateus Bellomo <span dir="ltr"><<a href="mailto:mateusbellomo@gmail.com" target="_blank">mateusbellomo@gmail.com</a>></span>:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div><div><span>>
Do the other connection managers store the handles in persistent storage<br>
somehow?<br><br></span>telepahty-morse store the handles in QMap (like resiprocate) and telepathy-nonsense in a QPointer<QXmppClient> (even tough the ensure method access an UniqueHandleMap which I don't know what it is).<br><br></div>But Alexandr was helping me with that (just know I see I was sending the e-mails directly to him not to the list) and I think I didn't explain the problem clearly:<br><br><div><div><div><div>The problem is while I'm typing the identifier of a contact to add, the function requestHandles() is being called several times:<br><br></div><span>Let's say I wan to add a contact <a href="mailto:mateus2@ws.sip5060.net" target="_blank">mateus2@ws.sip5060.net</a>.
While I'm typing, the function requestHandles() is being called at
least 2 times before I hit enter so the contacts actually added would be
(possibly):<br><br></span></div>mateus2@w<br></div><a href="mailto:mateus2@ws.sip5060.net" target="_blank">mateus2@ws.sip5060.net</a><br><br></div>In this case I have a wrong list after I hit enter because there could be a lot of contacts that don't even are a real contact. This is happening because requestHandles() also call ensureHandle() which add the contact to the list.<br><br></div>and the answer of Alexandr:<span><br><br>> Empathy shows list of all known contacts. While you typing the<br>
identifier, empathy asks the CM: "is this contact valid?" CM answers:<br>
"yes, it's valid" and then Empathy adds the contact to the list. It's<br>
not the user-controllable "contact list", but something like list of<br>
contacts, referenced in current session.<br>
> I would suggest to ask Empathy devs on this regard.<br>
> IIRC KDE Telepathy works differently — it just doesn't check<br>
identifier while user typing.<div><div><br><br><div><br></div></div></div></span></div><div><div><div class="gmail_extra"><br><div class="gmail_quote">2016-06-04 18:35 GMT-03:00 Daniel Pocock <span dir="ltr"><<a href="mailto:daniel@pocock.pro" target="_blank">daniel@pocock.pro</a>></span>:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span><br>
<br>
On 04/06/16 21:51, Mateus Bellomo wrote:<br>
> I was looking to telepathy-morse [1] and telepathy-nonsense [2] and it<br>
> both don't add a new contact when requestHandles is called so I was<br>
> wondering if there is a particularity in resiprocate so we have to add a<br>
> contact when requestHandles is called.<br>
><br>
<br>
</span>Maybe I did it this way because the initial implementation of<br>
telepathy-resiprocate didn't have any persistent storage for the contacts<br>
<br>
Do the other connection managers store the handles in persistent storage<br>
somehow?<br>
<div><div>_______________________________________________<br>
telepathy mailing list<br>
<a href="mailto:telepathy@lists.freedesktop.org" target="_blank">telepathy@lists.freedesktop.org</a><br>
<a href="https://lists.freedesktop.org/mailman/listinfo/telepathy" rel="noreferrer" target="_blank">https://lists.freedesktop.org/mailman/listinfo/telepathy</a><br>
</div></div></blockquote></div><br></div>
</div></div></blockquote></div><br></div></div></div>