diff --git a/BybitBot_API.py b/BybitBot_API.py index 954d84b..1eff3a4 100644 --- a/BybitBot_API.py +++ b/BybitBot_API.py @@ -1,8 +1,8 @@ import asyncio import logging.config from aiogram import Bot, Dispatcher -import app.services.Bybit.functions.bybit_ws as bybit_ws -import app.telegram.database.requests as rq + +from app.services.Bybit.functions.bybit_ws import get_or_create_event_loop, set_event_loop from app.telegram.database.models import async_main from app.telegram.handlers.handlers import router from app.telegram.functions.main_settings.settings import router_main_settings @@ -21,37 +21,12 @@ bot = Bot(token=TOKEN_TG_BOT_1) dp = Dispatcher() -def get_or_create_event_loop() -> asyncio.AbstractEventLoop: - """ - Возвращает текущий активный цикл событий asyncio или создает новый, если его нет. - """ - try: - return asyncio.get_running_loop() - except RuntimeError: - loop = asyncio.new_event_loop() - asyncio.set_event_loop(loop) - return loop - - -loop = get_or_create_event_loop() -bybit_ws.set_event_loop(loop) - - -async def run_ws_for_user(tg_id, message) -> None: - """ - Запускает WebSocket Bybit для пользователя с указанным tg_id. - """ - - api_key = await rq.get_bybit_api_key(tg_id) - api_secret = await rq.get_bybit_secret_key(tg_id) - - await bybit_ws.start_execution_ws(api_key, api_secret, message) - - async def main() -> None: """ Основная асинхронная функция запуска бота: """ + loop = get_or_create_event_loop() + set_event_loop(loop) await async_main()