Ticket Hash: | 81ea7518dc81f85f0af2a9b5bd738553792d1b92 | |||
Title: | tkabber 0.10 no longer automaticly reconnects | |||
Status: | Fixed | Type: | Code_Defect | |
Severity: | Important | Priority: | High | |
Subsystem: | Resolution: | Not_A_Bug | ||
Last Modified: | 2008-02-17 12:44:03 | |||
Version Found In: | cvs | |||
User Comments: | ||||
anonymous (claiming to be Arkadiusz Miskiewicz) added on 2007-11-11 19:21:12:
I'm using tkabber 0.10 beta 2 on a notebook, linux system, with software: tcllib-1.9-2.noarch tclsasl-1.0-3.i686 tcl-tdom-0.8.2-1.i686 tcl-8.5-0.b1.1.i686 and I suspend to ram. Unfortunately I often forget to log out from tkabber. The bug is that after resume tkabber never notices that connection was dropped (by server) and it thinks that it's still logged. tkabber 0.9 noticed that and displayed login window. tkabber 0.10 just thinks it's logged. How to reproduce, login, suspend to ram/disk (so tkabber is frozen) and wait until server timeouts the client. Then resume. ps. jabber.ru bugzilla doesn't allow to change emails :-( My currently registered email no longer works so please reply manually to arekm/maven.pl. Thanks. Changing bugzilla to allow changing emails would be nice. khomoutov (claiming to be Konstantin Khomoutov) added on 2008-02-11 18:53:45: This problem is two-fold. Firstly, the "feature" disappeared for you in the new release was probably just a by-product of the Tkabber mechanism for "keep alive" which was implemented in the form of periodical sending of the space character to the output stream. In 0.10.1 it was dropped in the favor of implemented "IQ ping" facility (see the ChangeLog entry of 2007-10-05). IQ pinging provides for both keep-alive and dead link detection. You can enable it via the "IQ" group of Customize settings ("::plugins::ping::options" group of settings). If ::plugins::ping::options(ping) flag is on, and the server didn't respond with either its reply or an error condition in ::plugins::ping::options(timeout) seconds, the link is considered dead and a series of reconnection attempts is committed. Secondly, the whole idea of relying on this feature appears to be rather clunky. Tkabber now possesses a special plugin named "green" which allows to properly track suspend/resume on Windows systems. Now it's Windows-only, but it's not hard to implement a simpl Tcl/Tk script that will broadcast some special "message" to all running instances of Tkabber on a particular display in cases of suspend and resume. Such script could be called by some appropriate script from the suite implementing software suspend on your system. The problem is that no one of the active Tkabber devs uses power management under Linux so this functionality can only be created if someone (you, for instance) will collaborate with them (explaining the setup, requirements for such reporting script, etc). anonymous (claiming to be Arkadiusz Miskiewicz) added on 2008-02-11 19:37:40: Where is that "green" plugin? Don't see it in svn trunk. On Linux there is a need for some script that will be run by external application (like hal daemon, hibernate script, acpi/power management daemon) like: ./tell_tkabber_that_system <is_going_to_sleep|woke_up|suspending_canceled(?)> That's all. Then you plug execution of this script into hal/acpid and it should work. Can someone prepare such script for tkabber? khomoutov (claiming to be Konstantin Khomoutov) added on 2008-02-12 02:08:02: (In reply to comment #2) > Where is that "green" plugin? Don't see it in svn trunk. > > On Linux there is a need for some script that will be run by external application > (like hal daemon, hibernate script, acpi/power management daemon) like: > > ./tell_tkabber_that_system <is_going_to_sleep|woke_up|suspending_canceled(?)> > > That's all. Then you plug execution of this script into hal/acpid and it should > work. > > Can someone prepare such script for tkabber? Implemented. Please grab the HEAD of http://svn.xmpp.ru/repos/tkabber-3rd-party/trunk/plugins/green and study the README file on how to set it up. BTW I can be reached via XMPP kostix at 007spb dot ru or in the Tkabber chatroom (nicknamed kostix). anonymous (claiming to be Arkadiusz Miskiewicz) added on 2008-02-12 07:23:54: /usr/bin/wish /usr/share/tkabber/plugins/green/tkabber-swsusp.tcl suspend Error in startup script: invalid command name "::plugins::green::on_suspend" while executing "::plugins::green::on_suspend" invoked from within "send -async tkabber-swsusp.tcl ::plugins::green::on_suspend" ("eval" body line 1) invoked from within "eval [list send -async $app ::plugins::green::on_$event]" ("foreach" body line 2) invoked from within "foreach app [lsearch -all -inline [winfo interps] tkabber*] { eval [list send -async $app ::plugins::green::on_$event] }" (file "/usr/share/tkabber/plugins/green/tkabber-swsusp.tcl" line 36) khomoutov (claiming to be Konstantin Khomoutov) added on 2008-02-17 12:44:03: Fixed in revision 98 of http://svn.xmpp.ru/repos/tkabber-3rd-party/trunk/plugins/green so I'm closing this bug as invalid. It would be cool if Arkadiusz write some simplistic note on inclusion this script in his particular Linux distro power management package scripts. Something like HOWTO-PLD-Linux.txt or so. |