June 10

Как собрать Telegram-бота в n8n, который понимает текст, голос и картинки

🔧 Что умеет бот?

  • 📥 Принимать от пользователя любое сообщение: текст, голос, фото, PDF.
  • 🤯 Автоматически распознаёт голос через Whisper.
  • 👁️ Извлекает текст с изображения (OCR).
  • 🧠 Отдаёшь результат в GPT через OpenAI API.
  • 📤 Отправляет ответ пользователю в Telegram.


🤖 Гайд: Как собрать Telegram-бота на n8n с поддержкой текста, голоса и изображений

Цель: автоматизировать прием и анализ разных типов сообщений в Telegram через визуальный сценарий в n8n.

Результат: бот принимает голос, фото, документы и текст, превращает всё в один осмысленный запрос и отправляет его в LLM (например, GPT-4), а затем возвращает пользователю ответ.


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

  • n8n (self-hosted или облачный)
  • Telegram Bot Token
  • OpenAI API (ключ)
  • Дополнительно: Supabase (для памяти), OCR-сервис (например, Tesseract API или GPT-4o)

🧩 Шаг 1. Определяем тип входящего сообщения

Входная точка — Telegram Trigger. Далее сразу идёт Switch, в котором мы проверяем, что именно прислал пользователь.

Как определить дальнейшее действие:

1. ✏️ Текст message.text - направить в блок обработки текста

2. 🎤 Голос message.voice.mime_type == "audio/ogg" - скачать → распознать через Whisper

🖼️ Фото/Документ есть document.file_id или массив photo не пуст - отправить в саб-воркфлоу на OCR

👉 Важно: у каждого ответвления свой маршрут обработки.


🎧 Шаг 2. Обработка голосового сообщения

  1. Скачиваем файл
    Telegram-узел Get File с file_id из message.voice.
  2. Отправляем в Whisper
    Используем OpenAI узел - там в поле Input Data Field вписываем data
  3. Сохраняем результат
    В узле Set сохраняем вывод с ноды transcription в поле text.

🔔 Проверь размер файла (file_size) — Telegram ограничивает 20–25 МБ.


🖼️ Шаг 3. Обработка изображений и документов

  1. Передаём file_id в саб-воркфлоу
    Узел Execute Workflow, передаём file_id и caption.
  2. Внутри саб-воркфлоу:
    • Telegram → Get File
    • Отправляем изображение в OCR (нода OpenAI - Analyze Image)
    • Возвращаем { ocr_text: "..." }
  1. Возвращаем текст в основной поток


Создаем после ноды "Execute by another workflow" ноду "Set". В нее же передаем output из ноды "Execute by another workflow".


🔗 Шаг 4. Объединяем все типы сообщений

Используем Merge (Combine Inputs) с тремя входами:

  • Текст из message.text
  • Распознанная речь из Whisper
  • OCR + подпись к файлу

👉 На выходе — один объединённый текст.


🧠 Шаг 5. Отправка в OpenAI

Формируем JSON вручную:

[
  {
    "role": "system",
    "content": "Ты — помощник, отвечай чётко, без лишних объяснений."
  },
  {
    "role": "user",
    "content": "{{ $json.text }}"
  }
]

В итоге неважно по какой ветке пойдет сценарий, текст будет передан в ноду Merge, далее вы можете передавать его либо в ноду "Ai Agent" или в любую LLM.

Как на этом можно заработать:

Подписка для пользователей
– Фиксированная плата, например 10 $ в месяц за 200 минут транскрипций и 100 изображений OCR.
– Премиум-тариф (неограниченный доступ или приоритет в очереди) — 25–30 $/мес.

Плата за использование (“pay-as-you-go”)
– 0,01 $ за каждую минуту аудио, конвертированную в текст.
– 0,05 $ за одно изображение или PDF-документ, обработанный OCR.

Корпоративные лицензии (B2B)
– Единоразовая или ежемесячная плата: от 500 $/мес за поддержку большого потока запросов, SLA и кастомную интеграцию.
– Дополнительно можно брать плату за настройку, обучение персонала и сервис-поддержку.

Продавайте API-доступ
– Плата по тарифам: 20 $ за первые 10 000 запросов и 15 $ за следующие 10 000.
– Интеграция в чужие сервисы и приложения (например, CRM), вы получаете процент от дохода партнёра.

One-off-заказы и white-label
– Разовая настройка бота “под ключ” для юридических фирм, медцентров, HR-агентств — от 1 000 до 5 000 $.
– Продажа готовых n8n-workflow’ов на маркетплейсах по 50–200 $ за шаблон.