Стоп-слова

Работает

Стоп-слова

Настройки стоп-слов: методы поиска, глобальный спам-словарь, списки, действия, сроки и массовый импорт.

Совет: меняйте по одному параметру и проверяйте результат в группе — так проще заметить ложные срабатывания.

Коротко

Стоп-слова — управляемые списки запрещённых слов и фраз. Используйте несколько списков, если разные темы требуют разных действий.

Как это работает

  1. Сообщение проверяется по записям списков с общим методом поиска группы.
  2. Метод поиска определяет, считается ли совпадением целое слово или подстрока.
  3. Параметры первого найденного совпадения задают удаление, вес предупреждения, действие и срок. Не рассчитывайте на суммирование действий всех списков или автоматический выбор самого строгого наказания.

Настройка в мини-приложении

Откройте «Настройки» в личном чате с @defendy_bot, выберите группу в «Мои группы» и проверьте её название сверху.

  1. Откройте «Стоп-слова» и включите фильтр.
  2. Выберите тип поиска и решите, нужно ли распознавать подмену букв.
  3. Откройте «Список по умолчанию» или нажмите «Создать список» и задайте название.
  4. Откройте список: выберите удаление сообщения и наказание, затем «Добавить».
  5. Убедитесь, что выбран целевой список. Введите слова или загрузите TXT, выберите разделитель и нажмите «Сохранить».

Переключатели и списки выбора сохраняются при изменении. Если открыта отдельная форма с кнопкой «Сохранить», нажмите её перед выходом. При ошибке снова откройте раздел и проверьте фактические значения.

Разбор каждой настройки

Включить фильтр

По умолчанию: Выключено.

Включает поиск стоп-слов в группе.

Метод поиска

По умолчанию: Поиск подстроки.

Точный (STRICT) сопоставляет целые нормализованные слова, Частичный (SUBSTRING) ищет буквальные фрагменты, Пользовательский (CUSTOM) применяет расширенные правила.

Глобальный спам-словарь (скоро)

По умолчанию: Выключено.

Зарезервированный общий спам-словарь. Переключатель текущего WebApp заблокирован и не меняется.

Название списка

По умолчанию: По умолчанию.

Название для различения нескольких политик стоп-слов. Список по умолчанию нельзя удалить; дополнительные списки можно переименовать или удалить.

Действие списка

По умолчанию: Нет.

Действие при совпадении: ничего, варн, мут, кик или бан. Уведомление не входит в текущий набор действий на экране стоп-слов.

Длительность действия

Перед включением мута или бана явно выберите срок. В текущей форме пустое или нулевое сохранённое значение может отображаться как «1 час» — эта подпись сама по себе не подтверждает сохранённую длительность. Ноль для поддерживающих его действий означает бессрочное наказание. Временный мут должен длиться не менее 60 секунд.

Как выбрать метод поиска

Названия режимов описывают сопоставление строк, а не лингвистический анализ. Ни один режим не выполняет стемминг, лемматизацию и автоматическое распознавание падежей или других словоформ.

РежимЧто считается совпадениемКогда применятьГлавный риск
ТочныйОбычная запись должна совпасть с отдельным нормализованным словом.Имена, коды и термины, которые нужно ловить только целиком.Склонения и другие формы автоматически не добавляются.
ЧастичныйНормализованная запись может находиться в любом месте нормализованного сообщения.Характерные основы слов и намеренно широкий запрет.Те же буквы могут оказаться внутри безопасного слова.
ПользовательскийКаждая запись становится правилом с обязательными частями, исключениями, точными фразами и масками.Склонения, контекстные условия и известные ложные совпадения.Слишком широкая маска может захватить лишний текст.

Что происходит до поиска

Регистр не учитывается. Дополнительное распознавание похожих латинских букв и букв-эмодзи зависит от переключателя «Распознавать подмену букв». По умолчанию он выключен. Включение может находить обходы фильтра, но также меняет совпадения — проверьте обычные слова вашей группы.

Обработка пробелов и пунктуации зависит от режима поиска. Нормализация не является переводом или морфологическим словарём: проверяйте конкретные примеры.

Точный режим подробно

Запись из одного слова должна совпасть с отдельным нормализованным словом:

ЗаписьСообщениеРезультатПричина
котпришёл котСрабатываниеСлово присутствует отдельно.
котпришли котыНетОкончание изменилось.
котскотинаНетБуквы находятся только внутри другого слова.

Запись с пробелами сохраняется как фраза. В текущем runtime такая фраза ищется как нормализованная последовательность и может находиться внутри более длинной последовательности. Если важны строгие границы фразы, используйте пользовательский режим и заключите фразу в двойные кавычки.

Частичный режим и склонения

Частичный режим — это буквальный поиск подстроки после нормализации. Он часто ловит словоформы, если сохранённые буквы не изменились, но не понимает, почему слово изменилось.

ЗаписьПример сообщенияРезультат
котвижу котаСрабатывание
котиграю с котомСрабатывание
котскотинаСрабатывание — возможная ошибка
рекламанет рекламыНе сработает: окончание изменилось
рекламреклама / рекламы / рекламойСработает, но основу нужно проверить на безопасных словах

