Laravel по-русски

Русское сообщество разработки на PHP-фреймворке Laravel.

Ты не вошёл. Вход тут.

#1 02.11.2018 19:30:40

Очереди для почтовой отправки

Добрый день.
У меня стоит задача, контролировать системные уведомления, которые отправляются пользователям через веб-сайт(о регистрации, заказ звонка, активации и тд). Сама отправка почты происходит через внутренний почтовый сервер, а laravel пушит их в очередь на отправку через свой сервис очередей.
В очередях есть некий функционал работы с ошибками, незавершенными отправками и тд.
Но, есть ли возможность сделать таблицу разных уведомлений по почте в читаемом для оператора виде:
1. Активация аккаунта (дата) (Статус - ушло\ошибка)
2. Заказ обратного звонка (дата) (Статус - ушло\ошибка)
3. Заказ консультации (дата) (Статус - ушло\ошибка)

Чтобы можно было при ошибке повторно отправить уведомление. Само по себе повторную отправку организовать просто. Тут вопрос в том, как связать данные из таблицы jobs с уведомлениями, чтобы можно было понять, что именно и для кого зафейлилось, а что было отправлено.

И второй вопрос. Возникает ли ошибка в очередях, если есть какие-либо проблемы с почтовым сервером? Иными словами, на сколько можем довериться тому, что очередь отработала без ошибки.

Не в сети

#2 03.11.2018 09:15:47

Re: Очереди для почтовой отправки

Вам на сервере нужно держать запущены php artisan queue:work --tries=3 (трайз тут или в джобе поможет контролировать попытки на случай ошибок и Supervisor в помощь)
Очереди я думаю отлично лежат в Редисе и если соблюдать queue connection для разных очередей то эту инфу можно по ключу выбирать - там обьект со всей этой инфой.
Инфа о том что зафейлилось если надо может собираться в табличку - php artisan queue:failed-table. Но я думаю архитектурно правильнее написать Хендлер нужной бизнес логики (отправка смс при ошибке или запись нужная в журнал Тут если надо и событие дернуть можно но это на любителя) и передавать ошибки уже в него.
если хендлеры не лень пописать то можно в джобе все через трай-кечь прописать и разные обработчики напихать - детализация ошибок на ваш вкус..
Я както так вижу.

Не в сети

#3 06.11.2018 14:49:23

Re: Очереди для почтовой отправки

Спасибо за развернутый ответ, ценно!)

Не в сети

Подвал раздела