Показать сообщение отдельно
Старый 19.12.2022, 11:55   #128
Merke
Member
 
Регистрация: May 2022
Сообщения: 52
Благодарил(а): 5 раз(а)
Поблагодарили: 3 раз(а) в 3 сообщениях
По умолчанию Ответ: Telegram бот с поддержкой команд. Бета-тестирование

Пользователь который остановил бота или удалил чат вызывает исключение в
Код:
                    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.

Последний раз редактировалось Merke, 19.12.2022 в 12:05
Merke сейчас на форуме   Ответить с цитированием