AI.Product ClubБлог Михаила Карпова
← Все материалы
HOW-TOАвтоматизация5 мин чтения

Telegram-бот в n8n: от первого сообщения до рабочего сценария

Создание бота через BotFather, Telegram Trigger, ответ пользователю и проверка опубликованного workflow в n8n.

Начнём с бота, который возвращает полученный текст. Этот простой сценарий проверит доставку в обе стороны, после чего можно добавлять обработку с ИИ.

Telegram-бот в n8n: от первого сообщения до рабочего сценария: Бот, Вход, Ответ, Публикация
Последовательность работы: бот → вход → ответ → публикация.

Мой подход. Я бы сначала запускал эхо-бота. Он проверяет токен, входящий webhook и обратную отправку за один короткий цикл. После этого гораздо проще понять, какая ошибка появилась при добавлении ИИ.

1. Создай отдельного бота для проверки

В Telegram открой официального @BotFather и создай бота командой /newbot. Сохрани выданный токен в Telegram credentials внутри n8n. Токен позволяет управлять ботом, поэтому его не нужно вставлять в текст узла, скриншот или общий документ. Порядок получения и добавления ключа описан в документации credentials n8n.

Для первой проверки используй личный диалог с ботом. Нажми Start и отправь сообщение. В группах действуют отдельные правила получения сообщений; их удобнее разбирать после проверки прямого диалога. Бот не может первым начать личную переписку с произвольным человеком: пользователь должен обратиться к нему сам. Это ограничение описано в Telegram Bots FAQ.

Если уже существует рабочий бот, создай второй для экспериментов. Так тестовый workflow не будет перехватывать его события.

2. Получи сообщение в Telegram Trigger

Создай workflow, добавь Telegram Trigger, выбери credentials и событие Message. Включи ожидание тестового события и отправь боту обычный текст. В данных узла найди message.chat.id и message.text.

chat.id определяет, куда вернуть ответ. Это не username пользователя: не заменяй идентификатор именем из профиля. message.text существует для текстового сообщения; фотография или стикер имеют другую структуру. На старте добавь IF-проверку, что текст непустой, и отдельный короткий ответ для неподдерживаемого сообщения.

Если событие не приходит, сначала выясни, видит ли n8n входящий запрос. Не добавляй модель и базу данных, пока простое сообщение не появилось в output триггера.

3. Отправь ответ тем же ботом

Добавь Telegram node с отправкой текстового сообщения. Подключи те же credentials. Для Chat ID используй выражение, которое явно ссылается на триггер; пример предполагает стандартное имя узла Telegram Trigger:

{{ $('Telegram Trigger').item.json.message.chat.id }}

Для текстовой ветки начни с простого ответа:

Получил: {{ $('Telegram Trigger').item.json.message.text }}

Пока отключи режим разбора Markdown или HTML, если он задан. Тогда специальные символы пользовательского текста не вызовут ошибку форматирования. Пройди workflow и проверь, что ответ пришёл в тот же диалог ровно один раз.

После эхо-теста можешь вставить обработку между входом и ответом: классификацию обращения или подготовку черновика через модель. Сохрани привязку к исходному chat.id и проверь, какое поле реально возвращает узел модели. Не предполагается, что у всех узлов ответ называется text. Сначала посмотри output конкретного узла.

4. Проверь работу вне тестового редактора

Опубликуй workflow и отправь новое сообщение после завершения тестового режима. Проверь историю executions и время запуска. Telegram хранит один webhook для бота, поэтому переключение тестового и рабочего адресов может перенаправлять события. Для одновременной разработки и эксплуатации нужны разные боты; подробности есть в диагностике n8n Telegram Trigger.

Проверь четыре случая: обычный текст, текст со скобками и подчёркиваниями, стикер и два сообщения подряд. Для ИИ-ветки добавь ошибку провайдера: пользователь должен получить понятный ответ или запрос повторить позже, а не бесконечно ждать.

Для публичного бота ограничь доступ или расход в соответствии с задачей. На пилоте достаточно списка разрешённых chat.id перед платным вызовом. Когда простой маршрут стабильно работает, добавляй хранение состояния и повторные попытки. Ошибки webhook и API отдельно разобраны в руководстве по Telegram API в n8n.

Todo: попробуй на своей задачеПрогресс сохраняется в этом браузере.
ПРАКТИКА НА КУРСЕ / AI PRODUCT CLUB

Собери своего ИИ-агента и проверь результат

«AI Agents: от vibe coding к AI-команде»: desktop agents, MCP, skills, evals и harness. Отдельные воркшопы — от подключения инструментов до контроля качества.

7 практических воркшопов · записи · вопросы автору в чате

Посмотреть программу курса ↗

Автор: — практик автоматизации и автор курсов AI Product Club.