При переходе от версии 5.2.10 к 5.3.6 перестали работать выпуски рассылок, не отправляются ни один. При детальном анализе удалось выявить, что ошибка заложена в работе функции call_user_func_array(). Если в вызываемой функции требуется входной параметр ссылка, то в функции он так же обязательно должен быть передан как ссылка, иначе функция не выполняется.
Таким образом, в момент рассылки выпуск, вызывается функция Csms4b::EventsPosting() по средствам call_user_func_array(), при этом в функции EventsPosting() входной параметр ожидается ссылка, а в результате возвращается null, что и приводит к блокировки отправки сообщений в модуле рассылки.
Исправили у себя в файле \bitrix\modules\rarus.sms4b\classes\general\sms4b.php (1583) на:
Чтобы детально понять суть пройдите отладку и обратите внимание на строки:
Рассылки заработали. Хотелось бы узнать мнение разработчиков по решению и что планируется по решению данной проблемы?
Таким образом, в момент рассылки выпуск, вызывается функция Csms4b::EventsPosting() по средствам call_user_func_array(), при этом в функции EventsPosting() входной параметр ожидается ссылка, а в результате возвращается null, что и приводит к блокировки отправки сообщений в модуле рассылки.
Исправили у себя в файле \bitrix\modules\rarus.sms4b\classes\general\sms4b.php (1583) на:
Код |
---|
public function EventsPosting($arFields) |
Чтобы детально понять суть пройдите отладку и обратите внимание на строки:
Код |
---|
\bitrix\modules\subscribe\classes\general\posting.php (696) \bitrix\modules\main\classes\general\module.php (474) \bitrix\modules\rarus.sms4b\classes\general\sms4b.php (1583) |
Рассылки заработали. Хотелось бы узнать мнение разработчиков по решению и что планируется по решению данной проблемы?