Template
mirror of
https://github.com/djimboy/djimbo_template_aio3.git
synced 2026-08-25 22:47:43 +00:00
Update
This commit is contained in:
@@ -5,7 +5,6 @@ import sys
|
||||
|
||||
import colorama
|
||||
from aiogram import Bot, Dispatcher
|
||||
from aiogram.client.default import DefaultBotProperties
|
||||
|
||||
from tgbot.data.config import BOT_TOKEN, BOT_SCHEDULER, get_admins
|
||||
from tgbot.database.db_helper import create_dbx
|
||||
@@ -29,19 +28,14 @@ async def main():
|
||||
BOT_SCHEDULER.start() # Запуск Шедулера
|
||||
dp = Dispatcher() # Образ Диспетчера
|
||||
arSession = AsyncRequestSession() # Пул асинхронной сессии запросов
|
||||
bot = Bot( # Образ Бота
|
||||
token=BOT_TOKEN,
|
||||
default=DefaultBotProperties(
|
||||
parse_mode="HTML",
|
||||
)
|
||||
)
|
||||
bot = Bot(token=BOT_TOKEN, parse_mode="HTML") # Образ Бота
|
||||
|
||||
register_all_middlwares(dp) # Регистрация всех мидлварей
|
||||
register_all_routers(dp) # Регистрация всех роутеров
|
||||
|
||||
try:
|
||||
await set_commands(bot) # Установка команд
|
||||
await startup_notify(bot) # Уведомления админам при запуске бота
|
||||
await set_commands(bot) # Установка пользовательских команд в боте
|
||||
await startup_notify(bot) # Уведомление админов о запуске бота
|
||||
await scheduler_start(bot) # Подключение шедулеров
|
||||
|
||||
bot_logger.warning("BOT WAS STARTED")
|
||||
@@ -54,21 +48,28 @@ async def main():
|
||||
await bot.delete_webhook() # Удаление вебхуков, если они имеются
|
||||
await bot.get_updates(offset=-1) # Сброс пендинг апдейтов
|
||||
|
||||
# Запуск бота (поллинга)
|
||||
await dp.start_polling(
|
||||
bot,
|
||||
arSession=arSession,
|
||||
allowed_updates=dp.resolve_used_update_types(),
|
||||
)
|
||||
finally:
|
||||
await arSession.close()
|
||||
await bot.session.close()
|
||||
await arSession.close() # Закрытие Асинхронной Сессии для прочих запросов
|
||||
await bot.session.close() # Закрытие сессии бота
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
create_dbx()
|
||||
create_dbx() # Генерация Базы Данных
|
||||
|
||||
try:
|
||||
asyncio.run(main())
|
||||
if sys.platform == 'win32': # Запуск на 32-х битных системах
|
||||
asyncio.set_event_loop_policy(asyncio.WindowsSelectorEventLoopPolicy())
|
||||
loop = asyncio.ProactorEventLoop()
|
||||
asyncio.set_event_loop(loop)
|
||||
loop.run_until_complete(main())
|
||||
else:
|
||||
asyncio.run(main()) # Запуск на всех других системах
|
||||
except (KeyboardInterrupt, SystemExit):
|
||||
bot_logger.warning("Bot was stopped")
|
||||
finally:
|
||||
|
||||
Reference in New Issue
Block a user