Содержание

n8n Telegram бот — создание бота с ИИ | Пошаговое руководство

n8n Telegram бот — создание бота с ИИ | Пошаговое руководство

Обзор возможностей

n8n предоставляет мощные инструменты для создания Telegram-ботов любой сложности. Вот что можно реализовать:

ИИ-ассистенты

Боты с GPT-5.1, Claude Opus 4.5, Gemini 3 или локальными моделями. Отвечают на вопросы, генерируют контент, помогают с задачами.

Автоматизации

Уведомления о событиях, напоминания, интеграция с CRM, отправка отчётов по расписанию.

Обработка файлов

Приём документов, изображений, аудио. OCR, анализ картинок через Vision API, транскрибация голоса.

Поддержка клиентов

Первая линия поддержки, FAQ-бот, маршрутизация обращений, сбор обратной связи.

Что понадобится

  • Работающий n8nинструкция по установке
  • SSL-сертификат — Telegram требует HTTPS для webhooks
  • Telegram-аккаунт — для создания бота через BotFather
  • API-ключ ИИ — OpenAI, Anthropic или другой провайдер (для ИИ-бота)

Для тестирования

Если у вас нет сервера с SSL, используйте n8n.cloud (бесплатный trial) или запустите n8n локально с флагом --tunnel — это создаст временный публичный URL.

Шаг 1: Создание бота в BotFather

  1. Откройте Telegram и найдите @BotFather
  2. Отправьте команду /newbot
  3. Введите имя бота (отображаемое название)
  4. Введите username бота (должен заканчиваться на "bot")
  5. Скопируйте полученный токен — он понадобится для n8n
Пример токена
1234567890:ABCdefGHIjklMNOpqrsTUVwxyz123456789

Важно!

Никогда не публикуйте токен бота в открытых источниках. Если токен скомпрометирован, немедленно получите новый через /revoke в BotFather.

Шаг 2: Простой эхо-бот

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

Создание workflow

  1. Откройте n8n и создайте новый workflow
  2. Добавьте ноду Telegram Trigger
  3. В настройках выберите "Credential to connect with" → Add new credential
  4. Вставьте токен бота из BotFather
  5. В поле "Updates" выберите "Message"

Добавление ответа

  1. Добавьте ноду Telegram (не Trigger, а обычную)
  2. Соедините её с Telegram Trigger
  3. Выберите операцию "Send Message"
  4. В "Chat ID" укажите: {{ $json.message.chat.id }}
  5. В "Text" укажите: Вы написали: {{ $json.message.text }}
Telegram Trigger
Telegram Send

Активация бота

  1. Нажмите "Save" для сохранения workflow
  2. Нажмите переключатель "Active" в правом верхнем углу
  3. Откройте вашего бота в Telegram и отправьте любое сообщение
  4. Бот должен ответить, повторив ваше сообщение

Шаг 3: Бот с ChatGPT/Claude

Теперь добавим интеграцию с ИИ, чтобы бот давал умные ответы.

Вариант 1: OpenAI (ChatGPT)

  1. Добавьте ноду OpenAI между Trigger и Telegram Send
  2. Создайте credential с вашим API-ключом OpenAI
  3. Выберите операцию "Message a Model"
  4. Выберите модель (gpt-4o рекомендуется)
  5. В "Prompt" → "User Message" укажите: {{ $json.message.text }}
System Prompt для бота
Ты — дружелюбный AI-ассистент в Telegram. Отвечай кратко и по делу.
Используй эмодзи умеренно. Если не знаешь ответа — честно скажи об этом.
Отвечай на русском языке, если пользователь пишет на русском.

Вариант 2: Anthropic Claude

  1. Добавьте ноду Anthropic
  2. Создайте credential с API-ключом Anthropic
  3. Выберите модель (claude-3-5-sonnet рекомендуется)
  4. Настройте аналогично OpenAI

Вариант 3: Ollama (локальные модели)

Если хотите использовать бесплатные локальные модели:

  1. Установите Ollama на сервер: curl -fsSL https://ollama.com/install.sh | sh
  2. Скачайте модель: ollama pull llama3
  3. В n8n добавьте ноду HTTP Request
  4. Настройте POST запрос к Ollama API
HTTP Request к Ollama
URL: http://localhost:11434/api/generate
Method: POST
Body (JSON):
{
  "model": "llama3",
  "prompt": "{{ $json.message.text }}",
  "stream": false
}

Обновлённая структура workflow

Telegram Trigger
OpenAI / Claude
Telegram Send

В ноде Telegram Send измените текст на: {{ $json.message.content }} (для OpenAI) или соответствующее поле для других провайдеров.

Шаг 4: Добавление памяти диалога

Чтобы бот помнил контекст разговора, нужно хранить историю сообщений. Рассмотрим простой вариант с Google Sheets:

Структура таблицы

chat_id role content timestamp
123456789 user Привет! 2025-01-15 10:00:00
123456789 assistant Привет! Чем могу помочь? 2025-01-15 10:00:01

Workflow с памятью

Telegram Trigger

Получаем сообщение

Google Sheets (Read)

Получаем последние 10 сообщений для chat_id

