Lua Requires Chilkat v11.0.0+
Lua
Delete Individual Emails from POP3 Mailbox
Demonstrates how to delete individual emails from a POP3 mailbox.Chilkat Lua Downloads
local chilkat = require("chilkat")
-- This example assumes the Chilkat API to have been previously unlocked.
-- See Global Unlock Sample for sample code.
-- The mailman object is used for receiving (POP3)
-- and sending (SMTP) email.
local mailman = chilkat.MailMan.new()
-- Set the POP3 server's hostname
mailman.mail_host = "pop.example.com"
-- Set the POP3 login/password.
mailman.pop_username = "myLogin"
mailman.pop_password = "myPassword"
-- Set the ImmediateDelete property = false
-- When the DeleteEmail method is called, the POP3 session
-- will remain open and the emails will be deleted all at once
-- when the session closes.
mailman.immediate_delete = false
-- Download email headers.
local bundle = chilkat.EmailBundle.new()
local keepOnServer = true
local headersOnly = true
local numBodyLines = 1
local success = mailman:fetch_all(keepOnServer, headersOnly, numBodyLines, bundle)
if not success then
print(mailman.last_error_text)
return
end
local email = chilkat.Email.new()
local i = 0
while i < bundle.message_count do
bundle:email_at(i, email)
print("From: " .. email.from)
print("Subject: " .. email.subject)
-- If you decide the email is to be deleted, call DeleteEmail.
-- This marks the email for deletion on the POP3 server.
success = mailman:delete_email(email)
if not success then
print(mailman.last_error_text)
return
end
i = i + 1
end
-- Make sure the POP3 session is ended to finalize the deletes.
success = mailman:pop3_end_session()
if not success then
print(mailman.last_error_text)
return
end
print("Success!")