Menu

#8 simple reconnect hack

closed
nobody
None
5
2007-08-24
2004-08-09
No

I don't know if I already posted this, but it is quite
handy and keeps my emacs-jabber client up and running
for several days even if the server goes down some
minutes per day. Maybe this will give you any bright
ideas to implement a better solution than my hack:

(defvar my-jabber-reconnect-startup-delay 5
"Time in seconds before first connect begins.")

(defvar my-jabber-reconnect-interval 3600
"Time in seconds between each connect retry.")

(defvar my-jabber-timer nil
"Timer used to reconnect to jabber")

(defun my-jabber-connect ()
(message "Trying to connect to jabber %s"
(current-time-string))
(jabber-connect)
(sleep-for 5) ;; Sleep for just a bit so that the
connection can be
;; done
(jabber-send-presence "" "" 10))

(defun my-jabber-reconnect-start ()
(interactive)
(setq my-jabber-timer
(run-with-timer
my-jabber-reconnect-startup-delay
my-jabber-reconnect-interval
'my-jabber-connect)))

(defun my-jabber-reconnect-stop ()
(interactive)
(cancel-timer my-jabber-timer))

Start it with my-jabber-reconnect-start.

Enjoy!

Discussion

  • Magnus Henoch

    Magnus Henoch - 2007-08-24
    • status: open --> closed
     
  • Magnus Henoch

    Magnus Henoch - 2007-08-24

    Logged In: YES
    user_id=920364
    Originator: NO

    Finally implemented...

     

Log in to post a comment.