Forum: Ruby on Rails Ruby 1.8.7 + Rails 2.3.2 + TLS = Where's the documentation?

Posted by obiwan chinobi (dmht81)
on 2009-04-13 16:01
After spending a few hours reading dozens of blogs and tutorials I am
still stumped. Numerous sites mention ruby 1.8.7 and rails 2.3
supporting TLS out of the box. However, I can not find any documentation
on setting this up to send emails correctly. Furthermore, after
attempting to send emails using Gmail and TLS i get the following error:

530 5.7.0 Must issue a STARTTLS command first. i6sm501424tid.20

/usr/local/lib/ruby/1.8/net/smtp.rb:942:in `check_auth_response'
/usr/local/lib/ruby/1.8/net/smtp.rb:733:in `auth_plain'
/usr/local/lib/ruby/1.8/net/smtp.rb:725:in `send'
/usr/local/lib/ruby/1.8/net/smtp.rb:725:in `authenticate'
/usr/local/lib/ruby/1.8/net/smtp.rb:566:in `do_start'
/usr/local/lib/ruby/1.8/net/smtp.rb:525:in `start'

Can anyone point me in the right direction?!

Thanks in advance!

I have the following configuration in my
config/environments/development.rb:
# Don't care if the mailer can't send
config.action_mailer.raise_delivery_errors = true

# set delivery method to :smtp, :sendmail or :test
config.action_mailer.delivery_method = :smtp

# these options are only needed if you choose smtp delivery
config.action_mailer.smtp_settings = {
  :address        => 'smtp.gmail.com',
  :enable_starttls_auto => true,
  :port           => 587,
  :domain         => '...',
  :authentication => :login,
  :user_name      => '...',
  :password       => 'secret'
}
Posted by Rick (Guest)
on 2009-04-13 22:11
(Received via mailing list)
Looks like you have a :user_name misspecified, this is meant to be the
gmail user account that will be used to send the email and must be a
valid gmail account.

Here's what I use as: config/initializers/action_mailer.rb:

ActionMailer::Base.delivery_method = :smtp

ActionMailer::Base.smtp_settings = {
   :enable_starttls_auto => true,
   :address => "smtp.gmail.com",
   :port => "587",
   :domain => "engine.local",
   :authentication => :plain,
   :user_name => "bultaco.rick",
   :password => "*************"
 }

I've tried your method - config.... in config/environments/
development.rb works as well.

ActionMailer::Base in actionmailer-2.3.2/rdoc has a section on
configuration options.
On Apr 13, 4:01 am, obiwan chinobi <rails-mailing-l...@andreas-s.net>
Posted by obiwan chinobi (dmht81)
on 2009-04-13 23:10
Rick wrote:
> Looks like you have a :user_name misspecified, this is meant to be the
> gmail user account that will be used to send the email and must be a
> valid gmail account.
> 

Very strange... Now I am getting the error:
Net::SMTPAuthenticationError (535-5.7.1 Username and Password not 
accepted

I have tried changing the value of :user_name to 'info' as well, same 
error...
Posted by Rick (Guest)
on 2009-04-14 03:25
(Received via mailing list)
I'm not sure what you mean by "changing the value of :user_name to
'info'..." but here's the deal.

Whatever you use as the value associated with :user_name I should be
able to sent it mail at gmail.  For instance, if you say...

:user_name => "monkeylips"

I should be able to send an email (with attached banana) to
monkeylips@gmail.com

Got it?

On Apr 13, 11:10 am, obiwan chinobi <rails-mailing-l...@andreas-s.net>
Posted by Rick (Guest)
on 2009-04-14 03:25
(Received via mailing list)
I'm not sure what you mean by "changing the value of :user_name to
'info'..." but here's the deal.

Whatever you use as the value associated with :user_name I should be
able to sent it mail at gmail.  For instance, if you say...

:user_name => "monkeylips"

I should be able to send an email (with attached banana) to
monkeylips@gmail.com

Got it?

On Apr 13, 11:10 am, obiwan chinobi <rails-mailing-l...@andreas-s.net>
Posted by obiwan chinobi (dmht81)
on 2009-04-14 16:25
> 
> # these options are only needed if you choose smtp delivery
> config.action_mailer.smtp_settings = {
>   :address        => 'smtp.gmail.com',
>   :enable_starttls_auto => true,
>   :port           => 587,
>   :domain         => '...',
>   :authentication => :login,
>   :user_name      => '...',
>   :password       => 'secret'
> }

Correct configuration to get this working is:
config.action_mailer.smtp_settings = {
    :enable_starttls_auto => true,
    :address        => 'smtp.gmail.com',
    :port           => 587,
    :domain         => 'your.domain.com',
    :authentication => :plain,
    :user_name      => 'name@your.domain.com',
    :password       => 'password'
}
Please log in before posting. Registration is free and takes only a minute.
Existing account (Switch to SSL-encrypted connection)
NEW: Do you have a Google/GoogleMail or Yahoo account? No registration required!
Log in with Google account | Log in with Yahoo account
No account? Register here.