Конфигурация Django SMTP для отправки электронной почты

Я уже настроил электронную почту. Он работал отлично, но через некоторое время он не работает и не отправляет почту. Я не знаю, где возникла проблема. Может ли кто-нибудь помочь мне с этим?

EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend'

EMAIL_USE_TLS = True
EMAIL_HOST = 'smtp.gmail.com'
EMAIL_PORT = 587
EMAIL_HOST_USER = 'myemail'
EMAIL_HOST_PASSWORD = 'mypass'

вот мой код функции электронной почты:

def my_email():
    order = Order.objects.filter(createdAt__gt=Now()-timedelta(minutes=1))
    p = str(settings.BASE_DIR)
    with open(p + '/templates/email.html') as f:
        order_message = f.read()
    for o in order:
        print(o._id)
        email = EmailMultiAlternatives(subject='Thank you', body=order_message, from_email='laksura.com.bd@gmail.com', to=['sohanur.shanto@northsouth.edu'] )
        html_template = get_template('email.html').render()
        html_template = render_to_string('email.html', {'name': o.user, 'order_id': o._id, 'total': o.totalPrice, 'created': o.createdAt})
        email.attach_alternative(html_template, "text/html")
        email.send()

Я получаю эту ошибку

new_conn_created = self.open()
  File "C:\Python39\lib\site-packages\django\core\mail\backends\smtp.py", line 62, in open
    self.connection = self.connection_class(self.host, self.port, **connection_params)
  File "C:\Python39\lib\smtplib.py", line 255, in __init__     
    (code, msg) = self.connect(host, port)
  File "C:\Python39\lib\smtplib.py", line 341, in connect      
    self.sock = self._get_socket(host, port, self.timeout)     
  File "C:\Python39\lib\smtplib.py", line 312, in _get_socket  
    return socket.create_connection((host, port), timeout,     
  File "C:\Python39\lib\socket.py", line 843, in create_connection
    raise err
  File "C:\Python39\lib\socket.py", line 831, in create_connection
    sock.connect(sa)
TimeoutError: [WinError 10060] A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond

По умолчанию Gmail блокирует использование Gmail менее безопасными приложениями. Вам придется изменить эту настройку, если вы хотите использовать Django-mail.

enter image description here

Если вы не измените этот параметр, Gmail не позволит вашей учетной записи отправлять почту через веб-приложение Django.

Вернуться на верх