From mboxrd@z Thu Jan 1 00:00:00 1970 X-Msuck: nntp://news.gmane.io/gmane.emacs.gnus.general/52167 Path: main.gmane.org!not-for-mail From: Zack Weinberg Newsgroups: gmane.emacs.gnus.general Subject: A different spam model, which might be possible already (was Re: Ideas for .no Gnus) Date: Fri, 02 May 2003 19:29:41 -0700 Sender: ding-owner@lists.math.uh.edu Message-ID: <87n0i4g3u2.fsf@egil.codesourcery.com> References: NNTP-Posting-Host: main.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: main.gmane.org 1051928934 24650 80.91.224.249 (3 May 2003 02:28:54 GMT) X-Complaints-To: usenet@main.gmane.org NNTP-Posting-Date: Sat, 3 May 2003 02:28:54 +0000 (UTC) Cc: ding@gnus.org Original-X-From: ding-owner+M710@lists.math.uh.edu Sat May 03 04:28:52 2003 Return-path: Original-Received: from malifon.math.uh.edu ([129.7.128.13]) by main.gmane.org with esmtp (Exim 3.35 #1 (Debian)) id 19Bmlf-0006PP-00 for ; Sat, 03 May 2003 04:28:51 +0200 Original-Received: from localhost ([127.0.0.1] helo=lists.math.uh.edu) by malifon.math.uh.edu with smtp (Exim 3.20 #1) id 19Bmmb-0004Yd-00; Fri, 02 May 2003 21:29:49 -0500 Original-Received: from sclp3.sclp.com ([64.157.176.121]) by malifon.math.uh.edu with smtp (Exim 3.20 #1) id 19BmmX-0004YY-00 for ding@lists.math.uh.edu; Fri, 02 May 2003 21:29:45 -0500 Original-Received: (qmail 65925 invoked by alias); 3 May 2003 02:29:45 -0000 Original-Received: (qmail 65920 invoked from network); 3 May 2003 02:29:44 -0000 Original-Received: from egil.codesourcery.com (mail@66.92.14.122) by sclp3.sclp.com with SMTP; 3 May 2003 02:29:44 -0000 Original-Received: from zack by egil.codesourcery.com with local (Exim 3.36 #1 (Debian)) id 19BmmT-0003Ra-00; Fri, 02 May 2003 19:29:42 -0700 Original-To: replies@Frank-Schmitt.net In-Reply-To: (Frank Schmitt's message of "Fri, 02 May 2003 23:22:11 +0200") User-Agent: Gnus/5.09002 (Oort Gnus v0.20) Emacs/21.3 (gnu/linux) Precedence: bulk Xref: main.gmane.org gmane.emacs.gnus.general:52167 X-Report-Spam: http://spam.gmane.org/gmane.emacs.gnus.general:52167 Frank Schmitt writes: > Hello > > Now that Oort is released, I'd like to throw some ideas in, which > features I as (primarily) a user would like to see in the next Gnus: This is the second of my two wishes: I use Gnus primarily to get at my mail, which is stored on an IMAP server. Mail is sorted into folders by a maildrop script which runs on the server. This script is also responsible for running bogofilter to weed out spam, which is sent to a separate folder; thus the bogofilter database is stored on that machine, too. I have shell access to the machine which stores the mail. I have not yet been able to figure out how to use Gnus' spam features to feed error corrections back to bogofilter on the remote machine. The way I would like it to work is: * If I do 'B m' on message(s) in the spam group, they automagically get their $ mark removed. Also, a hook fires which runs a program on the local machine. This program gets the IMAP UIDs of all the moved messages as arguments. It does *not* get the text of the messages on its standard input or elsewhere. It does not need to know the destination of the messages. The move command is issued to the IMAP server only after this program finishes. * If I mark messages in ham groups as spam ($), then on group exit another hook fires which, again, runs a program on the local machine, passing the IMAP UIDs of all the spam-marked messages as arguments. This program does need to know the name of the group containing the messages - presumably that is an argument too. After the program finishes, all the spam-marked messages are deleted as if with 'B DEL', and then EXPUNGE is issued. The programs run on the local machine are going to ssh over to the machine which stores the mail, dig the messages out of the mailboxes, and run bogofilter database update commands on them. There's no need to download the messages to the local machine and then send them back to the server, but there is a need for the messages not to get deleted or moved until the aforementioned digging happens. All of this may be possible right now in Oort, but I don't know how to do it. There is nothing in the manual about a setup like this, and I am not familiar enough with Gnus' internals to know where to look for appropriate hooks, internal functions, etc. I do know enough Emacs Lisp that I can probably code this myself given enough pointers. zw