Проверьте качество до настройки n8n

Загрузите своё голосовое из Telegram (.ogg) или другую запись: тот же движок, что стоит за нодой.

Перетащите голосовое или аудиофайл – или нажмите, чтобы выбратьMP3 · WAV · M4A · OGG · MP4 · до 30 минут

Расшифровка голосовых Telegram в n8n: готовый шаблон с Palatine Speech

Бесплатный шаблон для n8n: ваш Telegram-бот принимает голосовое, отправляет его в Palatine Speech и отвечает текстом в тот же чат. Понадобятся токен бота, API-ключ Palatine Speech и n8n с публичным HTTPS-адресом.

  • Шаблон бесплатный
  • 6 рабочих нод
  • n8n Cloud и self-hosted
  • Нода с открытым кодом (MIT)
  • от 0,29 ₽/мин
  • Данные в РФ (152-ФЗ)

Как работает шаблон

Шаблон «Transcribe Telegram Voice Messages with Palatine Speech» лежит в официальной библиотеке n8n и превращает обычного Telegram-бота в расшифровщика голосовых. Человек отправляет боту войс и через несколько секунд получает в ответ его текст. Текстовые сообщения бот возвращает без изменений, по ним удобно проверять, что связь Telegram с n8n вообще работает.

Воркфлоу n8n: Telegram Trigger, Switch «Voice or Text?», скачивание голосового, нода Palatine Speech и ответ в чат

Так шаблон выглядит на холсте n8n сразу после импорта. Красные значки на нодах Telegram пропадут, когда вы выберете в них учётные данные бота.

В воркфлоу шесть рабочих нод и четыре заметки с инструкцией прямо на холсте. Telegram Trigger получает каждое новое сообщение, Switch «Voice or Text?» смотрит, есть ли в нём voice.file_id, нода Telegram скачивает файл голосового, а нода Palatine Speech отправляет его в API и ждёт результат. Ответ уходит в тот же чат: chat.id берётся из данных триггера.

НодаТипЧто делает
Telegram TriggerTelegram Triggerполучает событие message от бота
Voice or Text?Switchделит поток на ветку голосовых (message.voice.file_id) и ветку текста (message.text)
Download Voice FileTelegram, ресурс Fileскачивает голосовое по file_id, Telegram хранит его в OGG с кодеком Opus
Palatine Speech TranscriptionPalatine Speechраспознаёт речь моделью palatine_large_highspeed, текст кладёт в поле transcription
Send Transcription ReplyTelegramотправляет {{ $json.transcription }} в исходный чат
Echo Text MessageTelegramвозвращает текстовое сообщение как есть

Что понадобится до установки

Нужны три вещи: токен бота от @BotFather, API-ключ Palatine Speech из личного кабинета и n8n, до которого Telegram может достучаться снаружи. Telegram шлёт вебхуки только по HTTPS и только на порты 443, 80, 88 или 8443, поэтому n8n на ноутбуке без туннеля или обратного прокси сообщений не получит.

В n8n Cloud публичный адрес уже есть, там ничего настраивать не нужно. На своём сервере n8n должен знать внешний адрес: его задают переменной окружения WEBHOOK_URL. Без неё триггер зарегистрирует в Telegram внутренний адрес контейнера, и сообщения до воркфлоу не дойдут. Ноду Palatine Speech ставят как community-пакет n8n-nodes-palatine-speech, работу с ним проверяли на n8n 1.39.1 и новее. В n8n Cloud можно выбрать верифицированную версию ноды, если она доступна в вашем рабочем пространстве.

Установка по шагам

Порядок взят из описания шаблона на n8n.io: сначала нода Palatine Speech, затем бот и ключи, в конце проверка и публикация. Шаблон рассчитан на оба варианта n8n. На своём сервере ноду ставят как community-пакет, а в n8n Cloud можно выбрать верифицированную ноду Palatine Speech, если она доступна в вашем рабочем пространстве.

  1. Установите ноду. На своём сервере откройте Settings → Community Nodes → Install и введите n8n-nodes-palatine-speech, переменная N8N_COMMUNITY_PACKAGES_ENABLED=true должна быть включена. В n8n Cloud выберите верифицированную ноду Palatine Speech.
  2. Добавьте шаблон в n8n со страницы шаблона на n8n.io или импортируйте файл telegram-voice-to-text.json.
  3. Создайте отдельного бота через @BotFather, добавьте его токен в учётные данные Telegram API и выберите их во всех нодах Telegram: в триггере, скачивании файла и обоих ответах.
  4. В ноде Palatine Speech Transcription создайте учётные данные Palatine Speech API: API Key возьмите в личном кабинете, Base URL оставьте https://api.palatine.ru.
  5. Убедитесь, что Telegram достучится до публичного HTTPS-адреса вебхуков вашего n8n. Отправьте боту короткое голосовое и обычный текст, проверьте оба ответа и опубликуйте воркфлоу.

