Ini adalah solusi murah bagi mereka yang ingin menggunakan GMAIL sebagai SMTP server di aplikasi railsnya, apalagi seperti yang sudah kita ketahui, Inbox GMAIL gratis dan space-nya yang lumayan GD (2 GB)
Normalnya action mailer tidak akan bisa menggunakan GMAIL sebagai SMTP server, karena GMAIL menggunakan protokol TLS, di mana protokol ini anak meng-enkripsi data email ketika dikirimkan, namun beruntunglah sthephen chu sudah membuatkan plugin-nya untuk kita semua yang berfungsi untuk mengirim email via TLS
Nama pluginnya action_mailer_tls, bisa langsung diinstall di aplikasi RAILS_ROOT anda dengan cara sebagai berikut
$ ruby script/plugin install http://svn.nanorails.com/plugins/action_mailer_tls/
lalu buka RAILS_ROOT/config/environtment.rb
masukan script ini (hanya contoh, value-nya sesuaikan dengan kebutuhan)
ActionMailer::Base.delivery_method = :smtp
ActionMailer::Base.server_settings = {
:address => \"smtp.gmail.com\",
:port => 587,
:domain => \"gmail.com\",
:authentication => :plain,
:user_name => \"sayah\",
:password => \"s4y4hg4nt3ngs3k4l1\"
}
lalu buat kode action mailernya
ruby script/generate welcome_mailer
buka filenya RAILS_ROOT/app/model/welcome_mailer.rb
masukan script sepert ini (contoh, ganti valuenya sesuai kebutuhan)
class WelcomeMailer < ActionMailer::Base
def confirm
@subject = 'test euy'
@recipients = aditya_jamop@yahoo.com
@sent_on = Time.now
@headers = {}
@body = "gwe ngirim email via GMAIL menggunakan Rails euy, salam semoga PERSIB jaya selalu"
end
def sent
@subject = 'test euy'
@recipients = aditya_jamop@yahoo.com
@sent_on = Time.now
@headers = {}
@body = "gwe ngirim email via GMAIL menggunakan Rails euy, salam semoga PERSIB jaya selalu "
end
end
buka file RAILS_ROOT/config/environtments/development.rb
pastikan settingan config.action_mailer.raise_delivery_errors=true supaya kalo ada error bisa keliatan di log/development.rb
nah skrng coba dilakukan pengetesan, masuk ke RAILS_ROOT (pakek console/terminal)
$ ruby script/console
Loading development environment.
>>
kalo promptnya dah muncul tinggal ketik
>> WelcomeMailer.deliver_sent
…..
…..
…..
…..
…..
writing message from String
wrote 372 bytes
-> “250 2.0.0 OK 1190183653 k39sm664813wah\r\n”
< - "QUIT\r\n"
-> “221 2.0.0 mx.google.com closing connection k39sm664813wah\r\n”
=> #bodyport=#
nah kalau messagenya yang terakhir kira2 muncul kayak di atas gitu, artinya itu berhasil, kalo nggak percaya silahkan cek saja di Inbox-nya, coba cek juga di SPAM folder, kadang2 suka masuk ke situ
btw, kalo program yang anda bikin masih ada error, itu kemungkinan ruby net/ssh -nya belum keinstall, install aja dulu, caranya
gem install net-ssh
demikian, semoga berguna
arie
October 9, 2007 3:32 pm
itu pasti salah ketik / ada yang kurang, yaitu perintah mailer . jadi yang betul :