@Dmitrij_py

Почему возникает исключение Gateway Timeout в телеграмм боте?

трейс ошибки

Traceback (most recent call last):
  File "C:\Users\user\PycharmProjects\GameBot\bot_telegram.py", line 21, in <module>
    executor.start_polling(dp, on_startup=on_startup)
  File "C:\Users\user\PycharmProjects\GameBot\venv\Lib\site-packages\aiogram\utils\executor.py", line 45, in start_polling
    executor.start_polling(
  File "C:\Users\user\PycharmProjects\GameBot\venv\Lib\site-packages\aiogram\utils\executor.py", line 320, in start_polling
    loop.run_until_complete(self._startup_polling())
  File "C:\Users\user\AppData\Local\Programs\Python\Python311\Lib\asyncio\base_events.py", line 653, in run_until_complete
    return future.result()
           ^^^^^^^^^^^^^^^
  File "C:\Users\user\PycharmProjects\GameBot\venv\Lib\site-packages\aiogram\utils\executor.py", line 372, in _startup_polling
    await self._welcome()
  File "C:\Users\user\PycharmProjects\GameBot\venv\Lib\site-packages\aiogram\utils\executor.py", line 361, in _welcome
    user = await self.dispatcher.bot.me
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\user\PycharmProjects\GameBot\venv\Lib\site-packages\aiogram\bot\bot.py", line 30, in me
    setattr(self, '_me', await self.get_me())
                         ^^^^^^^^^^^^^^^^^^^
  File "C:\Users\user\PycharmProjects\GameBot\venv\Lib\site-packages\aiogram\bot\bot.py", line 233, in get_me
    result = await self.request(api.Methods.GET_ME, payload)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\user\PycharmProjects\GameBot\venv\Lib\site-packages\aiogram\bot\base.py", line 236, in request
    return await api.make_request(await self.get_session(), self.server, self.__token, method, data, files,
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\user\PycharmProjects\GameBot\venv\Lib\site-packages\aiogram\bot\api.py", line 140, in make_request
    return check_result(method, response.content_type, response.status, await response.text())
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\user\PycharmProjects\GameBot\venv\Lib\site-packages\aiogram\bot\api.py", line 128, in check_result
    raise exceptions.TelegramAPIError(description)
aiogram.utils.exceptions.TelegramAPIError: Gateway Timeout

Писал бота, исправлял ошибки, как вдруг он перестал запускаться. Сначала вылетал Bad Gateway, а через 15-20 минут вместо него начал появляться Gateway Timeout. В коде нет проблем которые могли бы на это влиять, так что это значит?
вот огрызок кода который может помочь, там явно есть ошибки, но с ними бот хотя бы запускался
async def dice_game(message: types.Message, ):
	await bot.send_message(message.from_user.id, 'Let`s play dice!')
	bot_data = await bot.send_dice(message.from_user.id)
	bot_data = bot_data['dice']['value']
	user_data = await bot.send_dice(message.from_user.id)
	bot_data = bot_data['dice']['value']
	if bot_data > user_data:
		await bot.send_message(message.from_user.id, f'Число бота: {bot_data}, твое число: {user_data}. Ты проиграл!',
		                       reply_markup=stop)
	elif bot_data < user_data:
		await bot.send_message(message.from_user.id, f'Число бота: {bot_data}, твое число: {user_data}. Ты выиграл!',
		                       reply_markup=stop)
	elif bot_data == user_data:
		await bot.send_message(message.from_user.id, f'Число бота: {bot_data}, твое число: {user_data}. Ничья!',
		                       reply_markup=stop)
  • Вопрос задан
  • 299 просмотров
Решения вопроса 1
возможно, что телеграм забанил комп по айпишнику. такое бывает при большом кол-ве запросов на апи.
если оставить апишку в покое, то через какое-то время вновь заработает. такое может случиться, если на компе несколько ботом и еще телеграм работает. телеграм не перестал работать?
попробовать пингануть api.telegram.org
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы