domovoy_bot/FORUM_TOPICS_SETUP.md
Admin cef2ac3714 v1.19 ИГ рассылка + объявления 14 дней + настройки
🔥 ОБЪЯВЛЕНИЯ:
• Срок действия: 7 → 14 дней

🎯 ИНИЦИАТИВНАЯ ГРУППА:
• Добавлена кнопка 'Рассылка ИГ' в меню
• Команда /ig_broadcast для членов ИГ
• Поддержка текста + фото + файлов
• Настройка лимита в веб-панели

⚙️ ВЕБ-ПАНЕЛЬ:
• Новая страница /settings
• Настройка лимита рассылки ИГ (секунды)
• Кнопки статистики фильтруют пользователей
• Индикатор активного фильтра

🎨 UI:
• Исправлен <font> → emoji (Telegram не поддерживает)
• Цветные заголовки через emoji

📁 ФАЙЛЫ:
• handlers/ads.py: 14 дней
• handlers/initiative_group.py: рассылка ИГ
• web/app.py: API настроек
• web/templates/settings.html: страница настроек
• utils/ui_styles.py: без <font> тегов
• database: settings table

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-03-10 17:01:30 +00:00

206 lines
5.3 KiB
Markdown
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.

# 🏢 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** 🏠