Re: [siesta-dev] Plugin requests

[prev] [thread] [next] [lurker] [Date index for 2003/08/06]

From: Simon Wistow
Subject: Re: [siesta-dev] Plugin requests
Date: 12:03 on 06 Aug 2003
On Sun, Aug 03, 2003 at 08:56:48AM +0300, Gabor Szabo said:
> 1) Only questions
>    (Actually I think this will be thread starters
>     or e-mail with some new subject as it is rather hard to
>     define what is a question)
>    So one will be able to monitor all the starts and get look at the
>    thread.


Sure. Make a plugin that checks to see if there's an In-Reply-To header 
and/or the subject matches /\s*re\*:/i and returns 1 if it does.

Then set that plugin personal et voila.

 
> 2) Responses to her question or in more general to her post.
>    So one can subscribe ask questions and get responses
>    but avoid getting all the traffic.

Bit more difficult - not because of Siesta but because you'll have to 
mark any mail going through as belonging to a particular thread 
(Mail::Thread would be excellent for that :) and then see if the root 
node of that thread is started by the user. Could be quite processor 
intensive.

A simpler heuristic would be to keep a record of all subject lines of 
all threads started by a user and then guess that any mail with that 
subject line is a reply. Not perfect but much quicker.


> 3) If using 1) then maybe add a link or an e-mail address to the message
>    that will enable the reader on the fly to mark a thread
>    which is interesting and in which she wants all the messages.
>
> 4) Apply the above rules to some subgroup selected by a regex
>    matching the subject or to be able to group the messages in some
>    clever way. Currently there are 5028 different groups but the
>    number is growing every day.
> 
> 5) Use several of the above rules at the same time
>    e.g. to receive:
>    All questions and
>    All the responses to my questions.
> 
> 6) Web interface so one can send questions or responses via that web
>    interface as well. (after authentication of course)


Ah, a larger picture is starting to form.

Basically it seems like you want to infuse a message with some meta data 
at the start of the pipeline (thread starter, thread id etc etc). This 
can be done by a plugin and then added either as headers to the mail or 
as a generic value 

	$message->{_thread_starter} = 'foo@xxx.xxx';

should work. 


Then you want a personal plugin that matches various heuristics and then 
rejects the mail if they don't match.

This is all possible and is 'just' A Simple Matter Of Programming [tm] - 
it's just up to you to code the heuristics.

> ... if not I'll try to do them next month once I gain some more
> understanding of the code ...

Cool. If there's anything we can do to help then pelase tell us. 
Obviously the code is pretty (well, mostly) transparent to us but if 
there's anything we can do to improve the docs or anything than we're 
happy to do that.

> .. though I am afraid some of the above cannot be accomplished with the
> current structure of Siesta.

I don't see why any of this should be possible.

It might even be possible to do it via a modified SpamAssassin - get rid 
of the anti spam rules and then code your new rules into the 
spamassassin.cf. Then let people tweak their threshold value and adjust 
the weightings of rules etc et *voila* - all done :)

Simon

-- 
stay up late ... if we want to

Generated at 13:56 on 01 Jul 2004 by mariachi 0.52