murch at andrew.cmu.edu
Mon Dec 5 14:53:25 EST 2005
Kris McNeil wrote:
> I'm working with a Cyrus IMAP4 server and am looking for a way to
> configure the server to notify my email client when new mail arrives
> (without the client having to poll the server). I have read about
> Zephyr and the ability to receive 'new mail' notifications, but it
> seems that Zephyr will only provide basic information about the new
> message(s), i.e. the sender & recipient addresses and the subject. I'm
> actually looking for a way for the server to send the IMAP4 message
> UID as part of the notification so that the client can then easily
> fetch the correct message without performing any searches.
> Is there a mechanism in IMAP4, or Cyrus specifically, that is capable
> of this, or perhaps any third party software that could do this for a
> Cyrus server? The end goal is to simultaneously monitor thousands of
> mailboxes for new email without burdening the server(s) any more than
> is absolutely necessary - server-initiated notification is obviously
> preferred over client-initiated polling.
You could use Sieve notifications for delivery. Unfortunately, the
current implementation doesn't include the UID of the message. Its been
a while since I looked at that part of the code so I can't say how
easy/difficult it would be to modify it.
> Similarly, I'm also looking for a way to be notified of message flag
> changes, such as when email has been read, unread or deleted. Do you
> have any suggestions for this, aside from using IMAP4 to poll (or use
> IDLE) for untagged responses?
There is no current way to do this without using IDLE or polling with
NOOP. You might want to keep your eye on the IETF LEMONADE WG which is
doing some work in this area.
Carnegie Mellon University
More information about the Info-cyrus