J'essaie de faire fonctionner un Rails 5.2 mailer, mais je rencontre un Net::SMTPAuthenticationError - 535 Authentication failed: account disabled
erreur sur localhost
et sur mon environnement Heroku production
.
L'expéditeur ressemble à ceci:
class AdminNotificationsMailer < ApplicationMailer
default from: "[email protected]"
def new_rfp(rfp)
@rfp = rfp
mail(
:to => "[email protected]",
:subject => 'New RFP Alert!'
)
end
def new_contact_us(contact)
@contact = contact
mail(
to: "[email protected]",
subject: 'New Contact Us Submission on LPI'
)
end
end
Avec le déclencheur dans mon rfp#create action
(pour le premier expéditeur, le new_rfp
une):
def create
@rfp = Rfp.new(rfp_params)
respond_to do |format|
if @rfp.save!
AdminNotificationsMailer.new_rfp(@rfp).deliver
format.html { redirect_to root_path, notice: "Thanks for your request! We'll get back to you ASAP. Stay tuned!" }
format.json { render :show, status: :created, location: @rfp }
else
format.html { render :new }
format.json { render json: @rfp.errors, status: :unprocessable_entity }
end
end
end
J'ai provisionné Sendgrid et revérifié mon nom d'utilisateur et mon mot de passe avec puts
(c'est correct sur localhost et production).
J'ai ce qui suit dans mon environment.rb
:
ActionMailer::Base.smtp_settings = {
:user_name => ENV["SENDGRID_USERNAME"],
:password => ENV["SENDGRID_PASSWORD"],
:domain => 'linchpinindustries.com',
:address => 'smtp.sendgrid.net',
:port => 587,
:authentication => :plain,
:enable_starttls_auto => true
}
J'ai consulté des articles comme this et this , mais rien ne fonctionne.
Je suis officiellement perplexe. Quelqu'un peut-il voir pourquoi cette erreur se produit?
Pouvez-vous tester cette configuration? Il travaille sur mon projet.
ActionMailer::Base.smtp_settings = {
:address => "smtp.sendgrid.net",
:port => 465,
:domain => "vibol.xyz",
:ssl => true,
:enable_starttls_auto => true,
:authentication => :login,
:user_name => ENV['SENDGRID_USERNAME'],
:password => ENV['SENDGRID_PASSWORD']
}