![](https://secure.gravatar.com/avatar/2d8b084fbf3bb480d8a3b6233b498f4f.jpg?s=120&d=mm&r=g)
On 3/7/15 10:27 AM, Aanand Shekhar Roy wrote:
Hi, Does the following approach for auto moderation sound fine or am I on the wrong path ?
I think we neet to make changes in handler to_outgoing.py in method process.
- We need to make two databases : Table1 Schema-> [ user_id | Thread name | list_id | count | last_msg_posted_at ] user_id, list_id, Thread name together act as primary key. It stores the count of number of posts of a user on a particular thread and the time corresponding to the last post. Regards Aanand
One concern here is that "Thread" is a fragile term in email. Unless you are planning on some form of message body analysis to group messages together, you are going to need to rely on the In-Reply-To and References headers of the incoming email, which can have its difficulties. If you are going to thread by something else, like the subject, you may find people making minor changes in the subject to bypass the moderation.
First, these headers are optional, and some mail agents may not generate them, and more importantly, the subscriber can bypass this linking by creating a reply as a "new message" thus bypassing the auto moderation.
Second, there is an unreliability in these headers as they will not necessarily reference the "start" of the thread, but may only list messages later in the thread, and to get your "Thread Name", you are going to have to keep a full history (for some period back) of messages and what thread you determined them to be in to figure out what thread this message is in.
This means that any system that ties to limit the rate "in thread" must also have a similar (but perhaps different value) limit on total postings or creation of new threads.
Note this is VERY different then the problem with a message board, where there is a much stronger definition of "Thread" and people may be much less inclined to "break thread" to bypass limits.
-- Richard Damon