Search the Community
Showing results for tags 'mail'.
-
Sveiki! Kā uz Linux Ubuntu VPS uzstādīt e-pasta serveri, lai varētu nosūtīt un saņemt e-pastus? example@example.com Varbūt kāds var pateikt priekšā, kas ir jāinstalē un kā pareizi viss ir jāuzstāda.
-
Mērķis ir izveidot iekšēju e-pastu izsūtīšanas sistēmiņu. Pamatā ir 3 veidu e-pasti: Jaunumu izsūtīšana (čupa ar e-pastiem, nav personalizēti) Pēc pieprasījuma. Reģistrācijas apstiprinājumi, paroles atjaunošana, etc. (pa 1 e-pastam, personalizēts) Ieplānotie ziņojumi. Konta termiņu, neapmaksātu rēķinu atgādinājumi, etc. (čupa ar e-pastiem, personalizēti, tiek pildīti ikdienišķi noteiktos laikos) Kā plānoju realizēt Ir tabula mail_messages, kurā glabājas ziņojumu templeiti, ziņojumam tiek pakārtots TIPS, kas ir, piemēram, "newsletter", "bill_reminder", "new_password_notification". Ziņojuma tekstā ir savadīti arī parametri, piemēram, {name}, {bill_number}, kas attiecīgi tiek aizpildīti, kad tiek sūtīti e-pasti. Kā tas viss varētu strādāt Jaunumu izsūtīšana Administrators atver paneli, izvēlās (pievieno) vajadzīgā tipa ziņojumu, konkrēti, "newsletter", klikšķina - "create new job" un norāda cikos šiem ziņojumiem būtu jāsāk izsūtīties. Tabulā mail_jobs tiek pievienots ieraksts ar ieplānotu darbu. Ziņojumu "pēc pieprasījuma" izsūtīšana Notiek notikums, paņemam no tabulas attiecīgā tipa ziņojumu, nopārsējam parametrus un uzreiz izsūtam e-pastu. Ieplānoto ziņojumu izsūtīšana Crons izsauc noteiktā laikā skriptu, kas pievieno ierakstu mail_jobs tabulai, norādot kāda tipa ziņojums ir jāsūta, piemēram, visi neapmaksāto rēķinu atgādinājumi. Ziņojumu izsūtīšana Ir Cron skripts (sauksim par mail_job_processor), kas izpildās, piemēram, ik pa 10 minūtēm. Skatās, vai mail_jobs tabulā nav ienācis kāds jauns sūtīšanas darbs. Ja ir, tad skatamies, kāds ziņojums ir jāsūta. Balstoties uz ziņojuma tipu, atlasam attiecīgo saņēmēju datus (e-pastus, citus parametrus), pārsējam ziņojuma tekstus un izsūtam pa vienam. Varētu būt arī tā, ka atsevišķā tabulā saglabājam šim job'am visus e-pastu saņēmējus ( + stāvokli - vai e-pasts ir nosūtīts, parametri), lai, ja nu gadās kļūda (serveris atmet kātus uz mirkli), šo darbu var turpināt nākošajā mail_job_processor izsaukšanas brīdī. Ceru uz diskusiju, ieteikumiem. Zinu, ka ir variants outsourcēt konkrēti pašu izsūtīšanu, bet pagaidām tiek meklēts lētākais risinājums.