[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kopete-devel
Subject:    Re: Review Request: Fix overwrite of manually chosen nicknames
From:       Pali_Rohár <pali.rohar () gmail ! com>
Date:       2012-01-05 19:28:59
Message-ID: 20120105192859.28565.76264 () vidsolbach ! de
[Download RAW message or body]

[Attachment #2 (multipart/alternative)]


> On Nov. 9, 2011, 3:01 p.m., Pali Rohár wrote:
> > Your patch disable updating nickname of all contacts from jabber server. This is \
> > bad because some people want to autoupdate new nicknames from server. Instead \
> > totally disabling this functions, it should be configurable (in jabber account \
> > settings dialog).
> 
> Ralf Jung wrote:
> Actually, Kopete already has a per-contact setting saying whether the local or \
> remote name should be used. The code should adhere to that setting. 
> Btw, you filled the "Bugs" field in the request incorrectly. It must contain just \
> the bug ID, not the whole URL. 
> Cyberbeat wrote:
> I don't think, that I disable updating of nicknames of contacts from jabber server.
> 
> To explain the problem from the GUI perspective:
> 
> - Right-Click a metacontact and choose its "properties"
> - There you can choose, where to take it's displayname from, there are 3 \
> possibilities: a) take displayname from adressebook (KABC)
> b) take displayname from a protocol (you can choose, which)
> c) define a custom displayname (which really should NEVER be overwritten by some \
> protocols!) 
> The displayname for contacts should only be updated from server for case b), which \
> is the standard. 
> For my test-contact I have chosen a custom displayname c)
> This displayname is overwritten each time I connect to the jabber server.
> This can be considered as a bug.
> 
> 
> 
> More technically from the code perspective:
> 
> In kopetemetacontact.cpp there is a method "displayName()", which is used in the \
> contact list, and which returns the displayname from the configured ressource (a,b \
> or c from above). Standard ressource is b). The member-variable "displayname" \
> represents the "custom display name", which is also only returned, if c) is the \
> ressource. 
> If I understood something wrong, please explain to me :-)
> 
> Olivier Goffart wrote:
> > b) take displayname from a protocol (you can choose, which)
> 
> That is the nickname set by the contact himself (that is, for jabber, the nickname \
> in the vcard) 
> > c) define a custom displayname (which really should NEVER be overwritten by
> > some protocols!)
> 
> Yes it should.
> This name should be synchronized with the name you chosen.
> 
> > For my test-contact I have chosen a custom displayname c)
> > This displayname is overwritten each time I connect to the jabber server.
> > This can be considered as a bug.
> 
> When setting c), it should also write the displayname on the jabber server.
> If it do not, the bug is there.
> 
> The rationale is that if you have two jabber clients, the name stay in sync.
> 
> 
> Cyberbeat wrote:
> Thanks for the clarification.
> 
> I didn't know that I could save my own custom nicknames on jabber server. Is this a \
> feature, every jabber server MUST implement? And, if not, should the client get \
> feedback, if saving was successfull? 
> I think it is important now, to be sure, where the bug occurs: on kopete or the \
> server. Can someone with knowledge of XMPP give an answer? 
> The server I talk about, is facebook. I know, that facebook only implements parts \
> of XMPP. And if facebook does not apply to the standard, there are only two options \
> for kopete: 
> a) make an option for jabber like Pali suggests
> b) clone XMPP protocol and adapt it for facebook
> 
> I would prefer solution a) :-)
> 
> But if facebook only does not support an optional feature and handles things like \
> the specification, then kopete should make its jabber protocol implementation more \
> robust. 
> I think it is important to have good support for facebook, since I believe, it is \
> the (with great advance) most popular "xmpp" server, so many people suffer from \
> these problems. 
> 
> Cyberbeat wrote:
> Since noone answered for two weeks, I will go for solution a) without being sure \
> about my above questions. I really expect that that solution will be accepted in \
> principle, else please say stop _now_, because this will be a lot of work. 
> Cyberbeat wrote:
> I have now looked a bit into the XMPP RFCs and the kopete-xmpp-xml-console. What \
> happens when I rename a contact: 
> <iq type="set" id="af1ca">
> <query xmlns="jabber:iq:roster">
> <item name="mycontactsnewname" jid="-123123123@chat.facebook.com">
> <group>aaa</group>
> </item>
> </query>
> </iq>
> 
> <iq from="mynick@chat.facebook.com" type="error" \
> to="mynick@chat.facebook.com/Kopete_xxxxx" id="af1ca"> <query \
> xmlns="jabber:iq:roster"> <item name="mycontactsnewname" \
> jid="-123123123@chat.facebook.com"> <group>aaa</group>
> </item>
> </query>
> <error type="cancel" code="501">
> <feature-not-implemented xmlns="urn:ietf:params:xml:ns:xmpp-stanzas"/>
> </error>
> </iq>
> 
> So the server returns an error, which seems to be ok from the specification. So now \
> I think I can really consider the kopete behaviour as a bug. In its current state \
> kopete should have had to deny the renaming of the contact and display an error. 
> So an option in xmpp config option like "Do you like your custom names for your \
> contacts be overwritten from the server?" yes/no  like I plan to do, seems to be a \
> fine solution. 
> Pali Rohár wrote:
> Instead hacking this problem with config option it should be fixed in jabber plugin \
> / libiris library (return error when renaming failed)... 
> As I understand your patch correctly, it only disable this code in updateContact \
> (which is called by jabber when contact on server has been changed) \
> metaContact()->setDisplayName ( item.name () ); 
> I think that updateContact() function should update only displayname of *this \
> KopeteContact (JabberBaseContact). Not metaContact()! 
> Sorry for first info. Now I looked into jabber code and you are right. In my \
> opinion proper fix should be deleting lines 109-121. It is really not needed, \
> because kopete show displayname of metacontact from config dialog (and here you can \
> set my own string or displayname of attached contact). Can you test if deleting \
> these lines fix your problem and also if does not break anything else? 
> Cyberbeat wrote:
> Since deleting the lines or adding "false" is semantically the same, I can say, \
> that I had no problems with this. 
> What makes me now thinking is: 
> 
> With jabber we seem to have an additional nickname-source, because nickname can be \
> a) the original contacts name, b) the custom name stored on the server (which for \
> example could also have been set from the same user but from another client than \
> kopete), and c) the local-kopete-custom-nickname. 
> I as a (normal average) user thought about "custom nickname" always as a local \
> nickname. This thinking would not allow kopete to do anything special with \
> nicknames on the server from that meta-contacts-dialog. There is also the \
> possibility to open a "vcard" for jabber protocol, but I cannot edit that for my \
> facebook-contacts, and cannot even receive one for my other jabber account's \
> contacts (only one..). What does editing and saving of that do? Would it be better, \
> to use that jabber-specific dialog for custom nicknames? 
> May I commit the deletion of the lines to trunk now? And maybe also for 4.7 branch? \
> Nontheless I wish someone else with more "normal" jabber servers/contacts than me \
> would test my patch. 
> btw. next feature I plan for kopete is inline metacontacts-renaming (F2 shortcut).
> 
> Pali Rohár wrote:
> If user set custom name for metacontact, kopete (or plugin) should try to update \
> this custom name on server too (if server support it). And if on server was contact \
> name changed, kopete should update that display name for that contact (but not \
> metacontact!). If metacontact was set to use display name from that contact, kopete \
> (not plugin!) will update it in visible contact list too. 
> I agree with deleting that lines in trunk. (Please update patch before commiting). \
> But not 4.7 - it is stable, so only bug fix changes - and this patch change default \
> behaviour of jabber protocol and some users may will have problems... 
> Olivier Goffart wrote:
> I don't know if it is a feature they MUST support, but i think so.
> In any case, considering how important is the facebook server, i think it is worth \
> workarounding the fact that the facebook server do not keep the name. I don't know \
> exactly how this can be done, a bit of reverse engeenering should show what the \
> server reply when Kopete tries to change the name of contact. Else maybe doing a \
> request to see if the name was changed.  In the worst case, check for \
> "facebook.com" in the jid. 
> Olivier Goffart wrote:
> Ok, turns out my previous message was still pending in reviewboard for a long time. \
>  
> Pali, the name of the contact in the jabber roster should be in sync with the \
> metacontact's display name (not contact display name) The KopeteContact \
> (jabberBaseContact)'s name is in sync with the jabber nickname of the contact \
> fetched from the vcard, or from the nickname extention. 
> In other word: the KopeteContact name is the nickname, chosen by the contact \
> himself,  while the metacontact name is the name chosen by the user. So if i \
> connect from another computer using Kopete, the names should stay in sync. 
> The problem here is that the server do not support a very basic feature.
> 
> So the lines must be disabled only if the server do not support updating the names.
> This should not be a config option, but automatically detected. (so in practice it \
> would be an option store in the config file, but not shown to the user. That option \
> would be turned when receiving the error from the jabber server) 
> 
> Cyberbeat wrote:
> But what, if I have grouped several protocols per contact (isn't that the main \
> reason for "meta"-contacts? I do that for many of my contacts with up to 3 \
> protocols per contact..)? Then the jabber server is allowed to override my custom \
> name which I choosed for the contact for all these protocols? Why? I don't see the \
> logic there. 
> Olivier Goffart wrote:
> If you grouped contact from several accounts, if they are the same person, you want \
> to group them under the same name. 
> This remember a discussion in the xmpp standard list when someone tried to make an \
> extention to the protocol for metacontact, thatit was not necessery, as client \
> could just group contact with the same name together (hence the name bind the \
> metacontact) Kopete 0.12 did that (grouping the contact with the same name under \
> the same metacontact), but somehow now it does not do it anymore. 
> The point is, yes, the jabber server is allowed to overide 'your' custom name that \
> you choose,  because in theory, that new name would be the one that you choose from \
> another client, and thus just syncing (so if you change the name in your work \
> computer, it also changes in your home computer) 
> Now, the bug is that the facebook server do not support this feature, so a \
> workaround must be made, but i don't think one should break the syncing for working \
> servers. 
> Pali Rohár wrote:
> @Olivier Goffart:
> AFAIK no other protocols changing metacontact display name (expect jabber). They \
> changing only display name of protocol contact (which is part of some metacontact). \
> Each metacontact can be configured how to obtain display name. One option is from \
> specified protocol contact, one is from KABC and one is user specified string. I \
> think that jabber protocol should not change display name of metacontact - only \
> display name of jabber contact. All what you wrote is correct for jabber contact, \
> but not to grupped metacontact. Jabber protocol can still change display name of \
> jabber contact (with this patch too), but if user set that display name of \
> metacontact will be always string "ABCDEFGH", it must be always this string. If \
> user set display name to obtain from jabber contact, then kopete will reuse that \
> new changed display name of jabber contact. 
> Cyberbeat wrote:
> I updated the patch.
> 
> @Olivier Goffart: are you convinced in the meanwhile?
> 
> btw: a new patch for inline-renaming has arrived :-)
> 
> Cyberbeat wrote:
> hey, I would like to keep the discussion alive, until we all agree :-)
> 
> Cyberbeat wrote:
> may I commit or should I fork kopete?

