This gem makes it trivial to send email through a Gmail account or a Google Apps for business email account.
This gem will only work on Ruby 1.8.6. If you're on Ruby 1.8.7 and Rails >= 2.2.1, you don't need this gem. See Notes below.
To install the gem (the preferred way):
sudo gem install openrain-action_mailer_tls -s http://gems.github.com
./script/generate action_mailer_tls
- Copy RAILS_ROOT/config/smtp_gmail.yml.sample to RAILS_ROOT/config/smtp_gmail.yml
- Update the configuration file with your settings
To (optionally) vendor this gem:
- Add the following entry to config/environment.rb * config.gem "openrain-action_mailer_tls", :lib => "smtp_tls.rb", :source => "http://gems.github.com"
- rake gems:unpack
To install the plugin (the old way):
./script/plugin install git://github.com/openrain/action_mailer_tls.git -r 'tag v1.0.0'
- Copy vendor/plugins/action_mailer_tls/sample/smtp_gmail.rb to config/
- Copy vendor/plugins/action_mailer_tls/sample/mailer.yml.sample to config/
- Update the configuration file with your settings
./script/generate mailer Notifier hello_world
- Add the following lines to config/environments/development.rb * config.action_mailer.raise_delivery_errors = true * config.action_mailer.perform_deliveries = true * config.action_mailer.delivery_method = :smtp
- Update the recipients and from fields in app/models/notifier.rb
./script/console
Notifier.deliver_hello_world!
Blog posts
Books
- This gem was also featured in Advanced Rails Recipes pg. 238, Recipe #47.
If you're running Rails >= 2.2.1 [RC2] and Ruby 1.8.7, you don't need this gem. Ruby 1.8.7 supports SMTP TLS and Rails 2.2.1 ships with an option to enable it if you're running Ruby 1.8.7.
To set it all up, in config/initializers/smtp_gmail.rb, make sure to set :enable_starttls_auto
to true
.
ActionMailer::Base.smtp_settings = {
:address => "smtp.gmail.com",
:port => 587,
:authentication => :plain,
:enable_starttls_auto => true,
:user_name => "noreply@gmail_or_your_google_domain.com",
:password => "chucknorris"
}
For more information on this feature, check out the commit log
- Marc Chung - marc [dot] chung [at] openrain [dot] com