OK
this seems to be implemented and commited.

On Sun, Feb 17, 2013 at 4:04 AM, seba.wag...@gmail.com <
seba.wag...@gmail.com> wrote:

> The last time I did that I just replaced the class "MailHandler"
> All emails are processed by it.
>
> If added a table "mail_queue" with the fields:
> subject, body, status, receipients, status, error (all string, receipients
> can be a comma separated list of emails)
>
> And then the MailHandler just adds entries to this table with status "new".
> And a scheduler checks every xx seconds this table and processes the first
> 10 entries where status LIKE "new" and sets the status to "processing".
> If the Mail sending itself throws and error/exception, this string is
> written to "error" and the status is set to "fail".
> If the mail sending is "sucess" the record will be deleted from the table.
>
> If the entry is status LIKE "new" => status is new and the mail will be
> send
> If the entry is status LIKE "processing" => the mail is currently in
> sending process
>
> So the queue does only process those emails that are status LIKE "new" to
> prevent double sending, and by keeping the failed ones we might in the
> future be able to show some nice UI dialog in the Admin UI with the error
> report (and give the admin an option to delete even those entries after
> checking it).
>
> Sebastian
>
>
> 2013/2/16 seba.wag...@gmail.com <seba.wag...@gmail.com>
>
> Yeah sure just go ahead
>> Am 16.02.2013 17:01 schrieb "Maxim Solodovnik" <solomax...@gmail.com>:
>>
>> Hello All,
>>>
>>> I'm going to implement MailQ to be able to resend emails in case of any
>>> error is occurred.
>>>
>>> Currently we have following list of emails:
>>>
>>>    1. Meeting reminder (sent by schedule, periodically)
>>>    2. Invitation to the room
>>>    3. Appointment creation/modification/cancellation
>>>    4. User creation
>>>    5. Password reset
>>>    6. Feedback
>>>    7. Add user to the contact list/accept it
>>>
>>> I believe all emails from the list above except for 1) should be added
>>> to the mail Q instead of being immediately sent and keep sending until
>>> success.
>>>
>>> Do you have any concerns/ideas regarding the topic?
>>> I'm going to implement my solution in case there will be no objections :)
>>>
>>>
>>> --
>>> WBR
>>> Maxim aka solomax
>>>
>>
>
>
> --
> Sebastian Wagner
> https://twitter.com/#!/dead_lock
> http://www.webbase-design.de
> http://www.wagner-sebastian.com
> seba.wag...@gmail.com
>



-- 
WBR
Maxim aka solomax

Reply via email to