Стоп-слова
РаботаетСтоп-слова
Настройки стоп-слов: методы поиска, глобальный спам-словарь, списки, действия, сроки и массовый импорт.
Совет: меняйте по одному параметру и проверяйте результат в группе — так проще заметить ложные срабатывания.
Коротко
Стоп-слова — управляемые списки запрещённых слов и фраз. Используйте несколько списков, если разные темы требуют разных действий.
Как это работает
- При получении сообщения каждый активный список проверяется отдельно.
- Метод поиска определяет, считается ли совпадением целое слово или подстрока.
- Параметры совпавшего списка задают удаление, вес предупреждения, действие и срок.
Настройка по шагам
- Откройте Defendy в Telegram, выберите группу и раздел «Стоп-слова».
- Включите фильтр и выберите один метод поиска. Этот метод общий для всех списков стоп-слов группы.
- Откройте список по умолчанию или создайте отдельный список под конкретную политику, например «Скам-предложения» или «Упоминания конкурентов».
- Укажите, удалять ли сообщение, затем выберите действие к участнику, срок и вес предупреждения для этого списка.
- Добавьте каждое слово, фразу или правило CUSTOM отдельной записью. При ручном вводе используйте запятую или Enter; для импорта — файл .txt.
- До мута, кика или бана проверьте в тестовой группе совпадение, безопасное похожее слово, словоформу и написание с разделителями.
Разбор каждой настройки
Включить фильтр
По умолчанию: Выключено.
Включает поиск стоп-слов в группе.
Метод поиска
По умолчанию: Поиск подстроки.
Точный (STRICT) сопоставляет целые нормализованные слова, Частичный (SUBSTRING) ищет буквальные фрагменты, Пользовательский (CUSTOM) применяет расширенные правила.
Глобальный спам-словарь (скоро)
По умолчанию: Выключено.
Зарезервированный общий спам-словарь. Переключатель текущего WebApp заблокирован и не меняется.
Название списка
По умолчанию: По умолчанию.
Название для различения нескольких политик стоп-слов. Список по умолчанию нельзя удалить; дополнительные списки можно переименовать или удалить.
Действие списка
По умолчанию: Ничего.
Действие при совпадении: ничего, варн, уведомление, мут, кик или бан — в пределах стандартного списка наказаний.
Длительность действия
По умолчанию: 3600 с.
Срок временного действия. Доступен полный список сроков, включая бессрочный вариант там, где действие его поддерживает.
Удалять сообщение
По умолчанию: Включено.
Удаляет сообщение, совпавшее с этим списком, независимо от выбранного наказания.
Вес предупреждения
По умолчанию: 1.
Добавляет от 1 до 5 баллов предупреждений, если действие списка использует варны.
Массовый импорт
По умолчанию: Ручной ввод.
Добавляйте записи через запятую или Enter либо загрузите файл .txt. WebApp принимает файл до 1 МБ и читает не более 5000 записей, после чего API применяет лимиты тарифа.
Как выбрать метод поиска
Названия режимов описывают сопоставление строк, а не лингвистический анализ. Ни один режим не выполняет стемминг, лемматизацию и автоматическое распознавание падежей или других словоформ.
| Режим | Что считается совпадением | Когда применять | Главный риск |
|---|---|---|---|
| Точный | Обычная запись должна совпасть с отдельным нормализованным словом. | Имена, коды и термины, которые нужно ловить только целиком. | Склонения и другие формы автоматически не добавляются. |
| Частичный | Нормализованная запись может находиться в любом месте нормализованного сообщения. | Характерные основы слов и намеренно широкий запрет. | Те же буквы могут оказаться внутри безопасного слова. |
| Пользовательский | Каждая запись становится правилом с обязательными частями, исключениями, точными фразами и масками. | Склонения, контекстные условия и известные ложные совпадения. | Слишком широкая маска может захватить лишний текст. |
Что происходит до поиска
Регистр не учитывается. Defendy также нормализует часть похожих латинских букв и букв-эмодзи и убирает пунктуацию, которой пытаются разорвать слово. Поэтому запись может сработать на написании с точками между буквами. В частичном режиме из записи и сообщения удаляются небуквенные разделители, поэтому пробелы и пунктуация не защищают от совпадения.
Нормализация — не перевод и не морфологический словарь. Всегда проверяйте конкретный язык и реальные написания из вашей группы.
Точный режим подробно
Запись из одного слова должна совпасть с отдельным нормализованным словом:
| Запись | Сообщение | Результат | Причина |
|---|---|---|---|
кот | пришёл кот | Срабатывание | Слово присутствует отдельно. |
кот | пришли коты | Нет | Окончание изменилось. |
кот | скотина | Нет | Буквы находятся только внутри другого слова. |
Запись с пробелами сохраняется как фраза. В текущем runtime такая фраза ищется как нормализованная последовательность и может находиться внутри более длинной последовательности. Если важны строгие границы фразы, используйте пользовательский режим и заключите фразу в двойные кавычки.
Частичный режим и склонения
Частичный режим — это буквальный поиск подстроки после нормализации. Он часто ловит словоформы, если сохранённые буквы не изменились, но не понимает, почему слово изменилось.
| Запись | Пример сообщения | Результат |
|---|---|---|
кот | вижу кота | Срабатывание |
кот | играю с котом | Срабатывание |
кот | скотина | Срабатывание — возможная ошибка |
реклама | нет рекламы | Не сработает: окончание изменилось |
реклам | реклама / рекламы / рекламой | Сработает, но основу нужно проверить на безопасных словах |
Для русского языка можно использовать устойчивую основу, только если она достаточно характерная. Корень из двух-трёх букв обычно слишком широкий. Составьте небольшой набор: нужные падежи и числа плюс несвязанные слова с теми же буквами.
Пользовательские правила
В пользовательском режиме каждый элемент списка — одно законченное правило. Обычный текст по-прежнему означает «содержит этот текст», а операторы добавляют условия.
| Синтаксис | Значение | Пример |
|---|---|---|
A && B | В сообщении должны присутствовать обе части. | скидк* && ссылк* |
!A | Этой части не должно быть. Используйте после положительного условия. | кот* && !скот* |
"точная фраза" | Фраза с границами слов. | "купить сейчас" |
* | Ноль или больше любых символов. | реклам* |
+ | Один или больше любых символов. | промо+код |
? | Ровно один любой символ. | сп?м |
Это управляемые маски, а не поле для произвольных регулярных выражений. Остальные специальные символы regex воспринимаются как обычный текст.
Полезные шаблоны:
реклам*покрывает формы с общей устойчивой частью;кот* && !скот*сохраняет нужные словоформы и исключает известное безопасное слово;"купить сейчас"требует цельную фразу, а не два слова в разных частях сообщения;скидк* && ссылк*срабатывает только при наличии обоих рекламных признаков;казино && !настольное казиноисключает известный безопасный контекст, но исключение действует на всё сообщение.
Все положительные части правила должны совпасть, а все отрицательные — отсутствовать. Условия проверяются по всему нормализованному сообщению, а не только рядом друг с другом. Для вариантов «или» создавайте отдельные записи: одна запись не является OR-выражением.
Списки и последствия
Метод поиска общий для группы, а последствия настраиваются для каждого списка. Например, список «Скам-ссылки» может удалять сообщение и добавлять варн, а список «Нежелательные темы» — только уведомлять. Список по умолчанию удалить нельзя; дополнительные списки можно переименовывать и удалять.
Переключатель «Удалять сообщение» не зависит от действия к участнику. Если выключить удаление, варн, мут или бан не выключатся автоматически. Перед тестом проверьте оба элемента.
Чек-лист безопасной проверки
Для каждой новой записи или правила отправьте в тестовую группу минимум:
- очевидное запрещённое совпадение;
- тот же текст в другом регистре и с пунктуацией;
- форму в другом падеже или числе;
- слово с точками или другими разделителями;
- безопасное слово с той же основой;
- сообщение с исключением из пользовательского правила;
- чистое сообщение, которое нельзя трогать.
После смены метода закройте и снова откройте экран настроек и убедитесь, что выбранное значение сохранилось. Пока тест не пройден, не используйте необратимые действия вроде кика или бана.
Практический пример
Создайте список «Скам-фразы», добавьте несколько реальных примеров и сначала выберите уведомление либо предупреждение. Частичный поиск ловит общие фрагменты, но его нужно проверить на безопасных словах; известные ложные совпадения исключайте отрицательными условиями CUSTOM.
Рекомендации
- Частичный поиск не понимает грамматику: для склонений используйте проверенную основу или пользовательское правило.
- У списков стоп-слов нет отдельного поля исключений. Сузьте запись, смените режим или добавьте отрицательное условие CUSTOM.
- Называйте списки практично: по теме, языку или кампании.
Если не работает
- Проверьте, что Defendy всё ещё администратор группы.
- Обновите панель настроек и убедитесь, что редактируете правильную группу.
- Если настройка сохраняется, но не работает, проверьте права бота в Telegram.
- Если непонятно, что произошло, откройте журнал действий.
- Если словоформа пропущена, помните: точный и частичный поиск не выполняют морфологический разбор; проверьте устойчивую основу или маску CUSTOM.
- Если частичное правило ловит безопасное слово, сузьте основу или замените его пользовательским правилом с отрицательным условием.
- Переключатель глобального спам-словаря помечен «Скоро» и намеренно недоступен.