46 lines
1.4 KiB
Python
46 lines
1.4 KiB
Python
"""
|
|
Outgoing email pentru DiDi — cont SMTP implicit (Mailpit in test, SendGrid in
|
|
productie: schimbi smtp_server/port/credentiale, restul ramane).
|
|
|
|
Rulare:
|
|
docker exec didi-erpnext bench --site didi-erp execute didi_custom.setup_email.execute
|
|
Test trimitere:
|
|
docker exec didi-erpnext bench --site didi-erp execute didi_custom.setup_email.send_test
|
|
"""
|
|
import frappe
|
|
|
|
ACCOUNT_NAME = "DiDi Outgoing"
|
|
|
|
|
|
def execute():
|
|
if frappe.db.exists("Email Account", ACCOUNT_NAME):
|
|
acc = frappe.get_doc("Email Account", ACCOUNT_NAME)
|
|
else:
|
|
acc = frappe.new_doc("Email Account")
|
|
acc.email_account_name = ACCOUNT_NAME
|
|
acc.update({
|
|
"email_id": "noreply@didi.clossers.com",
|
|
"enable_outgoing": 1,
|
|
"default_outgoing": 1,
|
|
"smtp_server": frappe.conf.get("didi_smtp_server") or "didi-mailpit",
|
|
"smtp_port": int(frappe.conf.get("didi_smtp_port") or 1025),
|
|
"use_tls": 0,
|
|
"use_ssl": 0,
|
|
"no_smtp_authentication": 1,
|
|
"enable_incoming": 0,
|
|
})
|
|
acc.flags.ignore_permissions = True
|
|
acc.save()
|
|
frappe.db.commit()
|
|
print(f"OK: Email Account '{acc.name}' -> {acc.smtp_server}:{acc.smtp_port} (default outgoing)")
|
|
|
|
|
|
def send_test():
|
|
frappe.sendmail(
|
|
recipients=["test@didi.local"],
|
|
subject="Test SMTP DiDi",
|
|
message="<p>Email de proba prin Mailpit.</p>",
|
|
delayed=False,
|
|
)
|
|
frappe.db.commit()
|
|
print("OK: email de test trimis")
|