# 🏢 TELEGRAM FORUM TOPICS — НАСТРОЙКА БОТА

**Обновлено:** 4 марта 2026
**Статус:** ✅ НАСТРОЕНО

---

## 📋 ЧТО СДЕЛАНО

Бот теперь поддерживает **Telegram Forum Topics** — отдельные ветки внутри чата!

### 10 тем настроено:

| № | Тема | ID | Куда отправляет бот |
|---|------|-----|---------------------|
| 1 | **Общий чат** | `1` | Рассылки, объявления, уведомления |
| 2 | **Важные объявления** | `6258` | Объявления жильцов (`/ad`) |
| 3 | **Ссылки** | `6265` | — |
| 4 | **Мемы** | `6262` | — |
| 5 | **Для автовладельцев** | `6266` | — |
| 6 | **Потеряшки** | `6263` | Потерянные вещи (`/lost`) |
| 7 | **Собрания собственников** | `6261` | События, собрания (`/events`) |
| 8 | **Вывоз КГМ** | `6264` | Напоминания о вывозе мусора |
| 9 | **Переписка с УО** | `6260` | — |
| 10 | **Важные телефоны** | `6259` | — |

---

## ⚙️ КОНФИГУРАЦИЯ

### .env
```ini
# Telegram Forum Topics
FORUM_ENABLED=true
TOPIC_GENERAL=1
TOPIC_ADS=6258
TOPIC_LINKS=6265
TOPIC_MEMES=6262
TOPIC_AUTO=6266
TOPIC_LOSTFOUND=6263
TOPIC_MEETINGS=6261
TOPIC_KGM=6264
TOPIC_UO=6260
TOPIC_PHONES=6259
```

### config.py
```python
FORUM_TOPICS = {
    'general': 1,
    'ads': 6258,
    'links': 6265,
    'memes': 6262,
    'auto': 6266,
    'lostfound': 6263,
    'meetings': 6261,
    'kgm': 6264,
    'uo': 6260,
    'phones': 6259,
}
```

---

## 🚀 КАК БОТ ИСПОЛЬЗУЕТ ТЕМЫ

### Объявления (`/ad`)
```python
# Отправка в тему "Важные объявления"
await bot.send_message(
    chat_id=ADMIN_CHAT_ID,
    message_thread_id=get_topic_id('ads'),  # 6258
    text="Объявление..."
)
```

### Рассылки от админа
```python
# Отправка в "Общий чат"
await bot.send_message(
    chat_id=ADMIN_CHAT_ID,
    message_thread_id=get_topic_id('general'),  # 1
    text="Рассылка..."
)
```

### События (`/events`)
```python
# Отправка в "Собрания собственников"
await bot.send_message(
    chat_id=ADMIN_CHAT_ID,
    message_thread_id=get_topic_id('meetings'),  # 6261
    text="Событие..."
)
```

---

## 📊 ЧТО КУДА ОТПРАВЛЯЕТСЯ

| Тип контента | Тема | ID |
|-------------|------|-----|
| **Объявления жильцов** (`/ad`) | Важные объявления | 6258 |
| **Рассылки админа** | Общий чат | 1 |
| **Напоминания ЖКХ** | Общий чат | 1 |
| **Отключения (вода, свет)** | Общий чат | 1 |
| **События дома** | Собрания собственников | 6261 |
| **Потерянные вещи** | Потеряшки | 6263 |
| **Вывоз КГМ** | Вывоз КГМ | 6264 |

---

## 🔧 ДОБАВЛЕНИЕ НОВЫХ ТЕМ

1. **Добавь в `.env`:**
   ```ini
   TOPIC_NEW=12345
   ```

2. **Обнови `config.py`:**
   ```python
   FORUM_TOPICS = {
       ...
       'new': TOPIC_NEW,
   }
   ```

3. **Используй в коде:**
   ```python
   await bot.send_message(
       chat_id=config.ADMIN_CHAT_ID,
       message_thread_id=config.get_topic_id('new'),
       text="..."
   )
   ```

4. **Перезапусти бота:**
   ```bash
   cd /home/matrixhasyou/domovoy_bot
   ./stop.sh && ./run.sh
   ```

---

## 🎯 УМНЫЙ АНАЛИЗАТОР ТЕМ

Бот автоматически определяет тему по тексту сообщения:

| Ключевые слова | Тема |
|---------------|------|
| "продам", "куплю", "отдам" | Важные объявления |
| "потерял", "нашёл", "ключи" | Потеряшки |
| "собрание", "голосование" | Собрания собственников |
| "мусор", "вывоз", "КГМ" | Вывоз КГМ |
| "сантехник", "электрик" | Важные телефоны |

---

## ✅ ПРОВЕРКА РАБОТЫ

1. **Создай объявление:**
   ```
   /ad
   ```
   → Должно появиться в теме "Важные объявления"

2. **Отправь рассылку:**
   ```
   /broadcast
   ```
   → Должно появиться в "Общем чате"

3. **Создай событие:**
   ```
   /event_add
   ```
   → Должно появиться в "Собрания собственников"

---

## 🛠️ ОТЛАДКА

### Бот отправляет не в ту тему:
```bash
# Проверь .env
cat .env | grep TOPIC_

# Проверь config.py
python -c "from config import FORUM_TOPICS; print(FORUM_TOPICS)"
```

### Ошибка "Invalid message_thread_id":
```bash
# Проверь что тема существует
# Открой тему в Telegram и проверь URL
```

### Бот не видит сообщения из тем:
```bash
# Проверь права бота в каждой теме
# Бот должен быть админом со доступом к сообщениям
```

---

**by MatrixHasYou** 🏠
