Бот построен на стандартной трёхслойной системе. Фасадом служит ручка для доступа через telegram бота. Считаем её транспортом и не считаем частью системы. Обработчики - зарегистрированные команды и колбеки бота. Есть обработчики plaintext-a Сервисы - что-то, что объединяет под собой доступ к репозиториям. Определёет бизнес-логику бота. Репозитории - интерфейс для доступа к базе данных.
- Контроль посетителей чата
- Разрешено присутсвовать только пользователям зарегистрированным в конкретном доме (авто-кик)
- Уведомления о незарегистрированных участниках
- Интерфейс подтверждения конкретного участника с выбором номер квартиры/паркоместа
- Импорт участников из файла админа?
- Контроль содержимого чатов:
- Антиспам по ключевым словам
- Антимат
- Автоматическое обновление ссылки в боте через админ-канал бота
- С подтверждением через администратора
- C автоматическим подтверждением ботом зарегистрированных пользователей
- C автоматическим подтверждением ботом зарегистрированных пользователей конкретного дома
- Делегирование проверки регистрации на администратора чата дома
- Надо уметь связывать чаты и дома в базе
- Надо уметь отвязывать чаты и дома на случай злоупотребления делегированием прав регистрации
Проще всего начать с антимата и антиспама.
В: Как уведомить админа? О: Добавляем кнопку "Я админ" с дисклеймером "Добавьте бота в ваш чат и выдайте права на редактирование сообщений"
В: Как уведомить админа О: После добавления бот должен иметь право прочитать список админов чата и для админа любого из чатов начать показывать плашку "Для администраторов чата" Под плашкой будет прятаться список чатов. Каждый элемент списка чатов содержит настройку Антиспама. При переходе в раздел Антиспам должна быть надпись "Антиспам не может работать, боту не хватает прав доступа"
В разделе Антиспам показываем кнопку "включить антиспам", "включить антимат".