Стоп-слова
Система фильтрации стоп-слов позволяет модераторам групп настраивать правила для обнаружения и обработки сообщений, содержащих нежелательные слова или фразы. В этой документации описаны все доступные методы поиска, настройки и примеры их применения. Она создана на основе предоставленного кода и описания, чтобы быть понятной и полной.
Фильтр стоп-слов предназначен для:
Блокировки или обработки сообщений с определёнными словами или фразами.
Гибкой настройки через разные методы поиска и дополнительные параметры.
Управления списками стоп-слов (основной и дополнительные).
Модераторы могут включать/выключать фильтр, выбирать методы поиска, задавать действия (например, удаление сообщений или наказание пользователей) и создавать дополнительные списки стоп-слов.
Методы поиска стоп-слов
Система предлагает три метода поиска, которые определяют, как стоп-слова будут обнаружены в сообщениях:
1. Точное совпадение (Точное)Этот метод ищет только полные, точные совпадения слов, без учёта их частей в других словах или изменений с пробелами/символами.
Как работает: Сравнивает отдельные слова в сообщении с заданным стоп-словом.
Особенности:
Игнорирует слова с пробелами, символами или в составе других слов.
Чувствителен к точному написанию.
Примеры:
Стоп-слово: хрен
Сообщение: "хрен" → сработает
Сообщение: "х р е н → не сработает (пробелы) (используйте поиск по частичному совпадению)
Сообщение: "хренасебе" → не сработает (часть другого слова)
Стоп-слово: спам
Сообщение: "спам" → сработает
Сообщение: "спамер" → не сработает
Когда использовать: Для строгих правил, чтобы избежать ложных срабатываний на похожие слова.
2. Поиск по подстроке (Частичное)Метод ищет стоп-слово как часть текста, игнорируя пробелы и специальные символы.
Как работает: Проверяет, содержится ли стоп-слово в сообщении целиком или внутри других слов.
Особенности:
Обнаруживает слова, даже если они скрыты или разбиты.
Может привести к ложным срабатываниям.
Примеры:
Стоп-слово: баран
Сообщение: "баранина" → сработает (подстрока)
Сообщение: "б а р а н" → сработает (пробелы игнорируются)
Сообщение: "баран" → сработает
Стоп-слово: спам
Сообщение: "спамер" → сработает
Сообщение: "с п а м" → сработает
Когда использовать: Для обнаружения замаскированных или изменённых стоп-слов.
3. Настраиваемый поиск (CUSTOM)Позволяет задавать сложные правила с помощью специальных символов и операторов.
Как работает: Использует шаблоны для поиска слов или фраз с учётом вариаций.
Поддерживаемые операторы:
Звёздочка (*) — заменяет любое количество символов (включая ноль).
Пример: *сите
"пригласите" → сработает
"попросите" → сработает
"ситечко" → не сработает
Пример: сек*
"сексуально" → сработает
"секрет" → сработает
"засекли" → не сработает
Пример: *раб*
"заработок" → сработает
"работа" → сработает
"арабский" → сработает (возможен ложный результат)
Плюс (+) — заменяет одну или несколько букв внутри слова (без пробелов).
Пример: d(+)fendy
"defendy" → сработает (замена "e")
"de fendy" → не сработает (пробел)
Кавычки ("") — точный поиск фразы.
Пример: "Доброе утро"
"Доброе утро" → сработает
"Доброе утро, друзья" → не сработает (лишние слова)
Двойной амперсанд (&&) — ищет все слова в любом порядке.
Пример: картошка && пицца
"Мне нравится пицца и картошка" → сработает
"Мне нравится пицца" → не сработает (нет "картошка")
Вопросительный знак (?) — заменяет одну букву или её отсутствие.
Пример: тест?
"тест" → сработает
"теста" → сработает
"тестирование" → не сработает (слишком много букв)
Когда использовать: Для сложных задач, где нужны вариации слов, комбинации или точные фразы.
Настройки фильтра
Основные параметры
Включение/выключение фильтра: Опция enable_stop_words активирует или деактивирует фильтрацию.
Метод поиска: Выбор между STRICT, SUBSTRING или CUSTOM через меню настроек.
Удаление сообщений: Опция delete_message определяет, будет ли сообщение удаляться при срабатывании фильтра.
Наказание пользователя: Выбор действия для пользователя:
Ничего (NOTHING)
Уведомление (NOTIFY)
Предупреждение (WARN)
Мут (MUTE)
Бан (BAN)
Кик (KICK)
Управление списками стоп-слов
Основной список: Создаётся автоматически для каждой группы
Дополнительные списки: Можно создавать вручную с уникальными названиями (до 50 символов, буквы, цифры, пробелы).
Добавление стоп-слов:
Файлом (.txt или .csv).
Вручную (по одному слову/фразе на строку).
Удаление: Полное удаление всех слов в списке через кнопку "Удалить все".
Экспорт: Выгрузка списка в .txt-файл.
Поддержка эмодзи и специальных символов
Эмодзи: Система может заменять эмодзи на соответствующие буквы (например, 🅷 → "н") в зависимости от реализации.
Символы:
В методе STRICT учитываются только точные слова.
В SUBSTRING и CUSTOM пробелы и символы могут игнорироваться или обрабатываться в зависимости от шаблона.
Латиница. Иногда спамеры меняют кирилицу на латиницу для маскировки. Такие сообщения также распознаются.
Рекомендации по настройке
Точное совпадение (STRICT): Используйте для простых и строгих фильтров, чтобы минимизировать ложные срабатывания.
Поиск по подстроке (SUBSTRING): Подходит для обнаружения скрытых или модифицированных слов, но требует осторожности из-за возможных пересечений.
Настраиваемый поиск (CUSTOM): Идеален для сложных сценариев, таких как вариации слов, точные фразы или комбинации.
Last updated