Nobody is against, no responce for 1 month, so commit this patch.


- Pali


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://svn.reviewboard.kde.org/r/6823/#review10461
-----------------------------------------------------------


On Dec. 3, 2011, 1:30 p.m., Cyberbeat wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> http://svn.reviewboard.kde.org/r/6823/
> -----------------------------------------------------------
> 
> (Updated Dec. 3, 2011, 1:30 p.m.)
> 
> 
> Review request for Kopete.
> 
> 
> Description
> -------
> 
> This patch fixes the bug, that the jabber protocol overwrites manually given \
> nicknames each time kopete connects. 
> 
> This addresses bug 274175.
> https://bugs.kde.org/show_bug.cgi?id=274175
> 
> 
> Diffs
> -----
> 
> /trunk/KDE/kdenetwork/kopete/protocols/jabber/jabberbasecontact.cpp 1267114 
> 
> Diff: http://svn.reviewboard.kde.org/r/6823/diff/diff
> 
> 
> Testing
> -------
> 
> I used kopete several weeks with icq, jabber, msn protocol together with my patch, \
> and did not notice any problems. The wrong behaviour is fixed. 
> 
> Thanks,
> 
> Cyberbeat
> 
> 


[Attachment #5 (text/html)]

<html>
 <body>
  <div style="font-family: Verdana, Arial, Helvetica, Sans-Serif;">
   <table bgcolor="#f9f3c9" width="100%" cellpadding="8" style="border: 1px #c9c399 \
solid;">  <tr>
     <td>
      This is an automatically generated e-mail. To reply, visit:
      <a href="http://svn.reviewboard.kde.org/r/6823/">http://svn.reviewboard.kde.org/r/6823/</a>
  </td>
    </tr>
   </table>
   <br />





<blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: \
10px;">  <p style="margin-top: 0;">On November 9th, 2011, 3:01 p.m., <b>Pali \
Rohár</b> wrote:</p>  <blockquote style="margin-left: 1em; border-left: 2px solid \
#d0d0d0; padding-left: 10px;">  <pre style="white-space: pre-wrap; white-space: \
-moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: \
break-word;">Your patch disable updating nickname of all contacts from jabber server. \
This is bad because some people want to autoupdate new nicknames from server. Instead \
totally disabling this functions, it should be configurable (in jabber account \
settings dialog).</pre>  </blockquote>




 <p>On November 9th, 2011, 7:07 p.m., <b>Ralf Jung</b> wrote:</p>
 <blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: \
10px;">  <pre style="white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: \
-pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">Actually, Kopete already \
has a per-contact setting saying whether the local or remote name should be used. The \
code should adhere to that setting.

Btw, you filled the &quot;Bugs&quot; field in the request incorrectly. It must \
contain just the bug ID, not the whole URL.</pre>  </blockquote>





 <p>On November 9th, 2011, 11:09 p.m., <b>Cyberbeat</b> wrote:</p>
 <blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: \
10px;">  <pre style="white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: \
-pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">I don&#39;t think, that \
I disable updating of nicknames of contacts from jabber server.

To explain the problem from the GUI perspective:

- Right-Click a metacontact and choose its &quot;properties&quot;
- There you can choose, where to take it&#39;s displayname from, there are 3 \
possibilities: a) take displayname from adressebook (KABC)
b) take displayname from a protocol (you can choose, which)
c) define a custom displayname (which really should NEVER be overwritten by some \
protocols!)

