Открыть оглавление

Быстрый старт

Всё, что нужно для рабочего потока: один HTTP-запрос за узлом и токеном, один WebSocket, сырой PCM наверх и JSON обратно.

Начните с 3 секунд тишины: микрофон, аудиофайл и SDK не нужны. Выберите один язык. Каждый пример сам выполняет запрос connect.

1 — Задайте API Key

2 — Запустите один пример

JavaScript · Node.js 22+

Python · Python 3.10+

3 — Проверьте результат

Ожидаются session.ready, usage.update, session.ended и код закрытия 1000. Тишина обычно не даёт текста; для речи читайте transcript.final. При session.error проверьте code и message. retryable означает возможность нового connect, а не возобновление потока.

Полученный url уже содержит путь сессии. Все настройки задаются в connect; без store действует false. После session.ready отправляйте только pcm_s16le, 16 кГц, моно. Сервер отбрасывает аудио сверх бюджета реального времени и сообщает длительность в discardedSeconds. Разрыв завершает поток.

Необязательно: ответ connect через curl

4 — Готовые клиенты

Для настоящего WAV используйте полный клиент ниже: преобразование 16-битного PCM WAV в моно 16 кГц, равномерная отправка и очередь до 2 секунд. При переполнении удаляются самые старые неотправленные данные. Исходники по умолчанию свёрнуты. Разверните, чтобы скопировать или скачать, и сохраните как stream.mjs или stream.py.

Сохраните как stream.mjs (Node.js 22+, без npm-зависимостей) или stream.py (Python 3.10+, websocket-client). Задайте LECSYNC_API_KEY; необязательный LECSYNC_API_ORIGIN по умолчанию равен https://api.lecsync.com. Можно указать путь WAV; без него отправляются 3 секунды тишины. Исходный WAV загружается в память; ограничена очередь отправки. Запустите один клиент:

JavaScript · stream.mjs — Полный код · копировать / скачать
Python · stream.py — Полный код · копировать / скачать