![]() |
Chilkat HOME Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi DLL Go Java Node.js Objective-C PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(CkPython) POP3 to SMTP ForwarderRead a POP3 mailbox and forwards the email to another email address, keeping the recipients in the original email the same. Note: This example requires Chilkat v11.0.0 or greater.
import sys import chilkat success = False # This example requires the Chilkat API to have been previously unlocked. # See Global Unlock Sample for sample code. mailman = chilkat.CkMailMan() # Set the POP3 server's hostname mailman.put_MailHost("pop.example.com") # Set the POP3 login/password. mailman.put_PopUsername("MY_POP3_LOGIN") mailman.put_PopPassword("MY_POP3_PASSWORD") # Set the SMTP hostname for sending. mailman.put_SmtpHost("smtp.example.com") mailman.put_SmtpUsername("MY_SMTP_LOGIN") mailman.put_SmtpPassword("MY_SMTP_PASSWORD") fromAddr = "me@example.com" toAddr = "recipient@somewhere.com" # The the UIDLs for all email in the POP3 mailbox. stUidls = chilkat.CkStringTable() success = mailman.FetchUidls(stUidls) if (success == False): print(mailman.lastErrorText()) sys.exit() # Just mark messages for delete, then delete at the end. mailman.put_ImmediateDelete(False) # Download the email from the server. Call FetchMimeBd # because we don't want to load the emails into email objects. # (We'll delete the emails that are forwarded without error.) bdMime = chilkat.CkBinData() count = stUidls.get_Count() i = 0 while i < count : uidl = stUidls.stringAt(i) print("UIDL: " + uidl) success = mailman.FetchMimeBd(uidl,bdMime) if (success == False): print(mailman.lastErrorText()) sys.exit() success = mailman.SendMimeBd(fromAddr,toAddr,bdMime) if (success == False): print(mailman.lastErrorText()) sys.exit() success = mailman.DeleteByUidl(uidl) if (success == False): print(mailman.lastErrorText()) sys.exit() i = i + 1 # Delete messages marked for delete. mailman.put_ImmediateDelete(True) success = mailman.Pop3EndSession() if (success == False): print(mailman.lastErrorText()) sys.exit() print("Success.") |
© 2000-2025 Chilkat Software, Inc. All Rights Reserved.