| Issue 104: | ICQ buddies shown like uin@service instead of by nickname | |
| Back to list |
Posted by guest at 2006-02-16 18:28:06
(Observed using the Pandion 2.5 client and Wildfire 2.4.4 server)
My MSN contacts (via PyMSN-t) are shown in the contact list using their
Nicknames, not their JIDs. Why isn't it like this with my ICQ contacts?
I noticed a difference in how the initial <presence> (how about other?)
message is sent. From PyICQ-t I get:
<presence to="foo@bar.se/Gaim"
from="1111111@icq.bar.se">
<x xmlns="vcard-temp:x:update">
<photo>e94a929adb0da7821529d9844ea3269ec426d59f</photo>
</x>
<x xmlns="jabber:x:avatar">
<hash>e94a929adb0da7821529d9844ea3269ec426d59f</hash>
</x>
<c xmlns="http://jabber.org/protocol/caps"
node="http://pyicq-t.blathersource.org/protocol/caps"
ver="0.7"/>
</presence>
...whereas from PyMSN-t the vcard-temp:x:update contains a NICKNAME element:
<presence to="foo@bar.se"
from="nisse%hult.com@msn.bar.se">
<x xmlns="vcard-temp:x:update">
<photo>903a6f593329077a92a85c9f5b82b8b7df5e5cdf</photo>
<nickname>Nisse Hult</nickname>
</x>
<x xmlns="jabber:x:avatar">
<hash>903a6f593329077a92a85c9f5b82b8b7df5e5cdf</hash>
</x>
<c xmlns="http://jabber.org/protocol/caps"
node="http://msn-transport.jabberstudio.org/protocol/caps"
ver="0.10.3"/>
</presence>
Posted by jadestorm at 2006-02-16 23:21:21
Because nicknames are easier in MSN land. ;) I have very minor nickname
support in there right now but it's not even remotely extensive. It's on my
todo list to try to work out something better though. (I believe I have to
do a
full-on lookup on the user to get this information, but I'm not certain)
Anyway, I'm going to transfer this over to a feature request . . . once I get
that functionality working on blathersource.
Posted by guest at 2006-02-17 10:27:35
YOU DA MAN jadestrom!
-- Conny
Posted by guest at 2006-02-21 12:35:51
Hi jadestrom
My name is John. I just wonder if you have made any prograss in the Nickname
Issue??
Can one user the code above as a temporary solution? If yes, in what file dose
it need to be entered?
Thank you
John
Posted by jadestorm at 2006-02-21 12:47:36
Not yet! (haven't really had time to mess with it) I'm not sure what code you
are referring to. =) The only "code" I see above is a dump of
communication.
It's one of those things that should be easy so I just need to "do
it". I was actually planning on investigating exactly what a real icq
client does. (ie, if they do a full lookup every time or if there's a
quick and
small way to ask for a nickname)
Posted by jadestorm at 2006-02-21 12:48:35
I've actually been spending a little bit of time lately on infrastructure
stuff.
(Switching my documentation over to a Wiki for ease of maintenance and
such ...
should help me actually keep things up to date. lol)
Posted by guest at 2006-02-21 12:54:57
:-D yes i konw what you mean
Yes i ment the "dump of
communication" LOL . Well jadestorm, i am no expert in this, but as for me
the most easy way seems to me, that at every now creation of a
"accout" your code would automatically get each vCard of the conntacts
an slice out the NICKNAME, no??
Cheers
John
Posted by guest at 2006-02-21 13:10:23
Hi jadestrom
My name is John. I just wonder if you have made any prograss in the Nickname
Issue??
Can one user the code above as a temporary solution? If yes, in what file dose
it need to be entered?
Thank you
John
Posted by guest at 2006-02-21 13:10:28
Hi jadestrom
My name is John. I just wonder if you have made any prograss in the Nickname
Issue??
Can one user the code above as a temporary solution? If yes, in what file dose
it need to be entered?
Thank you
John
Posted by guest at 2006-02-21 13:11:23
Damn , sorry the "spam" , i did refresh's here!
john
Posted by jadestorm at 2006-02-21 14:22:34
No problem =) I need to "do something about that", but it hasn't
bugged me enough yet. ;D
Well, the nickname fix is next on my list of things to make work. Getting the
vCard is "effecttively" what I think I'm going to do . . . -unless-
there's a better way. The information probe is somewhat extensive that
gets all
the fields for vCards, and all we want is a minimal amount of information . . .
. . . of course, if I cache the vCard information then getting it all up front
might be a good thing. *ponder* Lot to think about here. All in all, the
real
icq client does "something" to get this, and there may be a call
that's "give me the nickname" instead of "give me all info",
which would be far less intensive.
Posted by guest at 2006-02-21 15:05:16
cool jadestorm!!!
If that can motivate you, i am real HOT on getting that done!!
a 1. offer, i'll try to find out if there is a "single comand" that
ICQ dose to get the nickname.
i'll get back to you if i do find it, what you say ;-)
Cheers
john
Posted by guest at 2006-02-25 18:59:09
Hi jadestorm
Howdy? i was real serouse about getting the infos you might need for the
nickname issue.
I am on it now :-)
Would be good if i could ask you some questions about how and what.
my email is mentalmassage (at) bluewin (dot) ch.
If you feel comfortable in mailing send me you corespondency email so would
make
that mabe work.
help me let you help you help us all!! :-)
Cheer
john
Posted by jadestorm at 2006-02-27 15:27:03
Hi John! I've ben investigating the problem and well, so far I'm having
problems figuring out why it's not working. ;D See, there is a nickname that
can be attached to entries in your server side buddy list (SSI) that is
what you
are wanting. I thought maybe the real ICQ client was looking up this
information in a nifty way but I was sadly mistaken. It actually
"cheats" a tad. It looks up the user when it's adding them to your
buddy roster. (in the real client's case, it does this by forcing you to
"search for the user" first, cute huh?) Gaim, I believe, looks up the
user on the fly when you add a new person. Similar in style, just implemented
different. So long story short, neither client looks up nicknames on the fly,
they store them in your buddy list and use that.
So this brings up a problem. Obviously I want to get the nickname into the
SSI.
What I -should- do is, on an 'add to roster', look up the user and pull their
nickname and store that in the SSI as I add the new entry. That might get
complex and possibly hinder things, so I'm thinking about doing this another
route. What I might so is, after a user is successfully added, THEN look up
their information and modify the SSI accordingly. Likewise, I'll store the
nickname on my end and send that back to the jabber client.
One thing I definitely do not know is... what happens if I go and change my
nickname while you are talking to me? Like I wonder if ICQ lets me know or
if I
am to find it out the hard way some other time when I look the user up.
Lot to think about here, but I'll figure out a solution. Thanks for the offer
to work with me on debugging it but it turns out that I know how it's working,
just need to figure out how to tackle that.
I'm also wondering if it's possible to send back information about the user
adding you, so you have more to go by than "12345678 wants to add
you". Bah. =) I may put out a release today before working on this. I
have a lot of bugfixes that are pending that folk might be interested in.
Posted by guest at 2006-02-28 17:25:35
Hi jadestorm
Thank you for the research! Yes the thing woth the loop in a clients side is a
sulution for sure, in fact, i tested in a XML jabbe consol against the servers.
That's what i did:
i made a normal registration to the transport, as usual.
manualy, if i'd not know the nicks of my users i'd get vcard and than change
the nickname. So to test the server and it's reaction i set the whole XML
command inc all chages into the console and it did change all nicks at once.
So assume, i'd make a client (like GAIM?) that would do the job from for the
user i'd programm it that way to make calls of the vCards automaticlyand ripp
out all the <NICKNAME> of each and vCard call and make the set statement.
If we look at the common servers and clients thy allway go and check if the
nick
field has a value, if not so it shows the JID in the roster. The thing is that,
as you say if the transport dose that it has to send that back to the
server the
way it understands it i think "in form of a XMPP statement".
If you, like i tested, just make a entry in a database or xml, common servers
might not react to this, speak, the clients roster dose not change the entry in
your roster.
if you'd use the spool i also don't think we have much more luck.
my question is, can you trigger from a transport XMPP statements as if there
where from the client? cose it obviosly seems like (at least to my tests) that
the only " legal" approach for all parties is that it's a clients
choise to set what ever name a conntact in the roster should be..
BTW, according to a programmer i know the vCard loop (and ICQ is alots yes)
should not be a big resource problem.
I am not a big expert and but i am definitly gonna stick on it and come back
with more stuff... (and to check what's new LOL )
makes sense?
DE?
Cheers John
Posted by jadestorm at 2006-03-06 02:40:21
I got nickname support basically working, but I can not figure out whether I'm
happy with the functionality. =D It doesn't seem to work exactly like I'd
expect. (the updateNickname stuff in Psi) Either way, nicknames are now bring
propagated.
May 27, 2008
#1
florian....@gmail.com
Jul 1, 2008
seems like project died
Dec 12, 2008
Please reopen ticket if error happens again
Status:
WontFix
Owner: --- |