How to Automate email system

I am using self based taiga and i am using without docker and in this case i am not able to add email notification so any idea how to do that i tried every possibility till now i am not able to reach on the perfect solution

Hi there,

Please do share what you tried. Email settings are configured on taiga-back’s settings.

Best regards!

from .common import * # base settings
import os
from kombu import Queue

DEBUG = True
PUBLIC_REGISTER_ENABLED = True

---------- Hosts / URLs ----------

SITES = {
“api”: {“domain”: ““scheme”: “http”, “name”: “api”},
“front”: {“domain”: “”, “scheme”: “http”, “name”: “front”},
}
ALLOWED_HOSTS = [”“localhost”, "]
CSRF_TRUSTED_ORIGINS = ["http:// ", "http:// "]

---------- Email (via Celery/djmail → SMTP) ----------

EMAIL_BACKEND = “djmail.backends.celery.EmailBackend”
DJMAIL_REAL_BACKEND = “django.core.mail.backends.smtp.EmailBackend”

EMAIL_HOST = “smtp.gmail.com
EMAIL_PORT = 587
EMAIL_USE_TLS = True
EMAIL_HOST_USER = -----
EMAIL_HOST_PASSWORD = ---- # 16-char Gmail App Password (no spaces)
DEFAULT_FROM_EMAIL = -----
EMAIL_TIMEOUT = 30

---------- Database ----------

DATABASES = {
“default”: {
“ENGINE”: “django.db.backends.postgresql”,
“NAME”: "
“USER”: "
“PASSWORD”: ",
“HOST”: "
“PORT”:
}
}

=========================

Static & Media (IMPORTANT for logos)

=========================

MEDIA_URL = “http:// /media/”
MEDIA_ROOT = “/home/taiga/taiga-back/media”
STATIC_URL = “/static/”
STATIC_ROOT = “/home/taiga/taiga-back/static”

---------- Celery / Redis ----------

CELERY_BROKER_URL = "redis://
CELERY_RESULT_BACKEND = "redis:// "
CELERY_TASK_ALWAYS_EAGER = True # must be False to use the worker

Make the worker consume the queues we need, and route djmail → tasks

CELERY_TASK_QUEUES = (
Queue(“tasks”),
Queue(“celery”), # some libs publish to the default ‘celery’ queue
Queue(“djmail”)) # declared for completeness
CELERY_TASK_DEFAULT_QUEUE = “tasks”
CELERY_TASK_ROUTES = {
“djmail.tasks.*”: {“queue”: “tasks”}}

---------- Secret key ----------

SECRET_KEY = “REPLACE_ME_WITH_get_random_secret_key()”

---------- Logging (handy while debugging) ----------

LOGGING = {
“version”: 1,
“disable_existing_loggers”: False,
“handlers”: {“console”: {“class”: “logging.StreamHandler”}},
“loggers”: {
“django”: {“handlers”: [“console”], “level”: “DEBUG”},
“django.request”: {“handlers”: [“console”], “level”: “DEBUG”, “propagate”: False},
“django.core.mail”: {“handlers”: [“console”], “level”: “DEBUG”},
“smtplib”: {“handlers”: [“console”], “level”: “DEBUG”},
},
}

print(“>>> LOADED settings.local”)
print(“>>> SITES =”, SITES)
print(“>>> BROKER =”, CELERY_BROKER_URL)
print(“>>> RESULT_BACKEND =”, CELERY_RESULT_BACKEND)

Hi again!

Gmail needs special configuration to allow third party apps to send email, like an app specific password.

More info here: Send email from a printer, scanner, or app - Google Workspace Admin Help

Best!