version-0.2.0

This commit is contained in:
2024-01-06 14:25:35 +03:00
parent bc05b93c47
commit 908529b5bb
26 changed files with 185 additions and 153 deletions

41
handlers/routing.py Normal file
View File

@@ -0,0 +1,41 @@
from handlers.handle_feedback import handle_feedback, handle_answer
from handlers.handle_default import handle_default
from handlers.command_my import handle_command_my
from handlers.command_graph import handle_command_graph
from handlers.command_ask import handle_command_ask
from bot.config import FEEDBACK_CHAT_ID
import logging
logger = logging.getLogger(__name__)
logging.basicConfig(level=logging.INFO)
async def handle_routing(msg, state):
cid = msg["chat"]["id"]
uid = msg["from"]["id"]
if cid == uid:
# сообщения в личке с ботом
logger.info("private chat message")
text = msg.get("text")
if text:
if text.startswith("/my"):
await handle_command_my(msg, state)
elif text.startswith("/graph"):
await handle_command_graph(msg)
else:
await handle_feedback(msg, state)
elif str(cid) == FEEDBACK_CHAT_ID:
# сообщения из группы обратной связи
logger.info("feedback chat message")
logger.debug(msg)
if msg.get("reply_to_message"):
await handle_answer(msg)
elif msg.get("text", "").startswith("/ask"):
await handle_command_ask(msg)
else:
# сообщения из всех остальных групп
logger.info(f"group {cid} chat message")
text = msg.get("text", msg.get("caption"))
if text:
await handle_default(msg, state)