Для русского языка можно использовать устойчивую основу, только если она достаточно характерная. Корень из двух-трёх букв обычно слишком широкий. Составьте небольшой набор: нужные падежи и числа плюс несвязанные слова с теми же буквами.

Пользовательские правила

В пользовательском режиме каждый элемент списка — одно законченное правило. Обычный текст по-прежнему означает «содержит этот текст», а операторы добавляют условия.

СинтаксисЗначениеПример
A && BВ сообщении должны присутствовать обе части.скидк* && ссылк*
!AЭтой части не должно быть. Используйте после положительного условия.кот* && !скот*
"точная фраза"Фраза с границами слов."купить сейчас"
*Ноль или больше любых символов.реклам*
+Один или больше любых символов.промо+код
?Ровно один любой символ.сп?м

Это управляемые маски, а не поле для произвольных регулярных выражений. Остальные специальные символы regex воспринимаются как обычный текст.

Полезные шаблоны:

  • реклам* покрывает формы с общей устойчивой частью;
  • кот* && !скот* сохраняет нужные словоформы и исключает известное безопасное слово;
  • "купить сейчас" требует цельную фразу, а не два слова в разных частях сообщения;
  • скидк* && ссылк* срабатывает только при наличии обоих рекламных признаков;
  • казино && !настольное казино исключает известный безопасный контекст, но исключение действует на всё сообщение.

Все положительные части правила должны совпасть, а все отрицательные — отсутствовать. Условия проверяются по всему нормализованному сообщению, а не только рядом друг с другом. Для вариантов «или» создавайте отдельные записи: одна запись не является OR-выражением.

Списки и последствия

Метод поиска и распознавание подмены букв общие для группы, а последствия настраиваются для каждого списка. Например, один список может только удалять сообщение без наказания участника, а другой — удалять и добавлять варн. Есть список по умолчанию и до десяти дополнительных списков. Список по умолчанию удалить нельзя; дополнительные можно переименовывать и удалять.

Переключатель «Удалять сообщение» не зависит от действия к участнику. Если выключить удаление, варн, мут или бан не выключатся автоматически. Перед тестом проверьте оба элемента.

Чек-лист безопасной проверки

Для каждой новой записи или правила отправьте в тестовую группу минимум:

  1. очевидное запрещённое совпадение;
  2. тот же текст в другом регистре и с пунктуацией;
  3. форму в другом падеже или числе;
  4. слово с точками или другими разделителями;
  5. безопасное слово с той же основой;
  6. сообщение с исключением из пользовательского правила;
  7. чистое сообщение, которое нельзя трогать.

После смены метода закройте и снова откройте экран настроек и убедитесь, что выбранное значение сохранилось. Пока тест не пройден, не используйте кик или бан на реальных участниках: это может лишить их доступа к группе.

Практический пример

В отдельной тестовой группе создайте список «Рекламные фразы» и добавьте несколько подготовленных примеров. Для первой проверки выберите действие «Нет» и отдельно включите удаление тестовых сообщений. Предупреждение может запустить уже настроенную эскалацию, поэтому его проверяйте после совпадений. Частичный поиск нужно проверить на безопасных словах; известные ложные совпадения можно уточнять отрицательными условиями CUSTOM.

Рекомендации

  • Частичный поиск не понимает грамматику: для склонений используйте проверенную основу или пользовательское правило.
  • У списков стоп-слов нет отдельного поля исключений. Сузьте запись, смените режим или добавьте отрицательное условие CUSTOM.
  • Называйте списки практично: по теме, языку или кампании.

Если не работает

  • Проверьте, что Defendy всё ещё администратор группы.
  • Обновите панель настроек и убедитесь, что редактируете правильную группу.
  • Если настройка сохраняется, но не работает, проверьте права бота в Telegram.
  • Если журнал действий уже подключён и нужная категория включена, проверьте запись о событии. Журнал не покажет события, которые не записывались.
  • Если словоформа пропущена, помните: точный и частичный поиск не выполняют морфологический разбор; проверьте устойчивую основу или маску CUSTOM.
  • Если частичное правило ловит безопасное слово, сузьте основу или замените его пользовательским правилом с отрицательным условием.
  • Переключатель глобального спам-словаря помечен «Скоро» и намеренно недоступен.

Проверьте срок наказания

После смены типа наказания заново проверьте длительность: форма может сбросить её в 0. Ноль означает бессрочное действие там, где оно поддерживается, а не отключение наказания. Для временного мута минимальный срок — 60 секунд.

Размер TXT до 8 МиБ и 100 000 прочитанных записей — предел загрузчика, а не доступный объём списка. Отдельно действуют ограничения тарифа и каждого списка: текущая модель предусматривает 100, 1 000 или 5 000 слов на список. Фактический лимит проверяйте в своей группе.

Нужна помощь?

Если настройка ведёт себя не так, как ожидается, напишите в поддержку.@ubotz