from DragMusic.core.mongo import mongodb afkdb = mongodb.afk async def is_afk(user_id: int) -> bool: user = await afkdb.find_one({"user_id": user_id}) if not user: return False, {} return True, user["reason"] async def add_afk(user_id: int, mode): await afkdb.update_one( {"user_id": user_id}, {"$set": {"reason": mode}}, upsert=True ) async def remove_afk(user_id: int): user = await afkdb.find_one({"user_id": user_id}) if user: return await afkdb.delete_one({"user_id": user_id}) async def get_afk_users() -> list: users = afkdb.find({"user_id": {"$gt": 0}}) if not users: return [] users_list = [] for user in await users.to_list(length=1000000000): users_list.append(user) return users_list