sendEml.js 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. /**
  2. * ОТПРАВКА E-MAIL
  3. * Copyright © 2021, А.М.Гольдин. ISC license
  4. */
  5. "use strict";
  6. // Настройки (имя сервера, пароль и пр.) - в config.json
  7. // Возвращает messageId или false
  8. // Вызов: let resEml = await sendEml("vasya@pupkin.ru", "Тема", "Текст письма")
  9. const mailer = require("nodemailer");
  10. module.exports = async (rcpt, subj, body) => {
  11. body += "\n\nС уважением,\nредакция сайта lycArch.urfu.ru.\n\n"
  12. + "-----\nДанное письмо сгенерировано автоматически, пожалуйста, не "
  13. + "отвечайте на него. Если вы получили письмо по ошибке, либо хотите "
  14. + "связаться с редакцией сайта, используйте email lycarch@urfu.ru\n";
  15. // Временная заглушка
  16. // console.info(`\n===Письмо\n${rcpt}\n${subj}\n${body}`);
  17. // return "id-000222";
  18. // ---
  19. try {
  20. let transp = mailer.createTransport({
  21. host: SMTPSRV, port: SMTPPORT, secure: false,
  22. auth: {user: SMTPUS, pass: SMTPPWD}
  23. });
  24. let replAddr = `"Архив публикаций СУНЦ" <${SMTPUS}@`
  25. + `${SMTPSRV.split('.').slice(1).join('.')}>`,
  26. bodyHTML = "<p>"
  27. + body.replace(/\r/g, '').replace(/\n/g, "<br>")
  28. + "</p>";
  29. let res = await transp.sendMail({
  30. from: replAddr, to: rcpt, subject: subj,
  31. text: body, html: bodyHTML
  32. });
  33. return res.messageId;
  34. }
  35. catch(e) {return false;}
  36. };