Function: erc-server-setup-periodical-ping
erc-server-setup-periodical-ping is a byte-compiled function defined
in erc-backend.el.gz.
Signature
(erc-server-setup-periodical-ping BUFFER)
Documentation
Set up a timer to periodically ping the current server.
The current buffer is given by BUFFER.
Source Code
;; Defined in /usr/src/emacs/lisp/erc/erc-backend.el.gz
(defun erc-server-setup-periodical-ping (buffer)
"Set up a timer to periodically ping the current server.
The current buffer is given by BUFFER."
(with-current-buffer buffer
(when erc-server-ping-handler
(cancel-timer erc-server-ping-handler))
(when erc-server-send-ping-interval
(setq erc-server-ping-handler (run-with-timer
4 erc-server-send-ping-interval
#'erc-server-send-ping
buffer))
;; I check the timer alist for an existing timer. If one exists,
;; I get rid of it
(let ((timer-tuple (assq buffer erc-server-ping-timer-alist)))
(if timer-tuple
;; this buffer already has a timer. Cancel it and set the new one
(progn
(cancel-timer (cdr timer-tuple))
(setf (cdr (assq buffer erc-server-ping-timer-alist)) erc-server-ping-handler))
;; no existing timer for this buffer. Add new one
(add-to-list 'erc-server-ping-timer-alist
(cons buffer erc-server-ping-handler)))))))