Skip to content


Subversion checkout URL

You can clone with
Download ZIP
A delivery agent for Mailhopper that uses DelayedJob to queue and deliver email.
Ruby JavaScript
Fetching latest commit...
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.
app/models/delayed_mailhopper simplified enqueue() - save! not needed
config initial commit
lib Bump to 0.0.7
.rspec converted to rspec
.travis.yml added before_script to migrate test db properly for travis
Gemfile initial commit
delayed_mailhopper.gemspec gemspec cleanup

DelayedMailhopper Build Status

DelayedMailhopper provides a simple solution to queue, deliver and archive emails in Rails apps. It extends Mailhopper and uses DelayedJob to queue delivery jobs asynchronously.


  • Rails 3.1+
  • DelayedJob
  • Mailhopper


Add to your project's Gemfile:

gem 'delayed_mailhopper'

Install with bundler (note: also installs dependencies such as DelayedJob and Mailhopper):

bundle install

Configure Mailhopper

If you haven't already, you'll need to run generators for Mailhopper and then migrate your database.

rails g mailhopper
rake db:migrate

Configure DelayedJob

ActiveRecord Backend

Add the gem to your Gemfile:

gem 'delayed_job_active_record'

Run the generator to create the migration for the delayed_job table.

rails g delayed_job:active_record
rake db:migrate

see the README:

Mongoid backend

Add the gem to your Gemfile:

gem 'delayed_job_mongoid'

Create the indexes (and don't forget to do this on your production database):

script/rails runner 'Delayed::Backend::Mongoid::Job.create_indexes'

see the README:


If you've cleared your delayed job queue and need to regenerate jobs for all unsent emails, try the following from your Rails console (rails c):

DelayedMailhopper::Email.unsent.each { |email| email.enqueue }


Please see the README for Mailhopper:

And for DelayedJob:


Copyright (c) 2011 Cerebris Corporation. This is free software released under the MIT License (see MIT-LICENSE for details).

Something went wrong with that request. Please try again.