Как собрать 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. Обработка голосового сообщения
- Скачиваем файл
Telegram-узелGet Fileсfile_idизmessage.voice. - Отправляем в Whisper
Используем OpenAI узел - там в поле Input Data Field вписываем data - Сохраняем результат
В узлеSetсохраняем вывод с нодыtranscriptionв полеtext.
🔔 Проверь размер файла (file_size) — Telegram ограничивает 20–25 МБ.
🖼️ Шаг 3. Обработка изображений и документов
- Передаём
file_idв саб-воркфлоу
УзелExecute Workflow, передаёмfile_idиcaption. - Внутри саб-воркфлоу:
Создаем после ноды "Execute by another workflow" ноду "Set". В нее же передаем output из ноды "Execute by another workflow".
🔗 Шаг 4. Объединяем все типы сообщений
Используем Merge (Combine Inputs) с тремя входами:
👉 На выходе — один объединённый текст.
🧠 Шаг 5. Отправка в OpenAI
[
{
"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 $ за шаблон.