Deleting any message with "reply" or "delay" in the body is going to
cause some valid messages to be lost because both words are in common
usage.  Just a thought.

On Mon, Aug 22, 2011 at 8:27 PM, matt busche <mrbus...@gmail.com> wrote:
>
> I'm not 100% sure all this code will work w/ CF5, but this is what I use. The 
> JS is thanks to a UDF written by Ray Camden
>
> this code pulls all emails from an inbox and searches for anything that I've 
> identified as a bounceback. Then it uses the UDF to find the email and then I 
> add that email address to a list. This also delete out of office emails from 
> the inbox.
>
> Hopefully this helps,
> Matt
>
> <cfpop server="" username="" password="" action="getAll" name="getAllMail">
> <cfset DeleteOrder = ''>
> <cfoutput>
>        <cfset Email_List = '' /><!--- set a variable to hold the list of all 
> the emails --->
>        <cfloop query="getAllMail">
>                <cfif FROM CONTAINS 'postmaster' OR FROM CONTAINS 
> 'MAILER-DAEMON' OR FROM CONTAINS 'Mail Delivery' OR Body CONTAINS 'Failed' OR 
> Body CONTAINS 'no longer with' OR Body CONTAINS 'Notice'>
>                        <cfset emailList = Body />
>                        <cfscript>
>                        function getEmails(str) {
>                                var email = 
> "(['_a-z0-9-]+(\.['_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*\.(([a-z]{2,3})|(aero|coop|info|museum|name|jobs|travel)))";
>                                var res = "";
>                                var marker = 1;
>                                var matches = "";
>
>                                matches = 
> reFindNoCase(email,str,marker,marker);
>
>                                while(matches.len[1] gt 0) {
>                                        res = 
> listAppend(res,mid(str,matches.pos[1],matches.len[1]));
>                                        marker = matches.pos[1] + 
> matches.len[1];
>                                        matches = 
> reFindNoCase(email,str,marker,marker);
>                                }
>                                return res;
>                        }
>                        </cfscript>
>                        <cfloop list="#getEmails(emailList)#" index="k">
>                                <cfif NOT ListFind(Email_List,k)>
>                                        <cfdump var="#k#"><br />
>                                        <cfquery 
> datasource="Corporate_Production">
>                                        INSERT INTO InvalidEmails (TextBody)
>                                        VALUES ('#Trim(k)#')
>                                        </cfquery>
>                                        <cfset DeleteOrder = 
> ListPrepend(DeleteOrder, MessageNumber)>
>                                        <cfset Email_List = 
> ListAppend(Email_List,k) />
>                                </cfif>
>                        </cfloop>
>                <!--- Delete out of office emails --->
>                <cfelseif Body CONTAINS 'Out of Office' OR Subject CONTAINS 
> 'Out of Office'>
>                        <cfset DeleteOrder = ListPrepend(DeleteOrder, 
> MessageNumber)>
>                <cfelseif Body CONTAINS 'Out of the Office' OR Subject 
> CONTAINS 'Out of the Office'>
>                        <cfset DeleteOrder = ListPrepend(DeleteOrder, 
> MessageNumber)>
>                <cfelseif Body CONTAINS 'Reply' OR Subject CONTAINS 'Reply'>
>                        <cfset DeleteOrder = ListPrepend(DeleteOrder, 
> MessageNumber)>
>                <cfelseif Body CONTAINS 'Delay' OR Subject CONTAINS 'Delay'>
>                        <cfset DeleteOrder = ListPrepend(DeleteOrder, 
> MessageNumber)>
>                </cfif>
>        </cfloop>
> </cfoutput>
> <cfif DeleteOrder NEQ ''>
>        <cfset Count = 0 />
>        <cfloop list="#DeleteOrder#" delimiters="," index="i">
>                <cfpop server="" username="" password="" action="delete" 
> messagenumber="#i#" name="deleteMail">
>                <cfset Count = Count + 1 />
>        </cfloop>
>        <br /><cfdump var="#Count#"> EMAILS FOUND
> </cfif>
> <cfquery>
> DEL

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~|
Order the Adobe Coldfusion Anthology now!
http://www.amazon.com/Adobe-Coldfusion-Anthology/dp/1430272155/?tag=houseoffusion
Archive: 
http://www.houseoffusion.com/groups/cf-talk/message.cfm/messageid:346954
Subscription: http://www.houseoffusion.com/groups/cf-talk/subscribe.cfm
Unsubscribe: http://www.houseoffusion.com/groups/cf-talk/unsubscribe.cfm

Reply via email to