Greetings. We are using pyyim-t (CVS version on 2007 MAY 25) in our project. There is an issue with updating contact status. Let's assume that Jabber user JUSER is registered on pyyim-t gateway. He has yahoo contact YUSER in his yahoo buddies list. This is scenario: 1) YUSER logs in yahoo network. 2) YUSER changes his status to busy. 3) YUSER changes his status back to available.
I tried to login as YUSER both official Yahoo! Messenger 8.1.0.402 and Psi client with pyyim-t gateway. A) This is packets log, when I use Yahoo! Messenger 8.1.0.402 to log in as YUSER: ========================= BEGIN ========================= available 1 recv ('YMSG', 0, 98, 1, 1, -644340047) {0: {0: 'ardastest1', 1: 'ardastest1', 198: '0', 7: 'ardastest2', 10: '0', 13: '1', 244: '2097087', 213: '0', 138: '1'}} 118 [] ardastest2 None DEBUG: socket sent <presence to="JUSER" from="[EMAIL PROTECTED]/messenger" id="10"> <priority xmlns="jabber:client">10</priority> </presence> busy recv ('YMSG', 0, 44, 198, 1, -644340047) {0: {97: '1', 10: '2', 13: '1', 138: '1', 7: 'ardastest2'}} 64 [] ardastest2 Busy DEBUG: socket sent <presence to="JUSER" from="[EMAIL PROTECTED]/messenger" id="11"> <priority xmlns="jabber:client">10</priority> <status xmlns="jabber:client">Busy</status> </presence> available 2 recv ('YMSG', 0, 44, 198, 1, -644340047) {0: {97: '1', 10: '0', 13: '1', 138: '1', 7: 'ardastest2'}} 64 [] ardastest2 None DEBUG: socket sent <presence to="JUSER" from="[EMAIL PROTECTED]/messenger" id="12"> <priority xmlns="jabber:client">10</priority> </presence> ========================== END ========================= B) This is packets log, when I use PSI jabber client and pyyim-t gateway (CVS version on 2007 JAN 16) to log in as YUSER: ========================= BEGIN ========================= available 1 recv ('YMSG', 0, 97, 1, 1, -643966378) {0: {0: 'ardastest1', 1: 'ardastest1', 198: '0', 7: 'ardastest2', 10: '0', 13: '1', 244: '278527', 213: '0', 138: '1'}} 117 [] ardastest2 None DEBUG: socket sent <presence to="JUSER" from="[EMAIL PROTECTED]/messenger" id="42"> <priority xmlns="jabber:client">10</priority> </presence> busy recv ('YMSG', 0, 75, 198, 1, -643966378) {0: {7: 'ardastest2', 10: '99', 13: '1', 47: '1', 19: "Can't chat. Gotta work.", 138: '1'}} 95 [] ardastest2 Can't chat. Gotta work. DEBUG: socket sent <presence to="JUSER" from="[EMAIL PROTECTED]/messenger" id="43"> <priority xmlns="jabber:client">10</priority> <show xmlns="jabber:client">dnd</show> <status xmlns="jabber:client">Can't chat. Gotta work.</status> </presence> available 2 recv ('YMSG', 0, 36, 198, 1, -643966378) {0: {10: '0', 47: '2', 13: '1', 7: 'ardastest2'}} 56 [] ardastest2 None DEBUG: socket sent <presence to="JUSER" from="[EMAIL PROTECTED]/messenger" id="44"> <priority xmlns="jabber:client">10</priority> <show xmlns="jabber:client">away</show> </presence> ========================== END ========================= Here JUSER is registered on pyyim-t (CVS version, 2007 MAY 25) as "ardastest1", YUSER = "ardastest2". There is no "show" element in "busy" status message from official client in A case, so my jabber client cannot show appropriate icon for this status. Is it correct? And if yes, how can I determine AWAY, BUSY, etc. statuses not relying on text status string? How to map Yahoo! statuses to Jabber presences? There is wrong "show" element in "available 2" packet in B case, so my jabber client shows wrong AWAY icon, but correct "available" status. This is bug. WBR, Alexander Kovalenko www.ardas.dp.ua _______________________________________________ py-transports mailing list py-transports@blathersource.org http://lists.modevia.com/cgi-bin/mailman/listinfo/py-transports