Бот не может работать с двумя и более людьми telebot

Всем здравствуйте! У меня во время работы над ботом возникла проблема - бот не может одновременно работать с 2 и более людьми. Код не уместится сюда, поэтому вот ссылка - https://drive.google.com/file/d/1lhWZbU56yzMPLlPe9jawtMVd8MiUTyXv/view?usp=sharing. Всем кто поможет, заранее спасибо:)


Ответы (1 шт):

Автор решения: Рустам Рысаев

Вижу что используете asyncio, но только один раз почему то. Чтобы код работал быстрее\одновременно для нескольких пользователей надо использовать asyncio для каждой функции и request запросов

примерно так

async def get_user_count():
    logs_dir = "Logs"
    file_path = os.path.join(logs_dir, "users.txt")

    if not os.path.exists(file_path):
        return 0

    async with aiofiles.open(file_path, "r") as file:
        user_ids = await file.read()
        return len(user_ids.splitlines())

async def log_transfer(old_user_id, new_user_id):
    logs_dir = "Logs"
    if not os.path.exists(logs_dir):
        os.makedirs(logs_dir)

    log_file = os.path.join(logs_dir, "transferlogs.txt")
    log_message = f"Доступ передан с ID {old_user_id} на ID {new_user_id}\n"

    async with aiofiles.open(log_file, 'a') as file:
        await file.write(log_message)

и так во всем коде

→ Ссылка