The displayname for contacts should only be updated from server for case b), which is \
the standard.

For my test-contact I have chosen a custom displayname c)
This displayname is overwritten each time I connect to the jabber server.
This can be considered as a bug.



More technically from the code perspective:

In kopetemetacontact.cpp there is a method &quot;displayName()&quot;, which is used \
in the contact list, and which returns the displayname from the configured ressource \
(a,b or c from above). Standard ressource is b). The member-variable \
&quot;displayname&quot; represents the &quot;custom display name&quot;, which is also \
only returned, if c) is the ressource.

If I understood something wrong, please explain to me :-)</pre>
 </blockquote>





 <p>On November 10th, 2011, 8:40 a.m., <b>Olivier Goffart</b> wrote:</p>
 <blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: \
10px;">  <pre style="white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: \
-pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">&gt; b) take displayname \
from a protocol (you can choose, which)

That is the nickname set by the contact himself (that is, for jabber, the nickname in \
the vcard)

&gt; c) define a custom displayname (which really should NEVER be overwritten by
&gt; some protocols!)

Yes it should.
This name should be synchronized with the name you chosen.

&gt; For my test-contact I have chosen a custom displayname c)
&gt; This displayname is overwritten each time I connect to the jabber server.
&gt; This can be considered as a bug.