Отдельного бота на третьем шаге авторы шаблона советуют не случайно. У бота в Telegram может быть только один вебхук, поэтому если тот же токен уже подключён к другому воркфлоу, новый вебхук заменит прежний, и старый воркфлоу перестанет получать сообщения. Отдельный тестовый бот снимает эту проблему целиком.

Если бот нужен закрытой команде, ограничьте список разрешённых chat_id. Без этого бот будет расшифровывать голосовые любому, кто его найдёт, а каждая такая расшифровка списывается с вашего баланса.

Ограничения Telegram, о которых стоит знать заранее

Шаблон упирается не в распознавание, а в лимиты Bot API. Скачать файл через getFile бот может, только если тот не больше 20 МБ, а одно сообщение вмещает до 4096 символов. Длинную расшифровку Telegram в одном сообщении не примет, и нода ответа завершится ошибкой.

Для обычных голосовых 20 МБ хватает с запасом: Opus сжимает речь очень плотно. Проблемы начинаются, когда боту пересылают длинное видео или запись совещания файлом. Такие записи удобнее отправлять через расшифровку аудио в текст в веб-кабинете или поднять локальный сервер Bot API, который снимает ограничение на скачивание.

ОграничениеЧто произойдётКак обойти
Файл больше 20 МБgetFile вернёт ошибку, скачивание упадётвеб-кабинет или локальный сервер Bot API
Текст длиннее 4096 символовTelegram отклонит сообщениерезать текст в ноде Code или отправлять .txt через Send Document
Один вебхук на ботановый вебхук заменяет прежний, старый воркфлоу замолкаетотдельный бот для тестов
Только HTTPS, порты 443, 80, 88, 8443вебхук не зарегистрируетсяWEBHOOK_URL, обратный прокси или n8n Cloud
Кружки и аудиофайлыSwitch их не распознаёт, бот молчитдобавить ветки, как описано ниже

Как доработать шаблон

Из коробки шаблон понимает только message.voice. Видео-кружки приходят в поле message.video_note (это MP4), аудиофайлы в message.audio, файлы, отправленные документом, в message.document. Чтобы бот расшифровывал и их, добавьте в Switch правило с выражением {{ $json.message.video_note?.file_id ?? $json.message.audio?.file_id }}, а в ноде скачивания замените fileId на ту же цепочку вместе с voice. API Palatine Speech принимает MP4, MP3, M4A, WAV, FLAC и OGG, так что конвертировать ничего не придётся.

Нода Palatine Speech умеет больше, чем Transcribe. Операция Summarize со сценарием meeting_summary возвращает краткое содержание, решения и задачи с ответственными, а через user_prompt можно задать свою структуру ответа. Sentiment Analysis оценивает тон по пяти классам от Very Negative до Very Positive, Diarize размечает, кто из собеседников говорит. Отсюда типовые доработки: сводка вместо сырого текста для длинных войсов, запись каждой расшифровки в Google Sheets или базу, пометка негативных обращений для поддержки.

Шаблон n8n, бот или API: что выбрать

n8n оправдан, когда расшифровка только один шаг процесса: текст дальше уходит в CRM, таблицу, тикет или в другую модель. Если голосовые нужно просто читать, проще готовый бот @VoicePalatineBot. Он делает 100 расшифровок в день бесплатно, понимает кружки и делит речь по спикерам, настраивать ничего не надо.

Когда распознавание встраивается в собственный продукт, n8n становится лишним звеном, и надёжнее вызывать Speech-to-Text API напрямую. Скорость везде одна: обработка занимает примерно 1–2% длительности записи, полчаса звука распознаются примерно за 25 секунд.

