Telegram-бот в n8n: от первого сообщения до рабочего сценария
Создание бота через BotFather, Telegram Trigger, ответ пользователю и проверка опубликованного workflow в 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.
Собери своего ИИ-агента и проверь результат
«AI Agents: от vibe coding к AI-команде»: desktop agents, MCP, skills, evals и harness. Отдельные воркшопы — от подключения инструментов до контроля качества.
7 практических воркшопов · записи · вопросы автору в чате
Посмотреть программу курса ↗