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:
Content-Type: text/plain;charset=iso-8859-1Hi 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
List info: http://lists.roundcube.net/dev/
Hi Andris, I completely think the same as you. What I've done is a UI to manage filters and a MINIMAL filtering tool that uses them, until the scripting part is done. This tool is the 'internal filter', which can be safely removed, as I see with your ('you' as RC developerS) comments. Now, we can focus on making the MDA scripts OR making a better filters settings UI.
May be we can upload the work after making one (or some) initial scripts to convert the SQL filters table into MDA specific filtering system. I know how procmail works, for the others I need to google a litle bit. But I'm not sure if procmail works fine with SQL users (not system wide users)... I'll investigate.
I think that may be we'd do a unified filters table/file, and then each script takes this table/file and transforms it to the specific MDA system. With this, you'll be able to take the filters from RC server, gzip (think, it's better to do all users at once) and sftp it to the IMAP server OR copy it to the right place into the same server, and make the specific filters with the MDA specific script.
Well, thanks for your comments, list!
emi
PD: I gave a login to Michael for entering to me RC server, but I think that may be more people than he should want to see how is it now. I've created a new user (and changed the password of the other user, eh Mike):
Site: https://mail.cio.cat Login: rcdev Password: rcdev
PPD: Welcome Indonesian translation!!
El Mie, 14 de Noviembre de 2007, 9:50, markevich@inbox.lv escribió:
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: 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
List info: http://lists.roundcube.net/dev/
List info: http://lists.roundcube.net/dev/