Пользователь который остановил бота или удалил чат вызывает исключение в
Код:
for($e = 0; $e < count($UserDB); $e++ ){
$telegramApi->sendMessage($UserDB[$e], $messagetext);
echo 'Сообщение отправлено'.$UserDB[$e]."\n";
}
Отсюда задержка в 15 сек. Пользователи имеющие меньший индекс, чем $e получают одно и тоже оповещение, т.к. сообщение не удаляется. Пользователи имеющие индекс выше не получают оповещений.
P.S. Это мои предположения, возможно я и не прав.
Добавлено через 9 минут
А теперь предложения:
1. Добавить команду "/stop"
что то типа:
Код:
else if ($text == '/stop'){
if (in_array($chat_id, $arraydata )){
$telegramApi->sendMessage($chat_id, 'Пока,'. ' ' . $first_name . '! Оповещения отключены. Для включения введите пароль в формате "пароль".');
unset($arraydata[array_search($chat_id,$arraydata)]);
file_put_contents('/usr/local/bin/bottelegram/UserDB.txt', json_encode($arraydata, JSON_FORCE_OBJECT));
}
2. Пользователя, который вызывает исключение удалять из UserDB.txt.