Удаление спам рассылок из чата
Готовый шаблон

Удаление спам рассылок из чата

Краткий обзор шаблона

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

Что показываем в видео уроке по настройке шаблона

На практике показываем полную установку шаблона «Удаление спам рассылок из чата». Создаём бота в обновлённом BotFather (create new bot, имя, username, токен), подключаем его к Jetbot и активируем ключевой блок «входящий webhook»: копируем ID блока в управление ссылками Telegram и проверяем лог выполнения, чтобы убедиться, что бот ловит действия в чате. Добавляем бота администратором в чат и заполняем глобальные переменные: chat ID (получаем через вспомогательный бот), токен бота из BotFather, Telegram ID администратора (через временную переменную), ID блоков 1–5 из сценария, список «неприкосновенных» ID (чьи сообщения не проверяются) и URL чата. Отдельно разбираем список стоп-слов в одинарных кавычках: каждое слово или фраза проверяется строго в заданной форме, через запятую, без запятой в конце. В конце тестируем с двух аккаунтов: обычное сообщение проходит, спам-фраза мгновенно удаляется, а её автор попадает в чёрный список; всю статистику смотрим в списке «лог действия бота».

Ключевая идея

Ключевая идея урока — бот работает как надзиратель на входящем webhook: этот блок ловит каждое действие в чате, а дальше сценарий сверяет текст сообщения со списком стоп-слов и решает, удалить его и забанить автора или пропустить. Важный нюанс — стоп-слова проверяются буквально, в той форме, в какой записаны в одинарных кавычках: «заработать» не поймает «заработала», поэтому все нужные формы слова добавляют отдельно (именно это ограничение в следующем уроке снимает нейросеть). Список «неприкосновенных» Telegram ID позволяет не проверять доверенных людей — администраторов, кураторов, активных учеников — и экономить ресурсы. Все срабатывания пишутся в список «лог действия бота» (слово, за которое забанен человек, его username и статус), чтобы администратор мог отследить ошибочные баны и вручную вернуть человека через чёрный список чата.

Что за проект вы получаете

В итоге вы получаете готового модератора, который круглосуточно следит за порядком в чате: удаляет спам и рекламу, банит нарушителей и убирает лишние системные сообщения о входе и выходе участников. Настройка занимает 5–10 минут по инструкции, а сам бот работает автоматически и не требует постоянного присутствия живого модератора. Полная статистика действий в базе данных даёт прозрачный контроль — вы всегда видите, кого и за что забанил бот, и можете исправить случайную блокировку. Такой антиспам-бот подходит любому Telegram-сообществу, а на следующем шаге его легко усилить нейросетью для распознавания замаскированного спама.

Инструкция: как установить шаблон и настроить его под себя

  1. 1

    Зарегистрируйтесь на платформе Jetbot

    Бесплатная регистрация
    Каждый новый пользователь получает 7 дней бесплатного доступа ко всем функциям платформы для тестирования!
  2. 2

    Войдите на платформу Jetbot

  3. 3

    Добавьте шаблон в свой аккаунт

  4. 4

    Нажмите кнопку «Установить этот шаблон»

    Кнопка «Установить этот шаблон»

    Если кнопку «Установить этот шаблон» не видно — нажмите на иконку со стрелкой:

    Иконка со стрелкой
  5. 5

    Нажмите кнопку «Установить»

    Переменные, указанные в открывшемся окне, можно заполнить позже.

    Кнопка «Установить»
  6. 6

    Готово, шаблон установлен в ваш аккаунт и осталось только настроить его под себя

    Подробную инструкцию по настройке смотрите в видеоуроках: