APNelson.L
6/21/2008 1:13:00 AM
Hi, I was just wondering how i would write a ruby script to send an
email using the gmail smtp. Here is what I have so far:
require 'rubygems'
require 'action_mailer'
class SimpleMailer < ActionMailer::Base
def simple_message(recipient)
from 'my_email@gmail.com'
recipients recipient
subject 'yay I just sent this'
body 'hope this works'
end
end
ActionMailer::Base.smtp_settings = { :address =>
'smtp.gmail.com', :port => '25', :user_name =>
'my_email@gmail.com', :password => 'my_password', :authentication =>
'login' }
SimpleMailer.deliver_simple_message('other_email@gmail.com')
Unfortunately, when run I get these error messages:
ruby mail.rb
/usr/local/lib/ruby/1.8/net/smtp.rb:680:in `check_response': 530 5.7.0
Must issue a STARTTLS command first. z80sm1963933pyg.31
(Net::SMTPUnknownError)
from /usr/local/lib/ruby/1.8/net/smtp.rb:582:in `auth_login'
from /usr/local/lib/ruby/1.8/net/smtp.rb:686:in `critical'
from /usr/local/lib/ruby/1.8/net/smtp.rb:581:in `auth_login'
from /usr/local/lib/ruby/1.8/net/smtp.rb:571:in `__send__'
from /usr/local/lib/ruby/1.8/net/smtp.rb:571:in `authenticate'
from /usr/local/lib/ruby/1.8/net/smtp.rb:411:in `do_start'
from /usr/local/lib/ruby/1.8/net/smtp.rb:378:in `start'
from /usr/local/lib/ruby/1.8/net/smtp.rb:316:in `start'
from /usr/local/lib/ruby/gems/1.8/gems/actionmailer-2.1.0/lib/
action_mailer/base.rb:627:in `perform_delivery_smtp'
from /usr/local/lib/ruby/gems/1.8/gems/actionmailer-2.1.0/lib/
action_mailer/base.rb:508:in `__send__'
from /usr/local/lib/ruby/gems/1.8/gems/actionmailer-2.1.0/lib/
action_mailer/base.rb:508:in `deliver!'
from /usr/local/lib/ruby/gems/1.8/gems/actionmailer-2.1.0/lib/
action_mailer/base.rb:383:in `method_missing'
from mail.rb:15