Отправка сообщений всем пользователям в боте, данные берутся из бд, если в базе находятся человек допустим 500, то при созданий рассылки, возникает неопределенная ошибка и бот начинает примерно со с 100 отправленных сообщений запускать цикл заново, опять же идет отправка этого же сообщения с 1 пользователя, код выглядит обычно, вот:
$users = R::findAll('users');
foreach($users as $users_a){
$this->sendMessage($users_a['chat_id'], "сообщение рассылки");
}
Какие варианты рассылки еще есть, чтобы обойти данную ошибку.
Откройте по ссылке или QR бот @iMakeBot, нажмите кнопку Старт/Start.
Следуйте инструкциям бота.
Рассылку запускаете с бота?
да
Тогда:
1. скрипт падает по лимиту времени или памяти (что редко)
2. телеграм получает ошибку и делает повторный запрос на скрипт
Решение:
1. выставьте лимиты для скрипта больше текущих в идеале безлимит по времени (
set_time_limit(0)
)2. перед запуском рассылки уведомите телеграм что нажатие кнопки отработано (
answerCallbackQuery
)спасибо, буду пробывать)
По пробывал, все также, на 154 передачи сообщения, начинается новый цикл отправки, но и старый не останавливается, скрипт еще раз запустился, вот кусок кода и функция answerCallbackQuery
А также установил ini_set('set_time_limit', 0);
Посмотрите логи, на чем падает скрипт