feat: email notifications with tabbed channel UI (v0.9.10)
Add email as a second notification channel alongside ntfy: - Tabbed channel selector: ntfy | Email | Telegram (coming soon) | Discord (coming soon) - Active channel shown with green status dot on tab - Email tab: address input, Save & Enable, Test, Disable — same UX pattern as ntfy - Backend: SMTP config in settings (SMTP_HOST/PORT/USER/PASSWORD/FROM/STARTTLS) - Dispatcher: _send_email() helper wired into dispatch_notifications - POST /api/notifications/test/email endpoint with descriptive error messages - Email fires in same window as ntfy (respects quiet hours / digest hold) - Telegram and Discord tabs show coming-soon banners with planned feature description - .env.example documents all SMTP settings with provider examples Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
14
.env.example
14
.env.example
@@ -59,3 +59,17 @@ NEWSAPI_KEY=
|
||||
|
||||
# ─── Google Trends ────────────────────────────────────────────────────────────
|
||||
PYTRENDS_ENABLED=true
|
||||
|
||||
# ─── SMTP (Email Notifications) ───────────────────────────────────────────────
|
||||
# Leave SMTP_HOST blank to disable email notifications entirely.
|
||||
# Supports any standard SMTP server (Gmail, Outlook, Postmark, Mailgun, etc.)
|
||||
# Gmail example: HOST=smtp.gmail.com PORT=587 USER=you@gmail.com (use App Password)
|
||||
# Postmark example: HOST=smtp.postmarkapp.com PORT=587 USER=<api-token> PASSWORD=<api-token>
|
||||
SMTP_HOST=
|
||||
SMTP_PORT=587
|
||||
SMTP_USER=
|
||||
SMTP_PASSWORD=
|
||||
# From address shown in the email header — defaults to SMTP_USER if blank
|
||||
SMTP_FROM=
|
||||
# Set to false only if your SMTP server uses implicit TLS on port 465
|
||||
SMTP_STARTTLS=true
|
||||
|
||||
Reference in New Issue
Block a user