You are viewing a plain text version of this content. The canonical link for it is here.
Posted to server-dev@james.apache.org by Norman <nm...@spam-box.de> on 2006/12/16 13:50:42 UTC

Re: How to work with email bounces?

Hi Sharma,

what kind of action you talkin about ? Isn't a bounce not enough ?

Ps: I moved this also to server-dev so the other commiters can help too

Sharma, Ashutosh schrieb:
> Hi Norman,
> We have a application where end users can communicate to account
> managers via secured messaging system which is implemented using james
> mail server. We send an email notification to the end users as and when
> any of their messages
>  has been responded or they have got a new mail-we send them the
> notification mail. All this is already done.
>
> Now as and when there is a failure of the delivery of this mail...we
> want to take some action so that the team can contact the end users and
> can ask-what's wrong with their email address etc...
> We want to make appropriately deal with these kind of failure:
> -Bad email address
> -user mail box full
> -destination email address can be reached even after retries etc....
> And lots of other failures which we haven't dreamt of this time.....
>
> How to do this?
> Write matcher or mailet?
> I see the code of RemoteDelivery.java and it takes care of these-don't
> know why it's not working...?
> Or to just fine tune the config.xml?
> 	<mailet match="InSpammerBlacklist=relays.ordb.org"
>                  class="ToProcessor">
>            <processor> spam </processor>
>            <notice>550 Requested action not taken: rejected - see
> http://www.ordb.org/ </notice>
>          </mailet>
>
> 	 <mailet match="SubjectStartsWith=Out of Office AutoReply"
> class="Null"/>
> 	 <mailet match="SubjectStartsWith=Out of Office Autoreply"
> class="Null"/>
> 	 <mailet match="SubjectStartsWith=Out of Office Auto-Reply"
> class="Null"/>
> 	 <mailet match="SubjectStartsWith=Out of Office Auto-reply"
> class="Null"/>
> 	 <mailet match="SubjectStartsWith=Undeliverable Mail"
> class="Null"/>
> 	 <mailet match="SubjectStartsWith=Undeliverable mail"
> class="Null"/>
> 	 <mailet match="SubjectStartsWith=Mailer-daemon" class="Null"/>
> 	 <mailet match="SubjectStartsWith=mailer-daemon" class="Null"/>
> 	 <mailet match="SubjectStartsWith=Mailer-Daemon" class="Null"/>
> 	 <mailet match="SubjectStartsWith=Delivery Status Notification
> (failure)" class="Null"/>
> 	 <mailet match="SubjectStartsWith=Delivery status notification
> (failure)" class="Null"/>
> 	 <mailet match="SubjectStartsWith=Delivery Status Notification
> (Failure)" class="Null"/>
>          <mailet match="SubjectStartsWith=SPAM WARNING" class="Null"/>
>
> 	 <mailet match="IsValidPartyId" class="ToProcessor">
>             <processor>transport</processor>
>          </mailet>
>  where IsValidPartyId is a matcher-to do some basic validity check?
>
> -----Original Message-----
> From: Norman [mailto:nm@spam-box.de] 
> Sent: Friday, December 15, 2006 3:19 AM
> To: Sharma, Ashutosh
> Subject: Re: How to work with email bounces?
>
> If you tell me exactly what you want todo i will be able to help you
> maybe a bit more. But yes something like this..
>
> bye
> Norman
>
> Sharma, Ashutosh schrieb:
>   
>> You mean to say:
>> Change the method :
>>  private boolean failMessage(Mail mail, MessagingException ex, boolean
>> permanent)
>> -customize it for my needs and then recompile and create the jar and
>> then use it-right?
>> But as I m already making use of this class in my config(for retry
>> logic)-I need to make sure that functionallity is bot broken and it
>> still works-right?
>>
>> -----Original Message-----
>> From: Norman [mailto:nm@spam-box.de]
>> Sent: Thursday, December 14, 2006 4:02 PM
>> To: James Users List
>> Subject: Re: How to work with email bounces?
>>
>> I think for that you need to hack RemoteDelivery. See the
>>     
> failMessage()
>   
>> method in RemoteDelivery
>>
>> bye
>> Norman
>>
>> Sharma, Ashutosh schrieb:
>>   
>>     
>>> Hi Tom,
>>> Thanks for the response.
>>> I m just some terminology which is different from yours.
>>> So my requirement is:
>>> Find out the email delivery failure-becoz of any reasons like:
>>> User doesn't exist
>>> Mailbox is full....
>>> Etc...
>>>
>>> My config file contains this portion from james-config.xml also:
>>> 	  <!-- Attempt remote delivery using the specified repository
>>> for the spool, -->
>>>          <!-- using delay time to retry delivery and the maximum
>>>     
>>>       
>> number
>>   
>>     
>>> of retries -->
>>>          <mailet match="All" class="RemoteDelivery">
>>>             <outgoing> file://var/mail/outgoing/ </outgoing>
>>>             <!-- alternative database repository example below -->
>>>             <!-- outgoing> db://maildb/spool/outgoing </outgoing-->
>>>
>>>             <!-- Delivery Schedule based upon RFC 2821, 4.5.4.1 -->
>>>             <!-- 5 day retry period, with 4 attempts in the first
>>>                  hour, two more within the first 6 hours, and then
>>>                  every 6 hours for the rest of the period. -->
>>>             <delayTime>  5 minutes </delayTime>
>>>             <delayTime> 10 minutes </delayTime>
>>>             <delayTime> 45 minutes </delayTime>
>>>             <delayTime>  2 hours </delayTime>
>>>             <delayTime>  3 hours </delayTime>
>>>             <delayTime>  6 hours </delayTime>
>>>             <maxRetries> 25 </maxRetries>
>>>
>>> I want to make all the messages which returns to us/not delivered so
>>> that we can take necessary actions. Read receipts  in not allowed.
>>>       
> How
>   
>>> to do it in Apache James?
>>>
>>>
>>> -----Original Message-----
>>> From: Tom Brown [mailto:tombrown52@gmail.com]
>>> Sent: Thursday, December 14, 2006 2:37 PM
>>> To: James Users List
>>> Subject: Re: How to work with email bounces?
>>>
>>> Hi,
>>>
>>> By hard-fail and soft-fail do you mean the difference between a
>>> permanent failure (such as user does not exist) and temporary failure
>>> (mailbox is full). These types of failures are different from
>>>       
> bounces.
>   
>>> The difference is whether or not the mail server accepts
>>> responsibility for delivering the message.
>>>
>>> A bounce is when the mail server says "I said I would deliver the
>>> message, but for some reason cannot deliver it", whereas a the
>>> permanent and temporary failures are when the mail server says "I
>>>       
> know
>   
>>> I cannot deliver this message accept this message because...".
>>>
>>> When you say "I need to deal with...", in what respect? Are you
>>>       
> trying
>   
>>> to send the appropriate bounces, or are you trying to detect when you
>>> receive them so you can flag a message as unsent?
>>>
>>> Tom
>>>
>>> On 12/14/06, Sharma, Ashutosh <As...@gs.com> wrote:
>>>
>>>     
>>>       
>>>> Sorry for confusing you.
>>>> Soft bounces is soft errors like user mailbox is full
>>>> hard bounces is hard errors like user mailbox doesnot exist.
>>>>
>>>> -----Original Message-----
>>>> From: Norman [mailto:nm@spam-box.de]
>>>> Sent: Thursday, December 14, 2006 12:48 PM
>>>> To: James Users List
>>>> Subject: Re: How to work with email bounces?
>>>>
>>>> Hi,
>>>>
>>>> what you mean with soft and hardbounces ? Permerror and
>>>>       
>>>>         
>> Temporaryerror
>>   
>>     
>>> ?
>>>
>>>     
>>>       
>>>> bye
>>>> Norman
>>>>
>>>> Sharma, Ashutosh schrieb:
>>>>
>>>>       
>>>>         
>>>>> I need to deal with soft and hard bounces. Any links or ideas to
>>>>> implement it? any sample code?
>>>>>
>>>>>
>>>>>
>>>>>         
>>>>>           
>>> ---------------------------------------------------------------------
>>>
>>>     
>>>       
>>>>> To unsubscribe, e-mail: server-user-unsubscribe@james.apache.org
>>>>> For additional commands, e-mail: server-user-help@james.apache.org
>>>>>
>>>>>
>>>>>
>>>>>         
>>>>>           
> ---------------------------------------------------------------------
>   
>>>> To unsubscribe, e-mail: server-user-unsubscribe@james.apache.org
>>>> For additional commands, e-mail: server-user-help@james.apache.org
>>>>
>>>>
>>>>         
> ---------------------------------------------------------------------
>   
>>>> To unsubscribe, e-mail: server-user-unsubscribe@james.apache.org
>>>> For additional commands, e-mail: server-user-help@james.apache.org
>>>>
>>>>
>>>>
>>>>       
>>>>         
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: server-user-unsubscribe@james.apache.org
>>> For additional commands, e-mail: server-user-help@james.apache.org
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: server-user-unsubscribe@james.apache.org
>>> For additional commands, e-mail: server-user-help@james.apache.org
>>>
>>>
>>>     
>>>       
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: server-user-unsubscribe@james.apache.org
>> For additional commands, e-mail: server-user-help@james.apache.org
>>   
>>     
>
>   


---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
For additional commands, e-mail: server-dev-help@james.apache.org