|
|
- import logging
- from typing import Any, Dict
-
- from paircd.client import Client
- from paircd.message import Message
- from paircd.server import Server
-
- CMD_HANDLERS: Dict[str, Any] = {}
- CMD_EXPECTED_ARGC: Dict[str, int] = {}
-
-
- def register_cmd_handler(cmd: str, argc: int, handler) -> None:
- CMD_EXPECTED_ARGC[cmd] = argc
- CMD_HANDLERS[cmd] = handler
-
-
- async def handle_cmd(server: Server, client: Client, msg: Message) -> None:
- if msg.cmd not in CMD_HANDLERS:
- logging.warning(f"Unknown command: {msg.cmd}")
- return
- await CMD_HANDLERS[msg.cmd](server, client, msg)
|