Hi,
You may be interested in the following information: today something wired
happened and pyicqt stopped working for single user here, while continued
to work for others.
By "stopped working" I mean that it suddenly logged the user out, and on
attempt to re-login ansered with a message
Undefined condition.
The error condition is not one of those defined by the other conditions in 
this list.
------
ICQ connection lost! Reason: [Failure instance: Traceback (failure with no 
frames):
twisted.internet.error.ConnectionLost: Connection to the other side was 
lost in a non-clean fashion.]
This message arrived not immediately after login attempt, but after a 
minute or so.
During that time, transport status in user's roster was "offline"
The following was logged to pyicqt log file:
[2008-09-03 13:11:53] Traceback (most recent call last):
          File "/usr/local/share/pyicqt/pyicqt-0.8.1a3/src/tlib/oscar.py", 
line 694, in dataReceived
            state=func(flap)
          File "/usr/local/share/pyicqt/pyicqt-0.8.1a3/src/tlib/oscar.py", 
line 805, in oscar_Data
            d.errback(snac)
          
File "/usr/lib/python2.4/site-packages/twisted/internet/defer.py", line 
251, in errback
            self._startRunCallbacks(fail)
          
File "/usr/lib/python2.4/site-packages/twisted/internet/defer.py", line 
294, in _startRunCallbacks
            self._runCallbacks()
        --- <exception caught here> ---
          
File "/usr/lib/python2.4/site-packages/twisted/internet/defer.py", line 
307, in _runCallbacks
            self.result = callback(self.result, *args, **kw)
          File "/usr/local/share/pyicqt/pyicqt-0.8.1a3/src/tlib/oscar.py", 
line 1970, in _cbRequestSSI
            if snac[1] == 0x0f: # same SSI as we have
        exceptions.TypeError: unsubscriptable object
I've tried several things to fix it, including trying the latest version
(0.8.1a3), and that did not help - I got the same behaviour and the same
traceback with 0.8.1a3 as well.
However, after an hour or so the problem suddenly disappeared and pyicqt
started to work correctly for the affected user again.
Since nothing changed at my side, I guess this could be caused by icq 
server
sending something wired and then stopping doing so. However, maybe it is
possible to "fix" pyicqt to stop getting TypeError on "strange" input from
server?
I agree that attempt to support any sort of unexpected server behaviour is 
strange at least.
However, i'm interested [as a programmer] how in this particular case 
TypeError could happen - that means, how invalid server input could change 
the type of 'snac' object at oscar.py:1970
This may indicate a bug somewhere.
Btw, while we are on topic.
The serious issue that makes it virtually impossible to move local users 
from icq to jabber+pyicqt, is that after initial registration in the 
transport, user gets his icq contact list (sometimes huge!) imported into 
jabber roster in numeric form (as NNN...@icq.xxx.xxx.xx). Is there any 
possibility to automatically import nicknames of ICQ contacts (including 
russian nicknames)?
Hmm.  So it is not transport who inserts entries into user's roster? 
Instead, transport asks clent to do so?
Also, I was not able to find the option in psi 0.10 from debian etch. Is it 
available only on later versions?
> Hmm. So it is not transport who inserts entries into user's roster?
> Instead, transport asks clent to do so?
no, transport add nick like u...@icq.server.com & client resolv nick
Independently
> Also, I was not able to find the option in psi 0.10 from debian etch. Is it
> available only on later versions?
it's hidden option, but in psi-0.12 added "raw config.xml editor"
for 0.10 see
http://forum.psi-im.org/post/26607
Dne Fri, 12 Sep 2008 04:03:19 -0700 (PDT)
r000n <r000...@gmail.com> napsal(a):
> 
> Hi. Beta of PyICQt 0.8.1 here.
> You can get it right now:
> 
> http://py-transports.googlegroups.com/web/pyicqt-0.8.1b-unstable.tar.gz
I sometimes get this exception in the log:
[2008-09-17 13:46:42] Traceback (most recent call last):
          File "/usr/share/pyicqt/src/tlib/oscar.py", line 704, in dataReceived
            state=func(flap)
          File "/usr/share/pyicqt/src/tlib/oscar.py", line 826, in oscar_Data
            d.callback(snac)
          File "/usr/lib/python2.5/site-packages/twisted/internet/defer.py", line 243, in callback
            self._startRunCallbacks(result)
          File "/usr/lib/python2.5/site-packages/twisted/internet/defer.py", line 312, in _startRunCallbacks
            self._runCallbacks()
        --- <exception caught here> ---
File "/usr/lib/python2.5/site-packages/twisted/internet/defer.py", line 328, in _runCallbacks
            self.result = callback(self.result, *args, **kw)
          File "/usr/share/pyicqt/src/legacy/icqt.py", line 772, in gotNickname
            self.oscarcon.legacyList.updateNickname(uin, unick)
          File "/usr/share/pyicqt/src/legacy/buddies.py", line 234, in updateNickname
            bos.modifyItemSSI(u)
          File "/usr/share/pyicqt/src/tlib/oscar.py", line 2232, in modifyItemSSI
            groupID = item.group.group.findIDFor(item.group)
        exceptions.AttributeError: SSIGroup instance has no attribute 'group'
-- 
	Michal Čihař | http://cihar.com | http://blog.cihar.com
running ~ week without crashes, 2-3 users online
What about some sort of changelog? :)
how about "killer feature" - file transfer? it's planned? we can hope?
Dne Tue, 7 Oct 2008 04:44:45 -0700 (PDT)
r000n <r000...@gmail.com> napsal(a):
> 
> 0.8.1b2:
> http://groups.google.com/group/py-transports/web/pyicqt-0.8.1b2-unstable.tar.gz
> Without cardinal changes, but with usability improvements :)
I've just seen following exception in the log:
          File "/usr/share/pyicqt/src/tlib/oscar.py", line 704, in dataReceived
            state=func(flap)
          File "/usr/share/pyicqt/src/tlib/oscar.py", line 828, in oscar_Data
            d.errback(snac)
          File "/usr/lib/python2.5/site-packages/twisted/internet/defer.py", line 269, in errback
            self._startRunCallbacks(fail)
          File "/usr/lib/python2.5/site-packages/twisted/internet/defer.py", line 312, in _startRunCallbacks
            self._runCallbacks()
        --- <exception caught here> ---
          File "/usr/lib/python2.5/site-packages/twisted/internet/defer.py", line 328, in _runCallbacks
            self.result = callback(self.result, *args, **kw)
File "/usr/share/pyicqt/src/tlib/oscar.py", line 2071, in _cbRequestSSI
            if snac[1] == 0x0f: # same SSI as we have
exceptions.TypeError: 'NoneType' object is unsubscriptable
No idea what action has caused it...
> 0.8.1b3
> Changed:
>   * Updated Russian translation (thanks evadim)
>   * Corrected SOCKS 5 connection
> Added:
>   * Ad-Hoc: 'Help' command (with link on this mailing list ;))
>   * Ad-Hoc: 'Deny all auth requests' command in settings
>   * Transport can sends messages to connected users before stop
> (<enableShutdownMessage/> option in config)
Hi,
I changed some use of range into xrange. And removed some range
completely. I hope that this will save some memory. After a few tests,
the transport seams to work after that patch.
You could download the patch at: 
http://animux.de/downloads/pyicq-t.patch
Hope you will find it helpful.
Alex
What versions of python and twisted does 0.8.1b3 require?
Will it work in debian etch (python 2.4, twisted 2.4)?