ВариантКогда подходитГде ломаетсяЧто на выходе
Шаблон n8nрасшифровка плюс дальнейшие шаги без коданужен свой бот и публичный HTTPS, лимиты Bot API 20 МБ и 4096 символовтекст в чате и в любых следующих нодах
Бот @VoicePalatineBotчитать голосовые самому100 расшифровок в день, в процесс не встроитьтекст со спикерами и тайм-кодами
API напрямуюсвоё приложение или сервиснужен разработчикJSON, текст, SRT или VTT

Сколько стоит и где обрабатываются данные

Шаблон и нода бесплатны, нода распространяется под лицензией MIT с открытым кодом. Платить приходится только за распознанные минуты: от 0,29 ₽ за минуту без подписки, баланс не сгорает. Минутное голосовое обходится меньше чем в 30 копеек, а тестовые минуты для проверки выдаём по запросу.

Голосовое идёт из Telegram в ваш n8n, а оттуда в API Palatine Speech, который работает в четырёх ЦОД уровня Tier III в России. Обработка соответствует 152-ФЗ, данные передаются по TLS, модели на записях клиентов не обучаются. Если n8n развёрнут на сервере в РФ, запись на всём пути остаётся в российском контуре, за исключением самого Telegram, где голосовое хранится изначально.

Нода Palatine Speech в воркфлоу

Так выглядят параметры ноды в шаблоне и то, что она отдаёт следующему шагу.

  1. Установите ноду

    Settings → Community Nodes → n8n-nodes-palatine-speech.

  2. Импортируйте шаблон

    Со страницы n8n.io или JSON-файлом, затем добавьте ключи.

  3. Отправьте голосовое

    Бот ответит текстом в тот же чат за несколько секунд.

Запросjson
{
  "name": "Palatine Speech Transcription",
  "type": "n8n-nodes-palatine-speech.palatineSpeech",
  "parameters": {
    "model": "palatine_large_highspeed"
  }
}
Ответjson
{
  "transcription": "Привет! Скинь, пожалуйста, отчёт до пятницы..."
}
Стоимость
Шаблон и нода
бесплатно
Распознавание
от 0,29 ₽/мин
Документация

Заберите шаблон и подключите бота

Шаблон добавляется в n8n со страницы на n8n.io, ключ API выдаётся в личном кабинете.

  • Тестовые минуты по запросу
  • Оплата картой МИР и через СБП

Ответы на вопросы

Не нашли ответ на свой вопрос? Напишите нам

Нужно ли платить за шаблон или ноду?

Нет. Шаблон опубликован в библиотеке n8n бесплатно, нода n8n-nodes-palatine-speech распространяется под лицензией MIT. Платите только за распознанные минуты, от 0,29 ₽ за минуту.

Работает ли шаблон в n8n Cloud?

Да. В n8n Cloud выберите верифицированную ноду Palatine Speech, если она доступна в вашем рабочем пространстве. На своём сервере ноду ставят как community-пакет через Settings → Community Nodes.

Почему бот не отвечает на голосовые?

Чаще всего Telegram не может достучаться до n8n: вебхуки работают только по HTTPS на портах 443, 80, 88 или 8443. На своём сервере проверьте переменную WEBHOOK_URL и что воркфлоу опубликован. Если тот же токен подключён к другому воркфлоу, вебхук мог перехватить он.

Бот расшифрует видео-кружки и аудиофайлы?

Из коробки нет: Switch проверяет только поле message.voice. Добавьте ветки для message.video_note и message.audio и передайте их file_id в ноду скачивания, API принимает MP4, MP3, M4A, WAV, FLAC и OGG.

Что делать с длинными записями?

Bot API скачивает файлы до 20 МБ, а сообщение вмещает до 4096 символов. Длинный текст режьте на части в ноде Code или отправляйте файлом, а большие записи загружайте через веб-кабинет.

Можно ли получать сводку вместо полного текста?

Да. Замените в ноде Palatine Speech операцию Transcribe на Summarize: сценарий meeting_summary вернёт краткое содержание, решения и задачи, а user_prompt позволяет задать свою структуру.

Чем шаблон отличается от бота @VoicePalatineBot?

Бот готов к работе сразу и даёт 100 бесплатных расшифровок в день. Шаблон нужен, когда текст должен идти дальше: в CRM, таблицу или другой сервис, и когда бот должен быть вашим собственным.

Где обрабатываются записи?

API Palatine Speech работает в четырёх ЦОД Tier III в России по 152-ФЗ, данные передаются по TLS, модели на записях клиентов не обучаются.