Отправка писем по протоколу SMTP

Для того, чтобы отправлять письма, предназначен тип КлиентSmtp. Экземпляр этого типа может быть получен из свойства глобального контекста КлиентSmtp. С помощью него предоставляется возможность отправлять электронную почту, используя протокол SMTP. При подключении к серверу электронной почты поддерживаются следующие виды аутентификации:
  • Анонимная аутентификация. Описывается стандартом RFC 4505.
  • Простой уровень аутентификации (SASL). Описывается стандартом RFC 4422.
  • Аутентификация вида запрос-ответ (CRAM-MD5). Описывается стандартом RFC 2195.
Схема работы выглядит следующим образом:
  1. Создается сообщение электронной почты. Для этого используется экземпляр типа Письмо.
  2. Для сообщения электронной почты задаются различные получатели сообщения (получатели, получатели копии, скрытые получатели, отправитель и т.д.). Для этого используется экземпляр типа АдресПочты и соответствующие инструменты экземпляра для работы с сообщением электронной почты.
  3. Устанавливаются прочие параметры создаваемого почтового сообщения: тема, содержимое и прочие параметры.
  4. Перед отправкой электронной почты необходимо указать параметры подключения к серверу электронной почты с помощью экземпляра типа ПараметрыПодключенияSmtp.
  5. С помощью метода КлиентSmtp.Отправить() выполняется отправка одного или нескольких сообщений электронной почты. Этот метод возвращает массив экземпляров типа РезультатОтправкиПисем. С его помощью можно получить состояние отправки сообщений.

Тип АдресПочты предназначен для указания не только собственно адреса электронной почты, но и представления этого адреса.

Пример отправки письма:
// Пример отправки письма
метод ОтправитьПисьмо()
    // 1. Подготовить письмо
    пер Сообщение = Письмо("sender@1c.ru")
    Сообщение.ДобавитьПолучателей("recipient@1c.ru")
    Сообщение.Тема = "Тема сообщения электронной почты"
    Сообщение.УстановитьТекстКакСтроку("Текст сообщения электронной почты")
 
    // 2. Отправить письмо
    пер ПараметрыПодключения = ПолучитьПараметрыПодключенияSmtp()
    КлиентSmtp.Отправить(ПараметрыПодключения, Сообщение)
;