Мы в «Авиви» обратили внимание на частые запросы от пользователей коробочного Битрикс24 по решению проблемы с нерабочей почтой. Во всех случаях прослеживается один и тот же сценарий: когда в коробку пытаются подключить новый почтовый ящик, домен которого отличается от того, на который регистрировался Портал, — письма просто не отправляются. Мы разобрали ситуацию и даже создали собственное решение. Но в целом, пользователям следует знать, что это совсем не «баги» Битрикс24, а закономерность.
Причина нерабочей почты
Смотреть нужно, в первую очередь, на настройки SMTP. «Simple Mail Transfer Protocol» или простой протокол передачи почты отвечает в Битрикс24 не только за электронную почту, но и за приглашение сотрудников в портал, все уведомления и многое другое. В облачной версии набора инструментов для бизнеса, SMTP-сервер находится на стороне разработчиков, ими поддерживается и конфигурируется для широких масс пользователей со всего мира. Поэтому в облаке не составит проблем подключить к своей системе произвольный почтовый ящик, получать и отправлять с него письма.
Настройка SMTP-сервера в коробочном Битрикс24
В коробочной редакции SMTP идет в комплекте с остальными компонентами Битрикс24 и работает уже на Вашем сервере. Его настройка происходит вместе с развертыванием коробки и здесь кроется ключ ко всем последующим трудностям. Обычно SMTP «затачивают» только для доменного имени почты, на которую происходит регистрация портала. Это логично, поскольку неизвестно, почту на каком другом домене, которых в мире миллионы, захотите использовать Вы или Ваши сотрудники.
Таким образом, в новой коробке будут отлично работать лишь почты с одним доменным именем. Например, если Портал зарегистрирован на Gmail, то без проблем получится подключать и пользоваться всем, что заканчивается на @gmail.com. Но не более. Для остальных доменных имен нужны дополнительные индивидуальные настройки.
Каверзная ситуация
Конечно, если помнить о SMTP с самого начала, стресса будет меньше. Но абсолютное большинство пользователей, примерно 93%, как я уже говорил, вообще не вникают в данную ситуацию. Поэтому многих это вводит в ступор. В реалиях подключить собственный почтовый ящик с отменным от настроенного доменно возможно. Вы выполняете такие же действия, как и в облачном сервисе, указываете нужный адрес и сохраняете настройки. Скажу больше — Вы даже сможете получать письма в Битрикс24 с этого почтового ящика, поэтому подвох заметите не сразу. Но вот отправить ничего не получится: либо нельзя будет выбрать нужную почту, либо просто ничего не произойдет.
Без настроек ничего не происходит
Эта особенность создает впечатление поломки Битрикс24, хотя такой вовсе не является. Поэтому если у Вас такая же проблема — не спешите ставить диагноз системе. Ведь программа просто не понимает что от нее хотят.
Два простых решения
Первым решением ситуации с почтой может быть настройка SMTP. Если Вы знаете, как это сделать — можете закрывать эту вкладку.
Второе простое решение мы создали сами в виде модуля для коробочного Битрикс24. Команда разработчиков учла все нюансы ситуации, чтобы рядовые пользователи не заметили разницу между работой с почтой на облаке и коробке — в локальной редакции будет возможность подключать, практически, неограниченное количество доменных имен почтовых сервисов.
Способности модуля
Кому интересно, мы научили наше решение следить за проверкой отправителя (from). Если доменное почтового сервиса отличается от того, что указано по умолчанию для коробочного Битрикс24, модуль включается в работу и отправляет письмо с нужными настройками SMTP.
Последнее, но не менее важное: наше решение не является кастомизацией ядра, поэтому всем подходит и не ломается от обновлений локальной редакции. Одним словом — получилась, так сказать, панацея, если сравнить с болезнью ситуацию с SMTP.
Все работает
Собственные почтовые ящики возможно подключить через протокол IMAP. А можно и создать собственный, с которым модуль также работает корректно.
Все, что разработчики Битрикс24 сами добавляют в систему, в дополнительных настройках не нуждается, модуль их понимает. Таким образом не имеет значения, существует почтовый сервис сейчас, или будет придуман в недалеком будущем — проблем с его использованием не будет.
Последнее, но не менее важное: наше решение не является кастомизацией ядра, поэтому всем подходит и не ломается от обновлений локальной редакции. Одним словом — получилась, так сказать, панацея, если сравнить с болезнью ситуацию с SMTP.
В этой статье мы расскажем вам о том, где смотреть причины ошибки неотправленной почты в Битриксе. Рассмотрим три основных мест, откуда можно найти ошибку отправки писем.
Проверка таблицы очереди писем
Идем в административную панель Битрикса по пути: Настройки / Производительность / Таблицы. Ищем таблицу b_event и проваливаемся по ссылке.
Именно в эту таблицу попадают письма с сайта в очередь, а затем отправляются на хитах или на агентах.
На открывшейся странице можем отыскать сообщение, которое не отправилось. Проматываем в самый конец к колонке SUCCESS_EXEC – это колонка записывает состояние отправки письма.
Варианты статуса отправки (SUCCESS_EXEC):
Y – означает, что письмо было успешно отправлено
N – говорит о том, что событие еще не обработано и письмо не отправлено. В этом случае стоит полную проверку сайта и проверить настройки dbconn.php. Проверить корректность настройки почтовых шаблонов и их привязки к сайтам.
F – сообщение не было отправлено. Необходимо проверить логи сервера или хостинга.
0 – не активен или отсутствует почтовый шаблон (Настройки / Настройки продукта / Почтовые шаблоны)
Проверка системы
Проверка системы расположена на странице Настройки / Инструменты / Проверка системы. В проверке уже встроен инструмент, который проверяет возможность отправки письма с помощью стандартной PHP функции mail. Этаки быстрый проверяльщик работы почты.
Если здесь уже возникает ошибка, то проблему стоит идти смотреть в логи сервера.
Проверка логов сервера
Если ошибка ошибка идет глубже и у вас VM Bitrix, идем в консоль сервера по пути /home/bitrix/ и ищем логи с префиксом .msmtp_ (по умолчанию). Смотрим и ловим ошибки в этом файле. Логи лучше просматривать с помощью утилиты mc.
Сама конфигурация почтовых настроек расположена в файле /home/bitrix/.msmtrpc
Если письма в Битриксе отмечены как успешно отправленные, но письмо не пришло и в логах отсутствует какая-либо информация – следует обратить внимание на логи в /var/log/. Там отобразится ошибка, которая возвращается функцией mail.
Проверить возможность отправки также можно с помощью консольных команд (но в данном случае будет использоваться отправитель по умолчанию – default)
> php -a
> mail('test@example.com', "Test", "Test message");
> exit
Если произойдет ошибка при отправке, то сообщение будет у вас на экране.
Ошибки
Частая ошибка – это когда в письмах отправителем указан адрес отличимый от названия аккаунта (поле FROM). Поэтому задайте в настройках сайта нужный адрес или в почтовых шаблонах в поле «От кого». В этом случае, если требуется, чтобы человек мог ответить на другую почту, то можете указать электронную почту в качестве обратного адреса в почтовом шаблоне.
Другая ошибка – это отсутствие настроек для отправителя по умолчанию. Необходимо внести корректные настройки адреса отправителя (указать tsl, метод авторизации и т.п.)
На этом все, надеюсь статья была вам полезна. Если у вас возникнут вопросы, задавайте в комментарий.
В сегодняшней статье хочу рассказать об основных проблемах с почтой в CMS 1с-Битрикс.
Порой до адресата не доходят письма и нужно понять, а отправляются ли они вообще? А может они были отправлены, но возникли, какие-то другие ошибки. Так что же делать в таких ситуациях?
ПРОВЕРИТЬ ОТПРАВЛЯЮТСЯ ЛИ ПИСЬМА
Для проверки достаточно на любой страничке написать следующий php код:
$mail="my@mail.ru"; // ваша почта $subject ="Test" ; // тема письма $text= "Line 1nLine 2nLine 3"; // текст письма if( mail($mail, $subject, $text) ) { echo 'Успешно отправлено!'; } else{ echo 'Отправка не удалась!'; }
Либо использовать для отправки письма функцию bitrix CEvent::Send. Если письмо не пришло, можно обращаться в тех. поддержку хостера.
СПИСОК ОТПРАВЛЕННЫХ ПИСЕМ
В битриксе нет как такого инструмента, который бы показывал сработавшие почтовые шаблоны и соответствующие отправленные письма. Но всё таки существует обходной путь, как просмотреть их.
Для этого нужно зайти в Админку Битрикс, далее Настройки -> Инструменты -> SQL-запрос. Ввести следующий sql код:
select * from b_event where event_name like '%form%' order by date_insert desc
Вместо %form% нужно указать конкретный тип почтового события например так, чтобы посмотреть отправленные письма о новых заказах:
select * from b_event where event_name like 'SALE_NEW_ORDER' order by date_insert desc
Либо можете вообще убрать вторую строку. В результате получите таблицу всех сработавших событий. Нас интересует колонка SUCCESS_EXEC.
‘Y’ — означает успешная отправка;
‘N’ или 0 — письмо не отправлено;
‘F’ — ошибка
Если найденные записи имеют значение ‘Y’ — это означает, что они отправлены и проблем быть не должно.
Но у нас всё плохо, значит обращаемся в тех. поддержку хостинга.
Если ‘N’ или 0- письма по какой-то причине не ушли.
Может помочь такое решение:
перейдите по пути: <вашсайт>/bitrix/php_interface/dbconn.php
Закомментируйте или удалите следующие строки:
define('BX_CRONTAB', true); define('BX_CRONTAB_SUPPORT', true);
Попробуйте протестировать снова. Если после этого SUCCESS_EXEC также имеет значение ‘N’, то перейдите в <вашсайт>/bitrix/managed_cache/ . Удалите содержимое через модуль управления структурой( не в коем случае не используйте FTP). Если вылезет ошибка, то не хватает доступа. Измените доступ к папкам и повторите снова.
Еще один способ — воспользоваться встроенными методами CMS Битрикс по диагностике.
- Проверка системы — <вашсайт>/bitrix/admin/site_checker.php
- Монитор качества — <вашсайт>/bitrix/admin/checklist.php
Ошибки, найденные в процессе диагностики, могут являються причиной вашей проблемы.
Возможная ошибка — почтовый сервер не поддерживает формат письма. Попробуйте изменить настройки отправки.
- Убрать BBC
- Убрать дублирование email в заголовке
- Установить Конвертировать 8-битные заголовки
Если ничего не помогло, попробуйте запросить у хостера логи почтового сервера.
Хочу рассмотреть частный случай:
НЕ ПРИХОДЯТ НА ПОЧТУ УВЕДОМЛЕНИЯ О ЗАПОЛНЕНИИ ВЕБ-ФОРМ
Шаги решения проблемы:
- Переходим в админ панель: Настройки -> Настройки продукта ->Настройки модулей -> Веб-формы. Отключаем флажок «использовать упрощенный режим». Переходим к настройкам компонента веб-форм на сайте. Вкладка дополнительно. Должен присутствовать флажок активирующий привязку к почтовому шаблону.
- Переходим: Панель управления -> Настройки -> Настройки продукта -> Почтовые события. Находим почтовый шаблон для веб-формы. Проверяем правильность данных:
- Шаблон должен быть активен;
- Привязан к одному из сайтов(если многосайтовость);
- От кого: #DEFAULT_EMAIL_FROM#;
- Кому: #DEFAULT_EMAIL_FROM#».
Частые ошибки при формировании рассылок и их решение
В этой статье пойдет речь об инструменте email-рассылок внутри Битрикс24.
Для чего нужны рассылки, какие у них преимущества и недостатки можно прочитать в отдельной статье.
Здесь же расскажем:
- Почему письма из портала не уходят?
- По какой причине вся рассылка попала в спам и в статистике много ошибок отправки?
- Чем поможет отдельный протокол SMTP для рассылок?
Рассылка зависла на статусе «Отправляется»
После создания рассылки с учетом рекомендаций по содержанию и оформлению вы нажимаете кнопку «Отправить» и ждете, когда же она уйдет. Проходит пара минут, счетчик отправки замирает – число ушедших с портала писем больше не увеличивается. Напротив статуса отправки появилась красная метка с текстом:
Достигнуто максимальное количество отправок за день. Отправка продолжится завтра.
На всех тарифах, предусматривающих email-рассылки, установлено ограничение на общее число отправленных писем в месяц. Это касается любого электронного сообщения, которое уходит из вашего портала. Это может быть письмо менеджера клиенту через интеграцию с его почтой или письмо из рассылки. Фиксируется также ежедневный лимит, при достижении которого рассылка останавливается.
Решение:
Решить проблему с ограничением дневного лимита на рассылки из Битрикс24 можно двумя способами:
- Использовать коробочную версию системы – рассылки не лимитированы.
- Делать качественные рассылки для ваших клиентов, используя проверенную легальную базу клиентов.
Если с первым пунктом все ясно, но не все готовы к нему прибегнуть, то по второму пункту поясним. При первом использовании сервиса рассылок Битрикс24 вам устанавливается
ограничение на отправку — 1000 писем в день. Далее, если вы продолжите регулярные рассылки на сегмент, размером более 1000 получателей с хорошим откликом – лимит будет расширяться автоматически. На что вам придет вот такое уведомление в портале:
Приведем пример. Вы приобрели облачный тариф CRM+, который предполагает 35 тыс. отправок писем в месяц. Решили сделать свою первую рассылку из модуля CRM-маркетинг. Собрали шаблон, не забыли вставить блок с отпиской, протестировали и запустили. При этом выбрали сегмент из 8 тыс. получателей.
Что произойдет после нажатия кнопки «Отправить»? С вашего портала в первый день уйдет только 1000 писем. На второй день вам расширят лимит, и отправится еще 2000 писем, на третий вам дадут еще дополнительную тысячу к дневному лимиту.
Таким образом, ваша рассылка растянется на несколько дней. Напомним, лимит расширится только в том случае, если ваши получатели массово не буду жаловаться на вас, как на спам-рассылку. В следующий раз, например, через неделю, вы захотите повторить отправку на тот же сегмент. С учетом того, что ваш дневной лимит расширится до 8 000 – письмо дойдет до получателя в тот же день без задержек.
Используйте сегмент доверенных получателей. Отправляйте им целевые предложения с соблюдением всех рекомендаций по оформлению email-писем. Ограничение на дневной лимит снимется автоматически после серии отправок.
Большое число писем, которые отправлены с ошибкой
Самый частый сценарий при отправке email из модуля CRM-маркетинг: письма с портала ушли не все, в статистике рассылки большое число отправок с ошибкой.
Какие могут быть причины неудачной рассылки и почему так много писем со статусом «Ошибка отправки»:
- Вы использовали сегмент получателей с неподтвержденным email-адресом или старую базу, адресаты или домены в которой уже не существуют.
- Почтовый ящик получателя переполнен и больше не принимает никакие сообщения.
- Почтовый сервис получателя или адресат посчитал вашу рассылку спамом и запретил приемку письма от вас.
- Вас заблокировал сервис отправки писем, т.к. вы превысили разрешенный им лимит или иные условия массовой рассылки – проблема заключается в блокировке писем используемым вами протоколом SMTP.
Решение:
При следующей отправке исключите из сегмента вашей рассылки адресаты, чьи ящики более не существуют или переполнены. Актуальность (валидность) email-адресов получателей проверяется с помощью специальных сервисов, например:
- MailboxValidator
- MailValidator
- ZeroBounce
- QuickEmailVerification
Чтобы решить проблему классификации вашей рассылки как спам, уделите внимание ее содержимому. Проверьте письмо перед отправкой с помощью таких сервисов, как:
- Mail-tester
- SendForensics
- GlockApps
Убедитесь также, что ваш IP и домен не попали в базу черных отправителей (в блэклист) с помощью доступных ресурсов. Используйте для этого:
- Mail-tester
- MxToolBox
- GlockApps
Устраните замечания, которые получили в ходе проверок на специализированных ресурсах по тестированию своей email-отправки, чтобы сократить количество ошибок.
О блокировке писем сервисом отправки и путях решения проблемы расскажем подробно далее.
Зачем использовать отдельный SMTP для email-рассылок?
При отправке писем через Битрикс24 из модуля CRM-маркетинг используйте отдельный ящик отправителя, созданный специально для ваших рассылок. Он должен быть подключен к порталу с использованием одного из двух способов:
- С указанием внешнего SMTP-сервера для отправки писем: арендованного или созданного самостоятельно.
- Без использования отдельного протокола: по умолчанию рассылка пойдет с серверов Битрикс24.
Если предполагается отправка большого объема писем, то Битрикс24 рекомендует использовать внешний SMTP-сервер с профессиональной настройкой рассылок. Так статистика доставки ваших email будет всегда высокой.
При выборе внешнего SMTP учитывайте лимиты на отправку писем.
Для своих рассылок мы используем SendPulse:
Использование арендованного SMTP для писем удобно для просмотра расширенной статистики причин ошибок доставки.
Отправляйте письма через модуль CRM-маркетинг из своего портала Битрикс24 с применением тех параметров, которые подходят для вашей тематики сообщений, количества адресатов и частоты рассылок.
Чек-лист для успешной отправки email рассылок
Для результативных email-рассылок из Битрикс24 ориентируйтесь на наш чек-лист из пяти пунктов:
- Используйте проверенные «честные» адреса получателей.
- Сегментируйте базу для точечной отправки полезных материалов рассылки.
- Анализируйте содержимое письма, придерживайтесь общих требований по оформлению рассылки. Протестируйте шаблон на специальных сервисах перед отправкой.
- Проверьте адрес отправителя и домен в черных списках.
- При больших объемах отправляемых писем используйте отдельный ящик, подключенный через внешний SMTP.
За помощью по настройке рассылок из Битрикс24 и подключением внешнего SMTP обращайтесь через форму ниже или по телефону +7 (495) 118-39-18.
Вас также может заинтересовать:
Обновлено: 23 апреля 2021
8881 просмотр
Если используется msmtp (установлен BitrixVM) и выводятся ошибки вида
<-- 550 5.7.0 Sender or From header address rejected: not owned by authorized user
Скорее всего bitrix отправляет письма, указывая отправителя в заголовке From, но msmtp их не может читать.
В таком случае можно использовать параметр —read-envelope-from.
Однако, в том же тесте системы, заголовок From не передается, как и в некоторых других ситуациях, тогда Битрикс не отправляет письма и выводит ошибки:
envelope from address extracted from mail: (null) loaded system configuration file /etc/msmtprc loaded user configuration file /home/bitrix/.msmtprc falling back to default account msmtp: account default from /home/bitrix/.msmtprc: envelope-from address is missing
Нашлось простое решение — скрипт, который смотрит, есть ли заголовок письма, если да, то запускает msmtp с параметром —read-envelope-from, иначе запускается стандартно.
Что бы избавиться от ошибки «not owned by authorized user» — создаем скрипт /usr/bin/bitrix_email.sh с содержимым:
#!/bin/bash export HOME=/home/bitrix args=$@ message_body="" while read line; do message_body="$message_body$linen" done < /dev/stdin if [[ $message_body == *"From:"* ]]; then echo -e "$message_body" | /usr/bin/msmtp --debug -t -i --read-envelope-from $args else echo -e "$message_body" | /usr/bin/msmtp --debug -t -i $args fi
Делаем скрипт запускаемым
chmod +x /usr/bin/bitrix_email.sh
Далее прописываем этот скрипт в /etc/php.d/bitrixenv.ini , если у вас bitrixVM или в ином в вашем случае
sendmail_path = /usr/bin/bitrix_email.sh
Перезапускаем php-fpm или httpd
service httpd restart
Всё, теперь при отправке почты отправитель будет браться из заголовков письма From:, если задан такой заголовок, иначе как раньше.
Буду рад, если эта статья поможет избавиться от ситуации, в которой Битрикс не отправляет письма.