feature/chat-system #1

Merged
trevor merged 11 commits from feature/chat-system into master 2025-11-17 00:32:48 +00:00
43 changed files with 6262 additions and 1054 deletions
Showing only changes of commit 0dc0ae8111 - Show all commits

10
main.py
View File

@@ -145,17 +145,19 @@ async def main():
logger.info("Запуск бота...")
# Подключаем роутеры в правильном порядке
# 1. Сначала специфичные роутеры
# 1. Основной роутер main.py с базовыми командами (/start, /help, /admin)
dp.include_router(router)
# 2. Специфичные роутеры
dp.include_router(admin_router) # Админ панель - самая высокая специфичность
dp.include_router(registration_router) # Регистрация
dp.include_router(admin_account_router) # Админские команды счетов
dp.include_router(admin_chat_router) # Админские команды чата
dp.include_router(redraw_router) # Повторные розыгрыши
dp.include_router(account_router) # Пользовательские счета
dp.include_router(chat_router) # Пользовательский чат (последним - ловит все сообщения)
# 2. Основной роутер main.py
dp.include_router(router)
# 3. Chat router ПОСЛЕДНИМ (ловит все необработанные сообщения)
dp.include_router(chat_router) # Пользовательский чат (последним - ловит все сообщения)
# Запускаем polling
try:

View File

@@ -15,7 +15,7 @@ import json
from ..core.database import async_session_maker
from ..core.services import UserService, LotteryService, ParticipationService
from ..core.config import ADMIN_IDS
from ..core.models import User
from ..core.models import User, Lottery, Participation, Account
# Состояния для админки

View File

@@ -107,9 +107,10 @@ async def handle_text_message(message: Message):
"""Обработчик текстовых сообщений"""
# Проверяем является ли это командой
if message.text and message.text.startswith('/'):
# Список пользовательских команд, которые НЕ нужно пересылать
user_commands = ['/start', '/help', '/my_code', '/my_accounts']
admin_commands = ['/start',
# Список команд, которые НЕ нужно пересылать
# (Базовые команды /start, /help уже обработаны раньше в main.py)
user_commands = ['/my_code', '/my_accounts']
admin_commands = [
'/add_account', '/remove_account', '/verify_winner', '/winner_status', '/user_info',
'/check_unclaimed', '/redraw',
'/chat_mode', '/set_forward', '/global_ban', '/ban', '/unban', '/banlist', '/delete_msg', '/chat_stats'