非同期の電子メール ジョブをスケジュールしようとしています。キューイングメカニズムとしてdjango-rqを使用しています。パスワードの変更、パスワードが正しいことの確認など、数多くの修正を試みました。REPL 経由で SMTP を手動で送信できます。
更新 #1: 私が確認できる限り、設定はワーカーによって正しく取得されています。ジョブは正しい値を正しく取得しsettings.DEFAULT_FROM_EMAIL
、send_mail の引数として正しい電子メール アドレスを設定します。
次のコードは正常に動作します (django-rq なし):
send_mail(
newClaim.linkedOffer.commsPromoHeadline,
msg_plain,
settings.DEFAULT_FROM_EMAIL,
[newRecipient.email],
html_message=msg_html,
)
次のコードは SMTP 認証エラーを生成します (下にトレースバック):
django_rq.enqueue(
send_mail,
newClaim.linkedOffer.commsPromoHeadline,
msg_plain,
settings.DEFAULT_FROM_EMAIL,
[newRecipient.email],
html_message=msg_html,
)
トレースバック:
Traceback (most recent call last):
File "/home/user1/webapps/dev_django_platform/ENV/lib/python2.7/site-packages/rq/worker.py", line 568, in perform_job
rv = job.perform()
File "/home/user1/webapps/dev_django_platform/ENV/lib/python2.7/site-packages/rq/job.py", line 495, in perform
self._result = self.func(*self.args, **self.kwargs)
File "/home/user1/webapps/dev_django_platform/lib/python2.7/Django-1.7.7-py2.7.egg/django/core/mail/__init__.py", line 62, in send_mail
return mail.send()
File "/home/user1/webapps/dev_django_platform/lib/python2.7/Django-1.7.7-py2.7.egg/django/core/mail/message.py", line 286, in send
return self.get_connection(fail_silently).send_messages([self])
File "/home/user1/webapps/dev_django_platform/lib/python2.7/Django-1.7.7-py2.7.egg/django/core/mail/backends/smtp.py", line 92, in send_messages
new_conn_created = self.open()
File "/home/user1/webapps/dev_django_platform/lib/python2.7/Django-1.7.7-py2.7.egg/django/core/mail/backends/smtp.py", line 59, in open
self.connection.login(self.username, self.password)
File "/usr/local/lib/python2.7/smtplib.py", line 622, in login
raise SMTPAuthenticationError(code, resp)
SMTPAuthenticationError: (535, '5.7.3 Authentication unsuccessful')
例外がスローされるのはなぜですか?どうすれば修正できますか?