Метод отправляет сообщение на заданный адрес электронной почты. Можно указать несколько адресов через запятую.
Пример: ^mail:send[
$.from[Вася <vasya@hotmail.ru>]
$.to[Петя <petya@hotmail.ru>]
$.subject[как дела]
$.text[Как у тебя дела? У меня - изумительно!]
] В результате будет отправлено сообщение для petya@hotmail.ru с содержимым "Как у тебя дела? У меня - изумительно!".
сообщение - хеш, в котором могут быть заданы такие ключи:
·
поле_заголовка
·
text
·
html
·
file
·
charset
·
options [3.1.2]
Внимание: рекомендуется в поле заголовка errors-to задавать адрес, на который может придти сообщение об ошибке доставки письма. По-умолчанию «postmaster».
charset - если задан этот ключ, то заголовок и текстовые блоки сообщения будут перекодированы в указанную кодировку. По умолчанию сообщение отправляется в кодировке, заданной в $request:charset (т.е. не перекодируется). Пример: $.charset[koi8-r]
options - эти опции будут переданы в командную строку программе sendmail (только под UNIX).
Также можно задать все поля заголовка сообщения, передав их значение в таком виде (короткая форма): $.поле_заголовка[строка] или с параметрами (полная форма): $.поле_заголовка[
$.value[строка]
$.параметр[строка] ]
Примеры: $.from[Вася <vasya@hotmail.ru>]
$.to[Петя <petya@hotmail.ru>] $.subject[Как у тебя дела? У меня - изумительно!] $.x-mailer[Parser 3]
Кроме заголовка можно передать один или оба текстовых блока: text, html. А также любое количество блоков file и message (см. ниже).
Если будет передано оба текстовых блока, будет сформирована секция MULTIPART/ALTERNATIVE, при прочтении полученного сообщения современные почтовые клиенты покажут HTML, а устаревшие - простой текст.
Короткая форма: $.text[строка] Полная форма… $.text[
$.value[строка]
$.поле_заголовка[значение]
]
…где value - значение тестового блока, и можно задать все поля заголовка сообщения, передав их как и в хеше сообщение (см. выше).
Внимание: можно не передавать заголовок content-type, он будет сформирован автоматически. Этот заголовок не влияет на перекодирование, а влияет только на ту кодировку, в которой почтовый клиент будет отображать сообщение.
Отправка HTML. Короткая форма: $.html{строка} Полная форма: $.html[
$.value{строка}
$.поле_заголовка[значение]
] Фигурные скобки нужны для переключения вида преобразования по умолчанию на HTML.
Вложение файла. Короткая форма: $.file[файл] Полная форма: $.file[
$.value[файл] $.name[имя_файла] ]
Файл - объект класса file, который будет прикреплен к сообщению. MIME-тип данных (content-type заголовок части) определяется по таблице MIME-TYPES (см. Конфигурационный метод). Имя_файла - имя, под которым файл будет передан.
Файл будет передан в uuencode форме.
Вложение сообщения: $.message[сообщение] Формат сообщения такой же, как у параметра всего метода.
Вложений может быть несколько, для чего после имени следует добавить целое число. Пример: $.file
$.file2
$.message
$.message2
Пример с альтернативными блоками и вложениями: ^mail:send[
$.from[Вася <vasya@hotmail.ru>]
$.to[Петя <petya@hotmail.ru>]
$.subject[как дела]
$.text[Как у тебя дела? У меня изумительно!]
$.html{Как у тебя дела? У меня <b>изумительно</b>!}
$.file[^file::load[binary;perfect_life1.jpg]]
$.file2[
$.value[^file::load[binary;perfect_life2.jpg]]
$.name[изумительная_жизнь2.jpg]
]
] В результате будет отослано сообщение для petya@hotmail.ru с содержимым «Как у тебя дела? У меня - изумительно!» в простом тексте и HTML. К сообщению будут приложены две подтверждающие фотографии, на которых…