welcomecenterbot/bot/handlers/routing.py

42 lines
1.5 KiB
Python
Raw Normal View History

2023-09-11 20:21:55 +00:00
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 config import FEEDBACK_CHAT_ID
2023-09-11 20:04:53 +00:00
2023-09-18 07:50:48 +00:00
import logging
logger = logging.getLogger(__name__)
logging.basicConfig(level=logging.INFO)
2023-09-11 20:04:53 +00:00
async def handle_routing(msg, state):
cid = msg["chat"]["id"]
uid = msg["from"]["id"]
if cid == uid:
# сообщения в личке с ботом
2023-09-18 07:50:48 +00:00
logger.info("private chat message")
2023-09-18 11:02:24 +00:00
text = msg.get("text")
if text:
2023-09-18 08:01:13 +00:00
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)
2023-09-11 20:04:53 +00:00
elif str(cid) == FEEDBACK_CHAT_ID:
# сообщения из группы обратной связи
2023-09-18 07:50:48 +00:00
logger.info("feedback chat message")
2023-09-18 08:12:25 +00:00
logger.debug(msg)
if msg.get("reply_to_message"):
2023-09-11 20:04:53 +00:00
await handle_answer(msg)
elif msg["text"].startswith("/ask"):
await handle_command_ask(msg)
else:
# сообщения из всех остальных групп
2023-09-18 07:50:48 +00:00
logger.info(f"group {cid} chat message")
2023-09-18 11:02:24 +00:00
text = msg.get("text", msg.get("caption"))
if text:
await handle_default(msg, state)