Стандартные компоненты Битрикс (да и сторонние тоже) отправляют письма через свои события. То есть при отправке письма с формы обратной связи — это письмо попадает в очередь внутри движка сайта и далее отправляется при следующем просмотре страницы сайта посетителем или роботом (по умолчанию в Битрикс отправка сообщений настроена на хитах), либо по крону (если администратор перенастроил отправку сообщений).
Мы же можем посмотреть все события на отправку писем и их статусы специальным запросом SQL в админке сайта ( Рабочий стол / Настройки / Инструменты / SQL запрос) :
1 |
select * from b_event order by id desc |
Далее получаем табличку со всеми почтовыми событиями, где нас интересует колонка SUCCESS_EXEC
SUCCESS_EXEC = Y — значит все в порядке, сообщение отправлено (если не пришло на почту, проблема с сервером)
SUCCESS_EXEC = N — не обработано событие (а значит не отправлено)
SUCCESS_EXEC = 0 — не найден шаблон (указан не верный шаблон)
SUCCESS_EXEC = F — надо смотреть логи отправки (сервера, хостинга). У меня эта ошибка чаще всего связана с отправкой через SMTP, когда поле FROM не соответствует аккаунту с которого отправляется письмо.
По ссылке мой функционал, который автоматизирует переотправку писем. Заметьте не исправляет ошибки, а перезапускает почтовые события на отправку. То есть условие, что почта работала и до этого отлично, но письма периодически встают.
https://dev.1c-bitrix.ru/community/webdev/user/274551/forum/123869/