Simple wrapper around luasoket smtp.send.
See documentation.
local sendmail = require "sendmail"
local from, to, server = '[email protected]', '[email protected]', '127.0.0.1'
sendmail(from, to, server, {"Subject", [[
This is mail body.
]],
file = {
name = 'message.txt';
data = 'file content';
};
})
sendmail{
server = {
ssl = {
protocol = "sslv3",
verify = {"peer", "fail_if_no_peer_cert"},
options = {"all", "no_sslv2"},
},
address = ...;
user = ...;
password = ...;
},
...
}
-- I use lua-lluv-ssl library.
local ut = require "lluv.utils"
local ssl = require "lluv.ssl"
local socket = require "lluv.ssl.luasocket"
-- this is asyncronus call
ut.corun(sendmail, {
server = {
ssl = ssl.context{
protocol = "sslv3",
verify = {"peer", "fail_if_no_peer_cert"},
options = {"all", "no_sslv2"},
},
create = socket.ssl;
address = ...;
user = ...;
password = ...;
},
...
})
local ZipWriter = require "ZipWriter"
sendmail{
...
message = {
...
file = {
source = ZipWriter.source(ZipWriter.new(), {
{"file01.txt", "path/to/file01.txt"},
{"file02.txt", "path/to/file02.txt"},
}),
name = 'files.zip';
}
}
}