I hope you can lend me a hand with this!
I used to develop locally, but I'm abroad and I'm using Cloud9 to work with some projects. Currently, It's giving me a hard time with Action Mailer.
My ActionMailer Initializer:
ActionMailer::Base.smtp_settings = {
port: '2525',
address: 'smtp.mailgun.org',
user_name: ENV['MAILGUN_SMTP_LOGIN'],
password: ENV['MAILGUN_SMTP_PASSWORD'],
domain: 'app07ad98bdda3b4c469a24228512cffe5c.mailgun.org',
authentication: :plain,
content_type: 'text/html'
}
ActionMailer::Base.delivery_method = :smtp
mailers/gun_mailer.rb
class GunMailer < ActionMailer::Base
default from: "from@example.com"
def welcome_email(user)
@user = user
@url = 'http://example.com/login'
mail(to: @user.email, subject: 'Welcome to My Awesome Site')
end
end
views/gun_mailer/welcome_email.erb
<!DOCTYPE html>
<html>
<head>
<meta content='text/html; charset=UTF-8' http-equiv='Content-Type' />
</head>
<body>
<h1>Welcome to example.com, <%= @user.email %></h1>
<p>
You have successfully signed up to example.com,
your username is: <%= @user.email %>.<br>
</p>
<p>
To login to the site, just follow this link: <%= @url %>.
</p>
<p>Thanks for joining and have a great day!</p>
</body>
</html>
Console
u = User.first
GunMailer.welcome_email(u).deliver
I've set up the environment variables with figaro, and evrything seems to be correct... But the mail is never sent! I've heard that C9 has some ports blocked (587 being one of them), I've tried with 2587, 2525 (as other posters recommended), but It doesn't work!