When setting c), it should also write the displayname on the jabber server.
If it do not, the bug is there.

The rationale is that if you have two jabber clients, the name stay in sync.
</pre>
 </blockquote>





 <p>On November 10th, 2011, 2:14 p.m., <b>Cyberbeat</b> wrote:</p>
 <blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: \
10px;">  <pre style="white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: \
-pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">Thanks for the \
clarification.

I didn&#39;t know that I could save my own custom nicknames on jabber server. Is this \
a feature, every jabber server MUST implement? And, if not, should the client get \
feedback, if saving was successfull?

I think it is important now, to be sure, where the bug occurs: on kopete or the \
server. Can someone with knowledge of XMPP give an answer?

The server I talk about, is facebook. I know, that facebook only implements parts of \
XMPP. And if facebook does not apply to the standard, there are only two options for \
kopete:

a) make an option for jabber like Pali suggests
b) clone XMPP protocol and adapt it for facebook

I would prefer solution a) :-)

But if facebook only does not support an optional feature and handles things like the \
specification, then kopete should make its jabber protocol implementation more \
robust.

I think it is important to have good support for facebook, since I believe, it is the \
(with great advance) most popular &quot;xmpp&quot; server, so many people suffer from \
these problems. </pre>
 </blockquote>





 <p>On November 24th, 2011, 4:23 p.m., <b>Cyberbeat</b> wrote:</p>
 <blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: \