Code Node

Формируем массив messages для API

OpenAI

Отправляем с историей

Google Sheets (Append)

Сохраняем user + assistant сообщения

Telegram Send

Отправляем ответ

Code Node — формирование истории
// Получаем историю из Google Sheets
const history = $input.all().map(item => ({
  role: item.json.role,
  content: item.json.content
}));

// Добавляем новое сообщение пользователя
const userMessage = $('Telegram Trigger').item.json.message.text;
history.push({
  role: 'user',
  content: userMessage
});

// Ограничиваем историю последними 10 сообщениями
const recentHistory = history.slice(-10);

return [{
  json: {
    messages: recentHistory,
    chat_id: $('Telegram Trigger').item.json.message.chat.id,
    user_message: userMessage
  }
}];

Шаг 5: Обработка команд

Telegram-боты обычно поддерживают команды (начинаются с /). Добавим обработку команд через Switch ноду:

Популярные команды

  • /start — приветствие нового пользователя
  • /help — справка по боту
  • /clear — очистка истории диалога
  • /settings — настройки бота

Настройка Switch

  1. Добавьте ноду Switch после Telegram Trigger
  2. В "Mode" выберите "Rules"
  3. Добавьте правила для каждой команды:
Правила Switch
Rule 1: {{ $json.message.text }} starts with "/start"  → Output 0
Rule 2: {{ $json.message.text }} starts with "/help"   → Output 1
Rule 3: {{ $json.message.text }} starts with "/clear"  → Output 2
Fallback (остальные сообщения)                         → Output 3

Каждый output Switch соединяйте с соответствующей нодой обработки.

Продвинутые функции

Обработка изображений

Для анализа изображений используйте GPT-5.1 или Claude Opus 4.5:

  1. В Telegram Trigger добавьте тип "Photo"
  2. Получите file_id: {{ $json.message.photo[0].file_id }}
  3. Используйте Telegram → Get File для получения URL
  4. Передайте URL в Vision API

Голосовые сообщения

Для транскрибации голоса:

  1. Получите voice file через Telegram API
  2. Используйте OpenAI Whisper для транскрибации
  3. Обработайте текст как обычное сообщение

Inline-кнопки

Добавьте интерактивные кнопки под сообщениями:

Reply Markup JSON
{
  "inline_keyboard": [
    [
      {"text": "Да ✅", "callback_data": "confirm_yes"},
      {"text": "Нет ❌", "callback_data": "confirm_no"}
    ],
    [
      {"text": "Подробнее 📖", "url": "https://aibot.direct"}
    ]
  ]
}

Ограничение доступа

Для приватного бота добавьте проверку chat_id:

IF Node — проверка доступа
Condition: {{ $json.message.chat.id }} is equal to YOUR_CHAT_ID
True → продолжить
False → отправить "Доступ запрещён"

Часто задаваемые вопросы

Частые вопросы

С помощью n8n и Telegram можно создать: ИИ-ассистентов на базе GPT-5, Claude или Gemini; автоматизации с уведомлениями и напоминаниями; боты для обработки файлов (OCR, анализ изображений, транскрибация аудио); первую линию поддержки клиентов с маршрутизацией обращений.

Откройте Telegram, найдите @BotFather, отправьте /newbot, введите имя и username бота (должен заканчиваться на «bot»). Скопируйте токен — он понадобится для настройки ноды Telegram Trigger в n8n.

Да. Telegram требует HTTPS для работы webhooks. Если у вас нет сервера с SSL, можно использовать n8n.cloud (бесплатный trial) или запустить n8n локально с флагом --tunnel для временного публичного URL.

В workflow между нодами Telegram Trigger и Telegram Send добавьте ноду OpenAI или Anthropic. Передайте в неё {{ $json.message.text }} как промпт, настройте API-ключ, и бот будет отвечать с помощью ИИ.

n8n умеет принимать через Telegram документы, изображения и аудио. Через ноды можно: распознавать текст на изображениях (OCR), анализировать картинки через Vision API, транскрибировать голосовые сообщения через Whisper.

После настройки workflow включите переключатель «Active» в n8n и убедитесь, что сервер с n8n работает постоянно. Настройте webhook Telegram → ваш n8n-сервер. Для надёжности используйте systemd или Docker с политикой restart: always.

Да. Согласно статистике, около 40% обращений клиентов приходит вне рабочего времени. AI-бот в Telegram через n8n принимает заявки, отвечает на FAQ и собирает контактные данные круглосуточно без участия менеджеров.

Понравилась статья? Поставь лайк.

Нужна ИИ-автоматизация под ваш бизнес?

Запишитесь на бесплатную консультацию — обсудим задачу и пришлём готовое решение.

Обсудить проект →

Читайте также

AI / LLM

Claude Opus 4.8: что нового и что даёт бизнесу новая модель ИИ

Читать →

AI / LLM

Локальная LLM на сервере в 2026: модели, железо, стек и бюджеты

Читать →

Право и AI

152-ФЗ и нейросети: отправлять ли данные клиентов в ChatGPT | 2026

Читать →

Полезная статья?

Сохраните в закладки, чтобы не потерять

Ctrl + D