Для erlang есть очень хорошая библиотека для работы с e-mail : erlmail, но вот авторизации на smtp сервере я в ней не обнаружил, а ведь большинство stmp серверов работают с авторизацией. Сделал небольшой патч – авторизация на smtp сервере.
Пользоваться этим можно например вот так :
send_mail(UserEmail, Data) ->
{ok, Pid} = smtpc:connect(“smtp.server.com”, ?SMTP_PORT),
smtpc:ehlo(Pid, ?SMTP_SERVER),
smtpc:auth(Pid, ?MAIL_LOGIN, ?MAIL_PASSWORD),
smtpc:mail(Pid, ?MAIL_FROM),
smtpc:rcpt(Pid, UserEmail),
smtpc:data(Pid, Data),
smtpc:quit(Pid).
send_mail(UserEmail, MessageSubject, MessageBody) ->
Data = “From:” ++ ?MAIL_FROM ++ “\r\n” ++ “To:” ++ UserEmail ++ “\r\n” ++ “Subject:” ++
MessageSubject ++ “\r\n\r\n” ++ MessageBody,
send_mail(UserEmail, Data ).
test() ->
send_mail(“user@bokov.net”, “this is subject”, “this is message body!”).