On 4/21/06, James Bunton <[EMAIL PROTECTED]> wrote: > I'm about to release PyMSNt 0.11.1 > If anybody is able to test SVN trunk I'd appreciate any bug reports.
rev 140: (at least I think that's what's currently running - are you still adding the functionality to see what version was launched) File "/usr/lib/python2.3/site-packages/twisted/internet/tcp.py", line 351, in doRead return self.protocol.dataReceived(data) File "/usr/lib/python2.3/site-packages/twisted/protocols/basic.py", line 232, in dataReceived return self.rawDataReceived(data) File "/home/norman/src/svn/PyMSNt/src/tlib/msn/msn.py", line 846, in rawDataReceived if not self.checkMessage(m): File "/home/norman/src/svn/PyMSNt/src/tlib/msn/msn.py", line 2184, in checkMessage self._handleP2PMessage(message) File "/home/norman/src/svn/PyMSNt/src/tlib/msn/msn.py", line 2127, in _handleP2PMessage slpLink.handlePacket(packet) exceptions.TypeError: 'NoneType' object is not callable If it's been fixed already , then no worries. -- - Norman Rasmussen - Email: [EMAIL PROTECTED] - Home page: http://norman.rasmussen.co.za/ From [EMAIL PROTECTED] Mon Apr 24 06:04:44 2006 From: [EMAIL PROTECTED] (Norman Rasmussen) Date: Mon Apr 24 06:04:48 2006 Subject: [py-transports] PyMSNt errors In-Reply-To: <[EMAIL PROTECTED]> References: <[EMAIL PROTECTED]> <[EMAIL PROTECTED]> <[EMAIL PROTECTED]> <[EMAIL PROTECTED]> <[EMAIL PROTECTED]> <[EMAIL PROTECTED]> <[EMAIL PROTECTED]> <[EMAIL PROTECTED]> <[EMAIL PROTECTED]> <[EMAIL PROTECTED]> Message-ID: <[EMAIL PROTECTED]> Another one: (rev 141) --- <exception caught here> --- File "/usr/lib/python2.3/site-packages/twisted/internet/pollreactor.py", line 160, in _doReadOrWrite why = selectable.doRead() File "/usr/lib/python2.3/site-packages/twisted/internet/tcp.py", line 351, in doRead return self.protocol.dataReceived(data) File "/usr/lib/python2.3/site-packages/twisted/protocols/basic.py", line 221, in dataReceived why = self.lineReceived(line) File "/home/norman/src/svn/PyMSNt/src/tlib/msn/msn.py", line 824, in lineReceived try: handler(params.split(' ')) File "/home/norman/src/svn/PyMSNt/src/tlib/msn/msn.py", line 1188, in handle_FLN self.contactOffline(params[0]) File "/home/norman/src/svn/PyMSNt/src/tlib/msn/msnw.py", line 429, in contactOffline LogEvent(INFO, self.factory.msncon.ident) exceptions.AttributeError: 'NoneType' object has no attribute 'ident' -- - Norman Rasmussen - Email: [EMAIL PROTECTED] - Home page: http://norman.rasmussen.co.za/ From [EMAIL PROTECTED] Sun Apr 23 14:53:53 2006 From: [EMAIL PROTECTED] (James Bunton) Date: Mon Apr 24 07:57:36 2006 Subject: [py-transports] PyMSNt: Fix avatars in Google Talk In-Reply-To: <[EMAIL PROTECTED]> References: <[EMAIL PROTECTED]> <[EMAIL PROTECTED]> <[EMAIL PROTECTED]> Message-ID: <[EMAIL PROTECTED]> On 18/04/2006, at 8:20 AM, Lars T. Mikkelsen wrote: > On Mon, Apr 17, 2006 at 12:02:11AM +1000, James Bunton wrote: >> Could you please apply this patch, then run >> $ tail -f debug.log|grep avatarHashReceived > > Here's a snippet when changing the avatar two times: > > [2006-04-17 23:51:13] avatarHashReceived <my JID> <my transport> > b09b940ea9ab411a97d05d007e39cdb8348c0beb > [2006-04-17 23:51:13] avatarHashReceived - retrieving vCard > [2006-04-17 23:51:13] avatarHashReceived <my JID> <my transport> > b09b940ea9ab411a97d05d007e39cdb8348c0beb > [2006-04-17 23:51:13] avatarHashReceived - retrieving vCard > [2006-04-17 23:51:22] avatarHashReceived <my JID> <my transport> > 6f95d9f0b2bd164f19a281f975b036fe30393131 > [2006-04-17 23:51:22] avatarHashReceived - retrieving vCard > [2006-04-17 23:51:23] avatarHashReceived <my JID> <my transport> > 6f95d9f0b2bd164f19a281f975b036fe30393131 > >> Then muck around with Google Talk for a bit, and the results should >> give us an idea whats going on. > > It seems I wasn't entirely correct in my previous description. > Apparently, the > transport receives two "copies" of each presence stanza when the > avatar is set. > However, this only occurs when changing avatar, and not when changing > availability or status message. Furthermore, as far as I can tell from > the > diagnostic log of Google Talk, the client only sends one "copy" of the > presence > stanza, so I guess some server (most likely the Google Talk server) is > duplicating some presence stanza. > > So when a presence stanza with a new avatar hash is received a vCard > update is > triggered. If the duplicate presence stanza is received before the > answer to > the first vCard update, a second vCard update is issued. I guess this > is also > possible, however very unlikely, if a user changes his avatar and > immediately > changes his status. I guess this doesn't really need any fixing in > PyMSNt after > all. > > Best regards, > Lars I should be able to improve on this behaviour. When doVCardUpdate is called, store the hash of the avatar we're trying to retrieve. If doVCardUpdate is called with this hash again, return immediately. When doVCardUpdate completes, blank the variable with the hash. That should stop multiple retrievals for the same image. The only time this would give unnecessary retrievals is if somebody was quickly cycling through two images. Even then it would only retrieve a few more than necessary. Thanks for diagnosing it. It'd also be nice to find out where the extra presence stanza is coming from. --- James