[Bug] MSN Contacts are all lumped into 1 group "MSN Contacts"

The group pass through was working at one time but now all MSN contacts are being lumped into 1 “MSN Contacts” group.

After logging in the first time, did you move your contacts around? (this doesn’'t really work and will be lost after your next login, note that this is due to a bug in JML that I am aiming to fix) Did the groups work at all the first time you logged into MSN? (like did you already have MSN contacts in groups?)

My MSN contacts have been grouped in MSN for a while and I use the same groups on Yahoo. I.E. I have a group “Personal” on both. Prior to a week or so ago, whenever I logged into the transports, all the personal contacts from both showed up in a merged “Personal” group in my roster, just the way they should. Yahoo is still working but now all my MSN contacts show up in a single “MSN Contacts” group in my roster regardless of how they were arranged on MSN itself. No moving around and I’'m starting from a fresh database.

Didn’‘t you change libraries a while back? Maybe that’'s when it stopped working. I know it worked at one time because I gave you the code.

=D Yeah, I did change libraries. The one I was using was crap. Then I changed to JML. It had some missing functionality, so I switched to another one. That one was a tad bizarre and written in a language I didn’‘t understand (korean), so I came back to JML. It’‘s a really good library that just didn’‘t make it to 1.0 yet. As it turns out, I’'m not in charge of JML. lol (the guy handed it over to me)

If you log in to an MSN client, are your groups “all messed up” on MSN’‘s side? Or is it just that they’'re showing wrong on the XMPP side?

Only on the XMPP side. It worked WAY back when MSNListener.contactReceived was doing the work to add the groups. Now it looks like MSNSession.syncUsers never finds any groups so it creates one called “MSN Contacts”. Let me debug it a little.


Hrm. It’‘s possible that the group support in JML is busticated. =) I’‘d swear it worked at one point though. Hrm… Let me know what you find out! I’'ll take a look soonish as well.

OK, the bug is in the jml library incomingLST.getGroupId()

In earlier MSN protocols, the group list is in index 3.

In MSNP10, it was in index 4.

Now it’‘s in index 5 but the code doesn’'t handle later than MSNP10.

In all cases, it’'s in the LAST position so the correct code should just be…

public String[] getGroupId() {

int pcount = getParamCount();

if (pcount < 1) return new String[0];

String groupIds = getParam(getParamCount()-1);

if (groupIds != null) {

return groupIds.split(",");


return new String[0];


Wow thanks! I’'ll get that committed to JML and pulled into the plugin!

Commited to JML SVN.


thanks for helping out! :smiley:

George has been helping out since early alpha. Yay George! (and thanks, to you and to all my early testers!)

No problem. Glad to help out.

BTW Daniel, did you check in the new jml.jar into the wildfire trunk?

Not yet, there’‘s a lot of updates to the JML code since the version that’'s currently comes with the gateway plugin, so I want to make sure it gets some good testing done on it before I apply it. =)

No problem. I’‘m actually using it now and haven’‘t noticed any new issues. I’'ll let you know if I do.

Thanks! BTW, GATE-60