I have a problem with an MSN account connected by JML. When the account is added as a contact by someone, the contactAddedMe method isn't called.
The JML account (msndev1@XXXbot.nl) is being added by another account (clienttest@xxxxxx). As you can see the ADL is received and JML is responding with PRP/UUX/CHG to the notification server. After that the payload for the ADL command is displayed, including the next PRP command (which shouldn't be there?). The Chunk Debug output is empty too, so probably something is going wrong there? The same problem occurs with a verified passport account.
Has anyone seen this before or know how to solve it?
I'm using a SVN checkout of the source (2010-03-30).
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Anonymous
-
2010-04-01
Ok, problem solved. I will post a description of what is going wrong and a patch soon.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Anonymous
-
2010-04-06
Ok… The error occurs when the notification server is sending the payload for the ADL command separated from the command itself. Tcpdump confirmed this is happening sometimes (not always), you can also see this happening in the JML debug information:
As you can see the ADL command is parsed before the payload has arrived completely. Because the payload isn't included in the same piece of data as the command net.sf.jml.protocol.MsnMessage.load():159 returns false (chunk size doesn't match the given length in the ADL command yet). In net.sf.jml.protocol.incoming.IncomingADL.load():56 the chunk data is ignored because of that and the command without the payload is processed and dispatched.
I have created an additional property in MsnMessage to check if more payload data is expected or not and use that property in IncomingADL. I will submit the patch in Tracker > Patches.
Hi,
I have a problem with an MSN account connected by JML. When the account is added as a contact by someone, the contactAddedMe method isn't called.
The JML account (msndev1@XXXbot.nl) is being added by another account (clienttest@xxxxxx). As you can see the ADL is received and JML is responding with PRP/UUX/CHG to the notification server. After that the payload for the ADL command is displayed, including the next PRP command (which shouldn't be there?). The Chunk Debug output is empty too, so probably something is going wrong there? The same problem occurs with a verified passport account.
Has anyone seen this before or know how to solve it?
I'm using a SVN checkout of the source (2010-03-30).
Ok, problem solved. I will post a description of what is going wrong and a patch soon.
Ok… The error occurs when the notification server is sending the payload for the ADL command separated from the command itself. Tcpdump confirmed this is happening sometimes (not always), you can also see this happening in the JML debug information:
As you can see the ADL command is parsed before the payload has arrived completely. Because the payload isn't included in the same piece of data as the command net.sf.jml.protocol.MsnMessage.load():159 returns false (chunk size doesn't match the given length in the ADL command yet). In net.sf.jml.protocol.incoming.IncomingADL.load():56 the chunk data is ignored because of that and the command without the payload is processed and dispatched.
I have created an additional property in MsnMessage to check if more payload data is expected or not and use that property in IncomingADL. I will submit the patch in Tracker > Patches.
Patch: https://sourceforge.net/tracker/?func=detail&aid=2982569&group_id=118829&atid=682291