Chilkat
HOME
Android™
ASP
Visual Basic
VB.NET
C#
iOS (IPhone)
Objective-C
C++
C
MFC
Delphi
FoxPro
Java
Perl
PHP Extension
PHP ActiveX
Python
PowerShell
Ruby
SQL Server
VBScript
How to Determine if Email is a Bounce of Automated ReplyDemonstrates how to use the Chilkat Bounce component to determine if an email is an bounce (DSN) or an automated reply. Downloads for Windows/Linux and Install Instructions require 'rubygems' require 'chilkat' bounce = Chilkat::CkBounce.new() success = bounce.UnlockComponent("Anything for 30-day trial") if (success == false) print "Failed to unlock component" + "\n" exit end email = Chilkat::CkEmail.new() # Load an email from a .eml file. # (This example loads an Email object from a .eml file, # but the object could've just as well been loaded by reading # directly from a POP3 or IMAP mail server.) success = email.LoadEml("sampleBounce.eml") if (success == false) print email.lastErrorText() + "\n" exit end success = bounce.ExamineEmail(email) if (success == false) print bounce.lastErrorText() + "\n" exit end if (bounce.get_BounceType() == 1) # Hard bounce, log the email address print "Hard Bounce: " + bounce.bounceAddress() + "\n"; end if (bounce.get_BounceType() == 2) # Soft bounce, log the email address print "Soft Bounce: " + bounce.bounceAddress() + "\n"; end if (bounce.get_BounceType() == 3) # General bounce, no email address available. print "General Bounce: No email address" + "\n"; end if (bounce.get_BounceType() == 4) # General bounce, log the email address print "General Bounce: " + bounce.bounceAddress() + "\n"; end if (bounce.get_BounceType() == 5) # Mail blocked, log the email address print "Mail Blocked: " + bounce.bounceAddress() + "\n"; end if (bounce.get_BounceType() == 6) # Auto-reply, log the email address print "Auto-Reply: " + bounce.bounceAddress() + "\n"; end if (bounce.get_BounceType() == 7) # Transient (recoverable) Failure, log the email address print "Transient Failure: " + bounce.bounceAddress() + "\n"; end if (bounce.get_BounceType() == 8) # Subscribe request, log the email address print "Subscribe Request: " + bounce.bounceAddress() + "\n"; end if (bounce.get_BounceType() == 9) # Unsubscribe Request, log the email address print "Unsubscribe Request: " + bounce.bounceAddress() + "\n"; end if (bounce.get_BounceType() == 10) # Virus Notification, log the email address print "Virus Notification: " + bounce.bounceAddress() + "\n"; end if (bounce.get_BounceType() == 11) # Suspected bounce. # This should be rare. It indicates that the Bounce # component found strong evidence that this is a bounced # email, but couldn//t quite recognize everything it # needed to be 100% sure. Feel free to notify # support@chilkatsoft.com regarding emails having this # bounce type. print "Suspected Bounce!" + "\n"; end |
© 2000-2010 Chilkat Software, Inc. All Rights Reserved.