Шарик - антиспам телеграм бот на n8n без белого ip.

Самохостятам привет!

Это моя краткая заметка о ai + n8n

  • какие возможности открывает ИИ+n8n в самохостинге
  • пара слов про особенности создания автоматизаций и в целом работы с ИИ

Предыстория

Имея открытый для входа канал в ТГ - вы точно столкнетесь с ботами.
И участники начнут писать:

  • боты! надо антиспам защиту
  • я видел\ставил бесплатного антиспам бота ХХХ, УУУ

Но есть ключевое НО - чтобы работал антиспам бот, ему нужен админ доступ к каналу..
А это значит, что:

  • скрытые списки пользователей канала - больше не скрытые
  • в случае дырки в боте
    • эти данные утекут и Вашим пользователям начнут в ЛС стучать другие боты..
    • может быть причинен вред каналу, не фатальный, но удалить всех или забанить, а Вам потом это чинить.

Отсюда у меня были простые требования к антиспам боту:
а) open source с открытм кодом для изучения
b) self hosted для размещения у себя
в) работа без белого ip, т.к. я не хотел его хостить публично на VPS\VDS
г) желательно n8n, чтобы не заниматься обновлением дополнительного сервиса, этот у меня уже работает, его обновляет разработчик, а сами ноды не содержат компонентов необходимых к патчу\апдейту.

И таких проектов я не нашел, а все кто предлагал какие то проекты - были закрытие, хоть и бесплатные..

Что изменилось в 2026?

Правильно, ИИ стало сильно умнее и доступнее.
Год назад - создание такого бота заняло бы много времени.
Сейчас - мы говорим про 1-2 часа, с учетом тестирования и допиливания.

Так и появился Шарик the dog bot =)

Поведение шарика:

  • опрос раз в 10 секунд сервера ТГ "Чего там нового?’
  • поиск в ответе событие входа пользователя
  • удаление всех сообщений, которое успел отправить новенький за 10 сек. “тех. окна”
  • полный мьют(от англ. mute = беззвучный), запрет отправки картинок и сообщений
  • приветствие новенького и просьба ответить
  • далее развилка
    • есть правильный ответ = возвращаем право отправки сообщений + удаляем из чата общее сообщение
    • нет ответа 30 сек\ответ неверный = удаляем сообщение, не снимая мьют

Вот так выглядит в последних событиях приход бота:

Идеальное ли это решение?

Нет:

  • есть легкий кратковременный шум
    привествие видят и другие участники, хоть для них это сообщение шарика без звука и уведомления
  • есть лаг в 10 секунд, в теории можно успеть выкрикнуть в чат что-то

Но это ровно то, что я хотел и смог сконфигурировать в рамках конкретно моих ограничений.
Оно живет у меня на сервере, работает по понятным и прозрачным правилам, не допускает никого к данным участником моего чата. Ваша данные - это Ваши данные, я не в праве их раздавать чужим ботам и коду, который я даже не видел.

В следующих постах:

  1. Покажу workflow n8n + сам json для импорта Вам отдам.
  2. Расскажу краткой заметкой, на что стоит обращать внимание при создании сервиса с использованием ИИ.
    И почему “не включая голову” - я бы получил франкенштейна или вобще ничего не получил..

Пост для n8n workflow

JSON для импорта в n8n

Про особенности создания сервисов и автоматизация с ИИ

1. Начну с банального - всегда стоит поискать готовый проект. ИИ очень хорош в поиске по Вашему описанию и дальнейшим уточнениям.

  • найди мне телеграм антиспам бота
  • да чтобы был опенсорс..
  • да чтобы еще и умел работать без белого ip..
  • а еще..
    ну Вы поняли.

2. С одной стороны - не делайте тщательного ТЗ.

Построй мне трехэтажный дом, фундамент такой-то, высота проемов такая-то, материалы такие-то

Просто опишите Вашу проблему\решаемую задачу

У меня в тг канале спамят боты, нужна защита от них.

Вы удивитесь, как много полезного, то о чем Вы даже на задумывались бы при Вашем “точно описаном ТЗ” Вам предложит современный ИИ, даже бесплатные его модели.

3. С другой стороны - Вы архитектор, это Ваше решение

На мой первичный запрос был создан план:

+ python app + server
+ зависимости\библиотеки 
+ БД Постгрес
+ Редис
+ бальная система ранжирования пользователей
+ сложная система оценки бот\не бот
+ куча логики на периоды бана\таймату\повторное срабатывание
- простота инструмента

Но никто не мешает Вам повышать свою насмотренность, как работают те или иные сервисы, просить ИИ расписать по шагам и блокам, а дальше принять решение:
Нет, это сложно, нужно проще.

- сложность
+ n8n
+ без белого ip
+ без БД
+ отказоустойчевый сценарий
+ + если бот умер = ничего не меняется, живем как жили до него
+ описание того сценария шаг за шагом как я это вижу

4. Не все то “костыль”, что было после ответа разработки “так нельзя”.

Иногда ИИ будет вести себя, ровно как команда разработки.. ничего нового.

В сценарии
user вошел => mute => отправить ему контрольный вопрос => unmute\ оставить в mute

ИИ Вам ответит:

Этот сценарий работать не будет, ведь user muted, он не сможет ответить!

Но на вопрос “А кнопку с ответом ты ему показать можешь? и так будет работать?”

Нет, ну так конечно смогу и будет работать..

:rofl:

5. Слона едят по частям.

Даже если Вы уже целиком понимаете в своей голове логику.
Я рекомендую Вам идти по шагам:

  • базовый сценарий1, тесты, проверки.
  • Готово? отлично +1 фичу добавляем.

Чем больше ингридиентов в суп вы попробуете заложить за раз..
Тем больше отклонений в каждом случае Вы рискуете получить..

И когда на первом шаге “пересолили” - поправить проще.. чем когда перед Вами переперченый, пересоленый, с избытком уксуса и бог знает чего еще.. уже даже не суп =) а хорошее такое.. хрючево!

Готовьте совместно с ИИ, но правильно.
Всем удачного самохостинга!

Большое спасибо Рустаму за подсказку в чате.

Я про эфемерные сообщения, который ботам разрешили отправлять пользователям лично(видит только получатель) летом 2026 года, причем если правильно прочитал доки

  • если бот админ = когда угодно
  • если бот не админ = 15 секунд после входа участника

Воркфлоу выше - обновил.
Тперь он уже с эмперической отрпавкой + опцией включить публичную и фолбек в публичную при ошибках на апи запрос отправки эмперического сообщения