EMail

Отправка email сообщений по протоколу SMTP

Описание

Компонента предназначена для формирования email сообщения и отправки его по протоколу SMTP. Поддерживается формирование HTML сообщения, вложения, авторизация, шифрование прокси и многое другое.

Описание параметров файла конфигурации config.json

  • description: Описание средства связи, например "Sending email via SMTP"
  • address: Описание адреса средства связи, например "E-mail address" или ""Phone number"
  • re: регулярное выражение с помощью которого можно проверить корректность адреса для средства связи
  • <configID>: идентификатор конфигурации средства связи. Для одного средства связи можно сделать несколько конфигураций и в дальнейшем выбирать требуемую конфигурацию при отправке сообщения. Например, в разных конфигурациях одного и того же средства связи могут быть различные провайдеры для отправки СМС.
    • transport: объект с параметрами для средства связи. Если значение transport не объект, а строка, то она будет интерпретирована как ссылка на идентификатор конфигурации, из которого необходимо взять параметры средства связи.
    • message: объект, который служит в качестве шаблона сообщения для средства связи. Параметр message может отсутствовать.

Компонента работает на основе модуля nodeMailer, обеспечивающего формирование и отправку сообщения. Подробное описание параметров для объектов transport и message для nodeMailer можно посмотреть на сайте модуля https://nodemailer.com. Все параметры из конфигурации компоненты будут в неизменном виде переданы модулю nodeMailer.

Пример настройки

{
    "description": "Sending emails via SMTP",
    "address": "E-mail address",
    "re": "^(([^<>()\\[\\].,;:\\s@\"]+(\\.[^<>()\\[\\].,;:\\s@\"]+)*)|(\".+\"))@(([^<>()\\[\\].,;:\\s@\"]+\\.)+[^<>()\\[\\].,;:\\s@\"]{2,})$",
    "default": {
        "transport": {
            "host": "xxx",
            "port": 465,
            "secure": true,
            "ignoreTLS": false,
            "requireTLS": false,
            "authMethod": "PLAIN",
            "auth": {
                "type": "login",
                "user": "xxx",
                "pass": "xxx"
            },
            "tls": {
                "rejectUnauthorized": false
            },
            "name": "alepiz.com",
            "connectionTimeout": 120000,
            "greetingTimeout": 30000,
            "socketTimeout": 600000,
            "logger": false
        },
        "message": {
            "replyTo": "support@alepiz.com"
        }
    }
}