welcomecenterbot/bot/handlers/routing.py
2023-09-11 23:04:53 +03:00

42 lines
1.5 KiB
Python
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

from bot.handlers.handle_feedback import handle_feedback, handle_answer
from bot.handlers.handle_members_change import handle_join, handle_left
from bot.handlers.handle_default import handle_default
from bot.handlers.command_my import handle_command_my
from bot.handlers.command_graph import handle_command_graph
from bot.handlers.command_ask import handle_command_ask
from bot.config import FEEDBACK_CHAT_ID
async def handle_routing(msg, state):
cid = msg["chat"]["id"]
uid = msg["from"]["id"]
if cid == uid:
# сообщения в личке с ботом
print("private chat message")
if msg["text"].startswith("/my"):
await handle_command_my(msg)
elif msg["text"].startswith("/unlink"):
await handle_unlink(msg)
else:
await handle_feedback(msg, state)
elif str(cid) == FEEDBACK_CHAT_ID:
# сообщения из группы обратной связи
print("feedback chat message")
if "reply_to_message" in msg:
await handle_answer(msg)
elif msg["text"] == "/graph":
await handle_command_graph(msg)
elif msg["text"].startswith("/ask"):
await handle_command_ask(msg)
else:
# сообщения из всех остальных групп
print(f"group {cid} chat message")
if "text" in msg:
await handle_default(msg)
elif "new_chat_member" in msg:
await handle_join(msg)
elif "left_chat_member" in msg:
await handle_left(msg)