Add multi-account command ACL system

This commit is contained in:
Codex
2026-05-13 22:19:27 +02:00
commit 27b2760079
14 changed files with 1296 additions and 0 deletions

21
app/handlers.py Normal file
View File

@@ -0,0 +1,21 @@
from __future__ import annotations
from typing import TYPE_CHECKING
from pyrogram import filters
from pyrogram.handlers import MessageHandler
from app.commands import CommandDispatcher
if TYPE_CHECKING:
from app.manager import AccountManager, AccountState
from pyrogram import Client
def register_common_handlers(client: "Client", manager: "AccountManager", account: "AccountState") -> None:
dispatcher = CommandDispatcher(manager.command_registry)
async def command_handler(client_: "Client", message) -> None:
await dispatcher.dispatch(client_, message, manager, account)
client.add_handler(MessageHandler(command_handler, filters.text))