10px;">  <pre style="white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: \
-pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">Since noone answered for \
two weeks, I will go for solution a) without being sure about my above questions. I \
really expect that that solution will be accepted in principle, else please say stop \
_now_, because this will be a lot of work.</pre>  </blockquote>





 <p>On November 24th, 2011, 5:08 p.m., <b>Cyberbeat</b> wrote:</p>
 <blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: \
10px;">  <pre style="white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: \
-pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">I have now looked a bit \
into the XMPP RFCs and the kopete-xmpp-xml-console. What happens when I rename a \
contact:

&lt;iq type=&quot;set&quot; id=&quot;af1ca&quot;&gt;
&lt;query xmlns=&quot;jabber:iq:roster&quot;&gt;
&lt;item name=&quot;mycontactsnewname&quot; \
jid=&quot;-123123123@chat.facebook.com&quot;&gt; &lt;group&gt;aaa&lt;/group&gt;
&lt;/item&gt;
&lt;/query&gt;
&lt;/iq&gt;

&lt;iq from=&quot;mynick@chat.facebook.com&quot; type=&quot;error&quot; \
to=&quot;mynick@chat.facebook.com/Kopete_xxxxx&quot; id=&quot;af1ca&quot;&gt; \
&lt;query xmlns=&quot;jabber:iq:roster&quot;&gt; &lt;item \
name=&quot;mycontactsnewname&quot; jid=&quot;-123123123@chat.facebook.com&quot;&gt; \
&lt;group&gt;aaa&lt;/group&gt; &lt;/item&gt;
&lt;/query&gt;
&lt;error type=&quot;cancel&quot; code=&quot;501&quot;&gt;
&lt;feature-not-implemented \
xmlns=&quot;urn:ietf:params:xml:ns:xmpp-stanzas&quot;/&gt; &lt;/error&gt;
&lt;/iq&gt;

So the server returns an error, which seems to be ok from the specification. So now I \
think I can really consider the kopete behaviour as a bug. In its current state \
kopete should have had to deny the renaming of the contact and display an error.

So an option in xmpp config option like &quot;Do you like your custom names for your \
contacts be overwritten from the server?&quot; yes/no  like I plan to do, seems to be \
a fine solution.</pre>  </blockquote>





 <p>On November 24th, 2011, 5:25 p.m., <b>Pali Rohár</b> wrote:</p>
 <blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: \
10px;">  <pre style="white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: \
-pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">Instead hacking this \
problem with config option it should be fixed in jabber plugin / libiris library \
(return error when renaming failed)...

As I understand your patch correctly, it only disable this code in updateContact \
(which is called by jabber when contact on server has been changed) \
metaContact()-&gt;setDisplayName ( item.name () );

I think that updateContact() function should update only displayname of *this \
KopeteContact (JabberBaseContact). Not metaContact()!

Sorry for first info. Now I looked into jabber code and you are right. In my opinion \
proper fix should be deleting lines 109-121. It is really not needed, because kopete \
show displayname of metacontact from config dialog (and here you can set my own \
string or displayname of attached contact). Can you test if deleting these lines fix \
your problem and also if does not break anything else?</pre>  </blockquote>





 <p>On November 24th, 2011, 7:11 p.m., <b>Cyberbeat</b> wrote:</p>
 <blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: \
10px;">  <pre style="white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: \
-pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">Since deleting the lines \
or adding &quot;false&quot; is semantically the same, I can say, that I had no \
problems with this.

What makes me now thinking is: 

With jabber we seem to have an additional nickname-source, because nickname can be a) \
the original contacts name, b) the custom name stored on the server (which for \
example could also have been set from the same user but from another client than \
kopete), and c) the local-kopete-custom-nickname.

I as a (normal average) user thought about &quot;custom nickname&quot; always as a \
local nickname. This thinking would not allow kopete to do anything special with \
nicknames on the server from that meta-contacts-dialog. There is also the possibility \
to open a &quot;vcard&quot; for jabber protocol, but I cannot edit that for my \
facebook-contacts, and cannot even receive one for my other jabber account&#39;s \
contacts (only one..). What does editing and saving of that do? Would it be better, \
to use that jabber-specific dialog for custom nicknames?

