MailRoom, Now With Sidekiq and Que Support
Before today, MailRoom primarily delivered mail messages from IMAP via a POST request to an API you configure. Now, thanks to the work of Douwe Maan (for a GitLab feature), there are delivery methods for enqueuing work into redis or postgresql to be handled by your own Sidekiq or Que workers!
Along with these brand new strategies, we have lots of bug fixes and new features in MailRoom:
- Mailboxes can be configured to DELETE a message after receiving it.
- The mailbox will be checked immediately upon startup for any unread messages.
- All IOErrors will be handled, not just EOFErrors.
- Brand new configuration, due to expanded options for Sidekiq and Que delivery.
Configuration new looks more like this:
:mailboxes:
-
:email: "user1@gmail.com"
:password: "password"
:name: "inbox"
:search_command: 'NEW'
:delivery_method: que
:delivery_options:
:host: localhost
:port: 5432
:database: mail_room_development
:username: username
:password: password
:queue: default
:priority: 5
:job_class: EmailParseJob
The delivery_options
section is new, and holds all options specific to the chosen delivery method. Check out the README for Sidekiq and Que to see all the new options.
All existing configuration will continue to work for the foreseeable future, so have no fear when upgrading to the latest version.
I hope this makes using MailRoom even easier. Please help me in thanking Douwe Maan for his excellent work on the Sidekiq delivery method! I’m very excited to see GitLab using MailRoom.
If you have any questions or requests, please open an issue, or chat with me on Twitter.