Ruby senden von E-mail per gmail smtp
Ich bin momentan dabei, ein ruby-Skript, das überprüft, der Antwort-status, eine url und, wenn es gleich mit 504, sendet er eine E-mail an eine andere E-Mail-Adresse. Aus irgendeinem Grund, bekomme ich diese: /usr/lib/ruby/1.9.1/net/smtp.rb:960:in 'check_auth_response': 534-5.7.14 <https://accounts.google.com/ContinueSignIn?sarp=1&scc=1&plt=AKgnsbv9z (Net::SMTPAuthenticationError)
Ich quadra überprüft die Authentifizierungsdaten, und Sie sind gültig. Vielleicht kann es etwas falsch in dem code:
require 'mail'
options = { :address => "smtp.gmail.com",
:port => 587,
:user_name => '<myusername>',
:password => '<mypassword>',
:authentication => 'plain',
:enable_starttls_auto => true }
Mail.defaults do
delivery_method :smtp, options
end
Mail.deliver do
to '[email protected]'
from '[email protected]'
subject 'Test'
body 'Hurray!!! Test email!'
end
Oh auch, ich bekam den Hinweis von google, dass eine weniger sichere app versucht Zugriff auf mein Konto, damit ich einrichten, dass weniger sichere apps verwenden können, mein Konto.
- Ich hoffe, dass Sie das lösen und schreiben eine gute Antwort! Ich hatte auch Probleme damit in der Vergangenheit, gelöst durch ein Wunder oder Google Teufelei, und sofort alles vergessen.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wenn Sie nicht Verwendung von 2-Faktor-Authentifizierung
Gehen Sie zu diesem link:
https://www.google.com/settings/security/lesssecureapps
"Und wählen Sie:
"Zugriff für weniger sichere apps"
als pro:
https://support.google.com/accounts/answer/6010255?hl=en
In diesem Fall würden Sie mit Ihrem normalen E-Mail und Passwort zu verbinden.
Wenn Sie sind Verwendung von 2-Faktor-Authentifizierung
Müssen Sie ein app-spezifisches Passwort für Ihre Anwendung. Gehen Sie folgendermaßen vor:
Klicken Sie Auf 'Generieren'. Ein Passwort wird generiert. Kopieren Sie das Passwort und ersetzen Sie das Passwort, das Sie verwenden in Ihrem Optionen-hash mit dem generierten Kennwort:
options = { :Adresse => "smtp.gmail.com",
:port => 587,
:user_name => ",
:password => ",
:Authentifizierung => 'plain',
:enable_starttls_auto => true }
Dass sollte es sein. Ich habe gerade versucht dies und es funktionierte für mich.
Auch stellen Sie sicher, dass Ihr Benutzername ist Ihre vollständige gmail-E-Mail-Adresse.
Finden Sie auch die 'Offiziellen docs' hier: https://support.google.com/accounts/answer/185833?hl=en