[Dovecot] message-of-the-day feature?
For lack of a better name, we are interested in a feature where one could get a notice out to all Dovecot users as quickly as possible, possibly without going through an MTA even. Given a message and a list of userids we could certainly do a mailing on the MDA server itself going through both Postfix and Dovecot LDA. However, we were wondering what other options we might have in Dovecot. For example, would it be possible to place the message into some file which Dovecot periodically checks for, and if the file exists, either present it to the user as a new message, or automatically deliver it at that time via Dovecot LDA?
--
Steven F. Siirila Office: Lind Hall, Room 130B Internet Services E-mail: sfs@umn.edu Office of Information Technology Voice: (612) 626-0244 University of Minnesota Fax: (612) 626-7593
On Thursday 19 April 2007 17:13, Steven F Siirila wrote:
For example, would it be possible to place the message into some file which Dovecot periodically checks for, and if the file exists, either present it to the user as a new message, or automatically deliver it at that time via Dovecot LDA?
it'd be a very nice feature :-)
--
<?php echo ' Emiliano Gabrielli (aka AlberT) ',"\n", ' GrUSP founder - ZCE ',"\n", ' AlberT_at_SuperAlberT_it - www.SuperAlberT.it ',"\n", ' IRC: #php,#AES azzurra.com ',"\n",'ICQ: 158591185'; ?>
* On 19/04/07 10:13 -0500, Steven F Siirila wrote:
| For lack of a better name, we are interested in a feature where one could
| get a notice out to all Dovecot users as quickly as possible, possibly
| without going through an MTA even. Given a message and a list of userids
| we could certainly do a mailing on the MDA server itself going through
| both Postfix and Dovecot LDA. However, we were wondering what other options
| we might have in Dovecot. For example, would it be possible to place the
| message into some file which Dovecot periodically checks for, and if the
| file exists, either present it to the user as a new message, or automatically
| deliver it at that time via Dovecot LDA?
It's a really nice feature!
We have something like that with tpop3d (Chris Lightfoot's). tpop3d is
nolonger maintained but it's rock solid as a POP3 daemon. It gives this
feature via some perl hooks (plugin, I'd call it, for lack of the proper
word atm) and works very well.
It serves the "bulletin" without any reference to the MTA, and keeps a
DB of those users who have received/retrieved/pop-ed the bulletin(s)
so that they don't get them twice.
It's one feature I will surely miss if I migrated to dovecot 100%.
-Wash
http://www.netmeister.org/news/learn2quote.html
DISCLAIMER: See http://www.wananchi.com/bms/terms.php
--
+======================================================================+
|\ _,,,---,,_ | Odhiambo Washington
Quoting Odhiambo WASHINGTON:
We have something like that with tpop3d (Chris Lightfoot's). tpop3d is nolonger maintained but it's rock solid as a POP3 daemon. It gives this feature via some perl hooks (plugin, I'd call it, for lack of the proper word atm) and works very well. It serves the "bulletin" without any reference to the MTA, and keeps a DB of those users who have received/retrieved/pop-ed the bulletin(s) so that they don't get them twice.
You can do just that with dovecot, see http://wiki.dovecot.org/PostLoginScripting It's not very good performance-wise, because you spawn extra processes for each login, but it depends on your setup/use-case how much it affects you.
On Thu, Apr 19, 2007 at 06:22:05PM +0200, Jakob Hirsch wrote:
Quoting Odhiambo WASHINGTON:
We have something like that with tpop3d (Chris Lightfoot's). tpop3d is nolonger maintained but it's rock solid as a POP3 daemon. It gives this feature via some perl hooks (plugin, I'd call it, for lack of the proper word atm) and works very well. It serves the "bulletin" without any reference to the MTA, and keeps a DB of those users who have received/retrieved/pop-ed the bulletin(s) so that they don't get them twice.
You can do just that with dovecot, see http://wiki.dovecot.org/PostLoginScripting It's not very good performance-wise, because you spawn extra processes for each login, but it depends on your setup/use-case how much it affects you.
That's worth noting, but...
What about getting notices out to those folks whose IMAP client stays connected (sometimes for days on end)?
--
Steven F. Siirila Office: Lind Hall, Room 130B Internet Services E-mail: sfs@umn.edu Office of Information Technology Voice: (612) 626-0244 University of Minnesota Fax: (612) 626-7593
Steven F Siirila wrote:
That's worth noting, but...
What about getting notices out to those folks whose IMAP client stays connected (sometimes for days on end)?
In a plugin, what would trigger a check for new messages? I haven't explored the plugin capabilities yet, so I don't know what the potential is. I fear checking after every imap command may be a worse problem than some users not getting the messages. That does make me wonder if dovecot processes should have a maximum life setting though...
Also, is there a document for the plugin API somewhere? As in how to write your own... I haven't found such a thing in the wiki, just the existing plugins themselves.
Justin McAleer wrote:
In a plugin, what would trigger a check for new messages? I haven't explored the plugin capabilities yet, so I don't know what the potential is. I fear checking after every imap command may be a worse problem than some users not getting the messages. That does make me wonder if dovecot processes should have a maximum life setting though...
Correct me if I'm wrong, but don't most IMAP clients issue an IDLE command when not doing anything, which expires in at most 30 minutes?
Couldn't you hook into the IDLE command to check for a MOTD?
-- Curtis Maloney cmaloney@cardgate.net
Steven F Siirila wrote:
On Thu, Apr 19, 2007 at 06:22:05PM +0200, Jakob Hirsch wrote:
Quoting Odhiambo WASHINGTON:
You can do just that with dovecot, see http://wiki.dovecot.org/PostLoginScripting It's not very good performance-wise, because you spawn extra processes for each login, but it depends on your setup/use-case how much it affects you.
That's worth noting, but...
What about getting notices out to those folks whose IMAP client stays connected (sometimes for days on end)?
You could always kill all their connections. Most clients will reconnect and in an emergency I'd imagine it would outweigh any inconvenience to your users.
Ethan
--
Ethan Sommer Systems Administrator Gustavus Adolphus College 507-933-7042 sommere@gac.edu
I don't know if it is part of IMAP protocol or just a UWIMAP bell/whistle, but with UWIMAP if you create a file /etc/imap.alert, a window will pop up on the client every time you do any imap action. It is:
- very annoying
- perfect for emergencies The message must be short. Dunno if it works somehow with webmail..........
Ethan Sommer wrote:
Steven F Siirila wrote:
On Thu, Apr 19, 2007 at 06:22:05PM +0200, Jakob Hirsch wrote:
Quoting Odhiambo WASHINGTON:
You can do just that with dovecot, see http://wiki.dovecot.org/PostLoginScripting It's not very good performance-wise, because you spawn extra processes for each login, but it depends on your setup/use-case how much it affects you.
That's worth noting, but...
What about getting notices out to those folks whose IMAP client stays connected (sometimes for days on end)?
You could always kill all their connections. Most clients will reconnect and in an emergency I'd imagine it would outweigh any inconvenience to your users.
Ethan
--
Stewart Dean, Unix System Admin, Henderson Computer Resources
Center of Bard College, Annandale-on-Hudson, New York 12504
sdean@bard.edu voice: 845-758-7475, fax: 845-758-7035
On Sun, Apr 22, 2007 at 06:41:28PM -0500, Ethan Sommer wrote:
Steven F Siirila wrote:
On Thu, Apr 19, 2007 at 06:22:05PM +0200, Jakob Hirsch wrote:
Quoting Odhiambo WASHINGTON:
You can do just that with dovecot, see http://wiki.dovecot.org/PostLoginScripting It's not very good performance-wise, because you spawn extra processes for each login, but it depends on your setup/use-case how much it affects you.
That's worth noting, but...
What about getting notices out to those folks whose IMAP client stays connected (sometimes for days on end)?
You could always kill all their connections. Most clients will reconnect and in an emergency I'd imagine it would outweigh any inconvenience to your users.
Good point, although it would still be nice to have something integrated into Dovecot to handle "alert" messages.
Ethan
--
Ethan Sommer Systems Administrator Gustavus Adolphus College 507-933-7042 sommere@gac.edu
--
Steven F. Siirila Office: Lind Hall, Room 130B Internet Services E-mail: sfs@umn.edu Office of Information Technology Voice: (612) 626-0244 University of Minnesota Fax: (612) 626-7593
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1
On Thu, 19 Apr 2007, Steven F Siirila wrote:
I have implented our quota warning the following way:
A script drops the warning directly into the user's Maildir INBOX using a name, not created by any LDA.
Because using the "unique" name (starting with "quotawarning") you can delete any previous warning with ~MailDirINBOX/{cur,new}/quotawarning*.
New messages are picked up by the clients on a regular base :-)
Bye,
Steffen Kaiser -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.6 (GNU/Linux)
iQEVAwUBRiiaOS9SORjhbDpvAQK54QgAxuDcLvDzRVTQGk4eZSuuEtxjlYZ+zsP9 Ew70PJhdtqlggzKF5L0wnxppocq0Eb0BG3T7pibi3O8ket6ofZzWrVmPqoTv3S0+ TC1QzZy4/BDNIL3OyxqFk0wBgZ6kwyFAknsg/eKPN8Mvd+X5W8Wn8+lcDeLveIlS YD5DTIB4WndX7Dsi7k1fI0dZemSt5kb6GrHt7lIG3ORuuvgt4kBNeoSwR0/CRxJc DXojBi0j22LLdB+Rf7gQhF2C5PY0KAFny3zdIV0BhjTMGMCDbahC4+maQmXxReDS zKvqBKaO/WBc4TFAqrFZfKcyPqMcV+JZQTjqGAxoCygtQTMzTXP4Yg== =fSwq -----END PGP SIGNATURE-----
participants (9)
-
Curtis Maloney
-
Emiliano Gabrielli (aka AlberT)
-
Ethan Sommer
-
Jakob Hirsch
-
Justin McAleer
-
Odhiambo WASHINGTON
-
Steffen Kaiser
-
Steven F Siirila
-
Stewart Dean