Lua
Lua
SMTP Inspection
See more SMTP Examples
Examine an SMTP session to view all communications sent to the SMTP server.Chilkat Lua Downloads
local chilkat = require("chilkat")
local mailman = chilkat.MailMan.new()
mailman.smtp_host = "smtp.example.com"
mailman.smtp_username = "myUsername"
mailman.smtp_password = "myPassword"
mailman.smtp_port = 465
mailman.start_tls = true
local email = chilkat.Email.new()
email.subject = "This is a test"
email.body = "This is a test"
email.from = "Alex <alex@example.com>"
email:add_to("Christoph", "christoph@example2.com")
email:add_bcc("Victor", "victor@example3.com")
-- Generate the MIME that is sent when SendEmail is called
local mimeStr = mailman:render_to_mime(email)
print(mimeStr)
local success = mailman:send_email(email)
if not success then
print(mailman.last_error_text)
return
end
success = mailman:close_smtp_connection()
if not success then
print("Connection to SMTP server not closed cleanly.")
end
-- Examine the SMTP session log.
print("----")
print("Smtp Session Log:")
print(mailman.smtp_session_log)
-- ---------------------------------------------------
-- Sample output:
-- ---------------------------------------------------
-- MIME-Version: 1.0
-- Date: Fri, 06 Mar 2026 16:21:00 -0600
-- Message-ID: <A5DC25990C93EC2676F4FBB2BB3BFA9EB34FF9D3@CHILKAT25>
-- Content-Type: text/plain; charset=us-ascii; format=flowed
-- Content-Transfer-Encoding: 7bit
-- X-Priority: 3 (Normal)
-- Subject: This is a test
-- From: Alex <alex@example.com>
-- To: Christoph <christoph@example2.com>
-- Bcc: Victor <victor@example3.com>
--
-- This is a test
-- ----
-- Smtp Session Log:
-- 220 smtp.example.com ESMTP Amazon WorkMail SMTP Service
-- EHLO MYCOMPUTER<CRLF>
-- 250-smtp.example.com
-- 250-8BITMIME
-- 250-AUTH PLAIN LOGIN
-- 250 Ok
-- AUTH LOGIN<CRLF>
-- 334 VXNlcm5hbWU6
-- YWRtaW5AY2hpbGthdHNvZnQuY29t<CRLF>
-- 334 UGFzc3dvcmQ6
-- {PasswordOrCredentials}
-- 235 Authentication successful.
-- MAIL FROM:<alex@example.com><CRLF>
-- 250 Ok
-- RCPT TO:<christoph@example2.com><CRLF>
-- 250 Ok
-- RCPT TO:<victor@example3.com><CRLF>
-- 250 Ok
-- DATA<CRLF>
-- 354 End data with <CR><LF>.<CR><LF>
-- {388 bytes} <--- The MIME source of the email (examined via RenderToMime) was sent here.
-- <CRLF>.<CRLF>
-- 250 Ok
-- QUIT<CRLF>
-- 221 Bye