use IMAPSIEVE to update database with last_read date

Stephan Bosch stephan at rename-it.nl
Wed Nov 30 10:37:28 UTC 2016



Op 29-11-2016 om 19:29 schreef KT Walrus:
> Just noticed the Dovecot support IMAPSIEVE extension…
>
> Could I use this extension to update an external database with the date that the user last read the message?

No, IMAPSieve is only triggered by modifications: APPEND, COPY, MOVE and 
STORE.

> My app sends certain “notification” messages to the user’s dovecot mail address. The user reads the messages in their dovecot mailboxes only using IMAP. I want to update my app’s database to record this read time for all “notification” messages sent by the app.
>
> Seems to me I could write a short sieve script to send a “notify” message to an app specific address that my app “watches” and updates the appropriate database record with the last_read time.
>
> Is this workable for production deploy?
>
> Or, is there a better way for a sender to be notified when the recipient actually reads the message? The sender will be my app and the recipient is a dovecot mailbox accessed by IMAP.

I don't see a solution at this time. You'd need to use some derivative 
of the notify plugin to do something like this. But afaik it doesn't 
exist. The push-notification plugin comes close though.

Regards,

Stephan.



More information about the dovecot mailing list