May I commit the deletion of the lines to trunk now? And maybe also for 4.7 branch? \
Nontheless I wish someone else with more &quot;normal&quot; jabber servers/contacts \
than me would test my patch.

btw. next feature I plan for kopete is inline metacontacts-renaming (F2 \
shortcut).</pre>  </blockquote>





 <p>On November 24th, 2011, 10:05 p.m., <b>Pali Rohár</b> wrote:</p>
 <blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: \
10px;">  <pre style="white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: \
-pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">If user set custom name \
for metacontact, kopete (or plugin) should try to update this custom name on server \
too (if server support it). And if on server was contact name changed, kopete should \
update that display name for that contact (but not metacontact!). If metacontact was \
set to use display name from that contact, kopete (not plugin!) will update it in \
visible contact list too.

I agree with deleting that lines in trunk. (Please update patch before commiting). \
But not 4.7 - it is stable, so only bug fix changes - and this patch change default \
behaviour of jabber protocol and some users may will have problems...</pre>  \
</blockquote>





 <p>On November 25th, 2011, 8:50 a.m., <b>Olivier Goffart</b> wrote:</p>
 <blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: \
10px;">  <pre style="white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: \
-pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">I don&#39;t know if it \
is a feature they MUST support, but i think so. In any case, considering how \
important is the facebook server, i think it is worth workarounding the fact that the \
facebook server do not keep the name. I don&#39;t know exactly how this can be done, \
a bit of reverse engeenering should show what the server reply when Kopete tries to \
change the name of contact. Else maybe doing a request to see if the name was \
changed.  In the worst case, check for &quot;facebook.com&quot; in the jid.</pre>  \
</blockquote>





 <p>On November 25th, 2011, 9:02 a.m., <b>Olivier Goffart</b> wrote:</p>
 <blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: \
10px;">  <pre style="white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: \
-pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">Ok, turns out my \
previous message was still pending in reviewboard for a long time. 

Pali, the name of the contact in the jabber roster should be in sync with the \
metacontact&#39;s display name (not contact display name) The KopeteContact \
(jabberBaseContact)&#39;s name is in sync with the jabber nickname of the contact \
fetched from the vcard, or from the nickname extention.

In other word: the KopeteContact name is the nickname, chosen by the contact himself, \
while the metacontact name is the name chosen by the user. So if i connect from \
another computer using Kopete, the names should stay in sync.

The problem here is that the server do not support a very basic feature.

So the lines must be disabled only if the server do not support updating the names.
This should not be a config option, but automatically detected. (so in practice it \
would be an option store in the config file, but not shown to the user. That option \
would be turned when receiving the error from the jabber server) </pre>
 </blockquote>





 <p>On November 26th, 2011, 8:37 p.m., <b>Cyberbeat</b> wrote:</p>
 <blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: \
10px;">  <pre style="white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: \
-pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">But what, if I have \
grouped several protocols per contact (isn&#39;t that the main reason for \
&quot;meta&quot;-contacts? I do that for many of my contacts with up to 3 protocols \
per contact..)? Then the jabber server is allowed to override my custom name which I \
choosed for the contact for all these protocols? Why? I don&#39;t see the logic \
there.</pre>  </blockquote>





 <p>On November 27th, 2011, 7:57 p.m., <b>Olivier Goffart</b> wrote:</p>
 <blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: \
10px;">  <pre style="white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: \
-pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">If you grouped contact \
from several accounts, if they are the same person, you want to group them under the \
same name.

This remember a discussion in the xmpp standard list when someone tried to make an \
extention to the protocol for metacontact, thatit was not necessery, as client could \
just group contact with the same name together (hence the name bind the metacontact) \
Kopete 0.12 did that (grouping the contact with the same name under the same \
metacontact), but somehow now it does not do it anymore.

The point is, yes, the jabber server is allowed to overide &#39;your&#39; custom name \
that you choose,  because in theory, that new name would be the one that you choose \
from another client, and thus just syncing (so if you change the name in your work \
computer, it also changes in your home computer)

