Hi,

> > what do I have to do, so that I can respool my mails?
> > The mails end up in /var/mail/error as ...FileObject- and 
> > ...FileStreamStore files. After I have repaired the cause of the error 

> > (connection problems ...) I would like to bring them into the system
> > again.
> 
> There are 2 files for each email.
> One is the mail source stream, the other is metadata about the Mail.
> In the metadata there is the "State".
> When a message is read from a spool, its State is read and the processor
> with the same name is then used to process the mail. The processor
> usually change the state to something else so that the next "spool run"
> will take care of the next action.
> 
> To set an error to a message you set the State to error, so it will be
> processed by the "error" processor that simply save it to a specific
> repository and set the state to "ghost" ("ghost" is a special state to
> tell the spooler to delete the mail).
> 
> If you move the mail from the error repository to the spool then the
> mail will keep its "error" state, and the spooling will start from the
> error processor, that will push it back to the error repository.
> 
> You have to make sure the "state" of the message is resetted to "root"
> and you can't do this altering manually the file. So you have to use the
> FromRepository mailet. In the current trunk code we added commands to
> the remotemanager to move mails between repositories, but this is not
> available in any released version, yet, sorry.
> 

Thanks Stefano.
This confirms, what I had thought by looking at code and the files -
unfortunately.

> so you add something like:
> <mailet match="[EMAIL PROTECTED]" 
class="FromRepository">
>   <repositoryPath>your error repository</repositoryPath>
>   <processor>root</processor>
>   <delete>true</delete>
> </mailet>
> 
> Sending a mail to [EMAIL PROTECTED] will respool that mails.

That has been my next step - but I failed.
That was my configuration:

    <processor name="root">
           [...]
         <mailet match="All" class="FromRepository">
             <repositoryPath>file://var/mail/hdc/</repositoryPath>
             <processor>transport</processor>
             <delete>true</delete>
         </mailet>

But I do not see that anything is happening. Inserting log messages into
the FromRepository class revealed that the 'service' method is not called
(initializing is happening and the repository does point to an existing
directory as verified in the log).

> 
> IMPORTANT: you should understand why that mails are in error, because
> most time respooling them will not work and will end up in the same
> error again.

Of course ;-) 
That's why I used a special directory not just the error one.

Heinz-Dieter

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to