Настройка электронной почты

Электронная почта в LICANT-IT

LICANT-IT использует электронную почту для оповещения пользователей и отправки сообщений (например, при создании пользователя, отправке лицензии/серийного номера, уведомлениях о действиях в личном кабинете, восстановлении пароля).

В системе важно разделять два разных типа адресов электронной почты:

Фактически это может быть один адрес, но настраиваются они отдельно!

1) System From (системный отправитель)

Для чего используется

Где настраивается

В настройках Django (обычно через .env/переменные окружения -> settings.py):

Правило выбора:

  1. если задан DEFAULT_FROM_EMAIL - используем его
  2. иначе используем EMAIL_HOST_USER

2) LicenseOwner.email (контактный email владельца лицензии)

Для чего используется

Где настраивается

В админке: Администрирование -> LICANT -> Владелец лицензии (обычно запись №1)

Пример URL: /admin/licant/licenseowner/1/change/

3) SMTP-настройки (параметры подключения)

Основные параметры

Важно: SSL и TLS нельзя включать одновременно

Нельзя ставить EMAIL_USE_SSL=True и EMAIL_USE_TLS=True одновременно. Это приводит к ошибке отправки.

Типовые схемы

4) Где посмотреть текущие email-настройки в Панели администратора

Настройки -> Настройки почтового сервера (пример URL: /admin/settings/email/)

На странице отображаются: - текущие значения SMTP-настроек из settings - системный отправитель (From) - пароль скрыт (**) - кнопка тестового письма - проверки согласованности настроек

5) Email-шаблоны и переменные

Письма формируются на основе шаблонов EmailTemplate (тема и HTML-тело письма).

В шаблоны обычно передается объект license_owner, поэтому можно использовать: - {{ license_owner.email }} - контактный email владельца лицензии

Примечание: Переменные в шаблоне не определяют "кто отправитель" письма. Отправитель задается на уровне SMTP/системных настроек (System From).

6) Типовые проблемы и диагностика

Ошибка: EMAIL_USE_TLS/EMAIL_USE_SSL are mutually exclusive

Причина: одновременно включены и SSL, и TLS. Решение: оставить только один режим (см. схемы выше).

Ошибка SMTP 550 (Sender refused / local domains only)

Причина: SMTP-сервер разрешает отправку только от реальных ящиков/локальных доменов. Решение: DEFAULT_FROM_EMAIL должен быть разрешенным адресом на этом SMTP (обычно тем же, что EMAIL_HOST_USER). LicenseOwner.email при правильной настройке остается контактным адресом/Reply-To.

7) Быстрая проверка

  1. Открой /admin/settings/email/
  2. Нажми "Отправить тестовое письмо"
  3. Убедись, что письмо пришло на EMAIL_HOST_USER
  4. При необходимости проверь заголовки письма:
  5. From = DEFAULT_FROM_EMAIL/EMAIL_HOST_USER
  6. Reply-To (если используется) = LicenseOwner.email