Hello, Emi.
I completely agree with Michael, that there are a lot of implementation questions that are not so easily solvable. You should always take in mind that Roundcube is only a client and use filters on all content only in it is not right way to do. All mails are stored on the IMAP server and all filtering should be done there also. Just imagine, not all users check there mails every day or keeping mail client open all the time, it’s normal to have 100 unread messages, so filter should be run at least at the startup causing peak loads on the server (web+imap) and how do you plan to check existing mails for filtering ( was filters applied to this message or no? ) I think that you are heading to the wrong direction.
I’m planning to implement my own filters but I will do it in a bit different way. I would create independent table for storing filter data and new preference page would be created for filter management. That’s all that goes for web related stuff. Than external script will be created (for ex. perl) which will fetch data from the table and convert it to the according MDA (mail delivery agent) format for the according mailbox. Such scheme is necessary because not always (in real environment the percentage is about 70-80%) IMAP server with all mailboxes resides on the same file system as Roundcube. In my case they reside on a different machines and I’m unable to access directly mailboxes from the Roundcube. So we have external script that will run for ex. from cron job to generate MDA scripts for mail transferring from the filter table data. All parsing will spread across the working time without any peak loads. I suppose we could cooperate on this task and maybe something usable come out of it.
Everything that written above is my IMHO and shouldn’t be taken personally, just FYI.
Regards, Andris
> From: emi@algorismia.com
> Subject: [RCD] Filters
> To: dev@lists.roundcube.net
> Message-ID: <50414.77.226.4.15.1194970065.squirrel@nou>
> Content-Type: text/plain;charset=iso-8859-1
>
> Hi there!!
> I've made a filters function (in early version) for roundcube. I've
> done over the svn version of last week. The modifications uses a new
> SQL table, filters, wich can be filled as done with identities. Then it
> filters messages using this filters, on rcmail_js_message_list and
> rcmail_message_list.
>
> I've seen some discussion on why not to do it, if doing internally or
> with sieve or with .forward or so. Look, I've done this, then we can
> update to permit select the filtering system from configuration. From
> now, we have internal filters.
> I think that this is a very earlier version and that can be much more
> developed. But it runs ok!
> Well, my problem is that I don't know so much on using svn. If some one
> can tell me how can I 'upload' the work without disturbing anybody...
> Comments and discussions about this are welcome.
> Thanks a lot!!!
> emi
-- Tavs bezmaksas pasts Inbox.lv
Regards, Andris