On 2/3/2012 5:41 PM, Gedalya wrote:
On 02/03/2012 10:27 AM, Ralf Hildebrandt wrote:
- list@airstreamcomm.netlist@airstreamcomm.net:
We are moving our inbound mail to use dovecot LMTP in the near future and we are looking for suggestions on how to implement a mysql based vacation system. If anyone has experience with this, good or bad please let us know. Why not use sieve?
I am facing a similar issue. It looks like sieve can't fetch data from a database, and dovecot can't fetch sieve scripts from a database. It would be useful to have, perhaps, only a global sieve script be able to query a DB, and it would be very useful to allow dovecot to fetch sieve scripts (actual scripts, not a file path) from a database. Any way to do this?
Retrieving whole scripts from a DB is nice, but not strictly necessary for your application. Indeed, only fetching data from a DB is sufficient. Unfortunately, there is no standard Sieve feature that allows fetching string data from external sources. However, Pigeonhole has a few custom features:
Assuming you're using SQL, there is an experimental plugin for retrieval of external string data from a Dovecot dict lookup (there is no LDAP dict afaik):
http://wiki2.dovecot.org/Pigeonhole/Sieve/Plugins/Extdata
You can give that a look. Should also compile against Dovecot v2.1 and Pigeonhole v0.3.
If you were using Dovecot v2.1 and Pigeonhole v0.3 (from hg) you could also tinker something with the new extprograms plugin (using the execute command):
http://hg.rename-it.nl/pigeonhole-0.3-sieve-extprograms/
For more info read: http://hg.rename-it.nl/pigeonhole-0.3-sieve-extprograms/file/tip/README
http://hg.rename-it.nl/pigeonhole-0.3-sieve-extprograms/file/tip/doc/rfc/spe...
And, as you suggested, Pigeonhole v0.3 for Dovecot v2.1 can also restrict the use of these plugins to global scripts.
Regards,
Stephan.