[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: IMAP server-to-server replication?



Kai.Grossjohann@CS.Uni-Dortmund.DE writes:

> Yet another possibility would be to store a copied or moved message
> in the nndraft:queue group and have nnagent do its thing when
> `sending' the drafts.

Yes, this is how it should be done IMHO.

Warning! This totally untested code, meant only as a food-for-thought
for elisp-hackers.

(deffoo nnagent-request-accept-article (group &optional server last)
  (gnus-agent-insert-meta-information 
   'group (gnus-group-prefixed-name group gnus-command-method))
  (gnus-request-accept-article "nndraft:queue" nil t t))

And this patch to gnus-drafts.el:

--- gnus-draft.el-	Mon Feb 15 19:29:13 1999
+++ gnus-draft.el	Mon Feb 15 19:32:34 1999
@@ -139,13 +139,17 @@
     (when (and (or (null method)
 		   (gnus-server-opened method)
 		   (gnus-open-server method))
-	       (if type
+	       (cond 
+		((eq type 'group)
+		 (gnus-request-accept-article method))
+		(type
 		   (let ((message-this-is-news (eq type 'news))
 			 (message-this-is-mail (eq type 'mail))
 			 (gnus-post-method method)
 			 (message-post-method method))
-		     (message-send-and-exit))
 		 (message-send-and-exit)))
+		(t
+		 (message-send-and-exit))))
       (let ((gnus-verbose-backends nil))
 	(gnus-request-expire-articles
 	 (list article) (or group "nndraft:queue") t)))))