Now, the bug is that the facebook server do not support this feature, so a workaround \
must be made, but i don&#39;t think one should break the syncing for working \
servers.</pre>  </blockquote>





 <p>On November 27th, 2011, 8:13 p.m., <b>Pali Rohár</b> wrote:</p>
 <blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: \
10px;">  <pre style="white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: \
-pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">@Olivier Goffart: AFAIK \
no other protocols changing metacontact display name (expect jabber). They changing \
only display name of protocol contact (which is part of some metacontact). Each \
metacontact can be configured how to obtain display name. One option is from \
specified protocol contact, one is from KABC and one is user specified string. I \
think that jabber protocol should not change display name of metacontact - only \
display name of jabber contact. All what you wrote is correct for jabber contact, but \
not to grupped metacontact. Jabber protocol can still change display name of jabber \
contact (with this patch too), but if user set that display name of metacontact will \
be always string &quot;ABCDEFGH&quot;, it must be always this string. If user set \
display name to obtain from jabber contact, then kopete will reuse that new changed \
display name of jabber contact.</pre>  </blockquote>





 <p>On December 3rd, 2011, 1:33 p.m., <b>Cyberbeat</b> wrote:</p>
 <blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: \
10px;">  <pre style="white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: \
-pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">I updated the patch.

@Olivier Goffart: are you convinced in the meanwhile?

btw: a new patch for inline-renaming has arrived :-)</pre>
 </blockquote>





 <p>On December 12th, 2011, 5:48 p.m., <b>Cyberbeat</b> wrote:</p>
 <blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: \
10px;">  <pre style="white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: \
-pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">hey, I would like to \
keep the discussion alive, until we all agree :-)</pre>  </blockquote>





 <p>On January 5th, 2012, 7:25 p.m., <b>Cyberbeat</b> wrote:</p>
 <blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: \
10px;">  <pre style="white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: \
-pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">may I commit or should I \
fork kopete?</pre>  </blockquote>








</blockquote>

<pre style="white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: \
-pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">Nobody is against, no \
responce for 1 month, so commit this patch.</pre> <br />








<p>- Pali</p>


<br />
<p>On December 3rd, 2011, 1:30 p.m., Cyberbeat wrote:</p>






<table bgcolor="#fefadf" width="100%" cellspacing="0" cellpadding="8" \
style="background-image: \
url('http://svn.reviewboard.kde.org/media/rb/images/review_request_box_top_bg.png'); \
background-position: left top; background-repeat: repeat-x; border: 1px black \
solid;">  <tr>
  <td>

<div>Review request for Kopete.</div>
<div>By Cyberbeat.</div>


<p style="color: grey;"><i>Updated Dec. 3, 2011, 1:30 p.m.</i></p>






<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Description </h1>
 <table width="100%" bgcolor="#ffffff" cellspacing="0" cellpadding="10" \
style="border: 1px solid #b8b5a0">  <tr>
  <td>
   <pre style="margin: 0; padding: 0; white-space: pre-wrap; white-space: \
-moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: \
break-word;">This patch fixes the bug, that the jabber protocol overwrites manually \
given nicknames each time kopete connects.</pre>  </td>
 </tr>
</table>


<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Testing </h1>
<table width="100%" bgcolor="#ffffff" cellspacing="0" cellpadding="10" style="border: \
1px solid #b8b5a0">  <tr>
  <td>
   <pre style="margin: 0; padding: 0; white-space: pre-wrap; white-space: \
-moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: \
break-word;">I used kopete several weeks with icq, jabber, msn protocol together with \
my patch, and did not notice any problems. The wrong behaviour is fixed.</pre>  </td>
 </tr>
</table>



<div style="margin-top: 1.5em;">
 <b style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Bugs: </b>


 <a href="https://bugs.kde.org/show_bug.cgi?id=274175">274175</a>


</div>


<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Diffs</b> </h1>
<ul style="margin-left: 3em; padding-left: 0;">

 <li>/trunk/KDE/kdenetwork/kopete/protocols/jabber/jabberbasecontact.cpp <span \
style="color: grey">(1267114)</span></li>

</ul>

<p><a href="http://svn.reviewboard.kde.org/r/6823/diff/" style="margin-left: \
3em;">View Diff</a></p>




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








  </div>
 </body>
</html>



_______________________________________________
kopete-devel mailing list
kopete-devel@kde.org
https://mail.kde.org/mailman/listinfo/kopete-devel


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic