Голосовые агенты для телефона и сайта

ИИ, который отвечает на звонки. Каждый звонок измерен.

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

Медианное время ответа
1,45 s
Потеря пакетов
0,07 %
Время до приветствия
1,89 s

30 языков общения · 4 движка · DIDWW, Twilio или ваш SIP-транк

Четыре движка. Для каждого агента — свой.

Движки звучат по-разному, отвечают с разной скоростью и стоят по-разному за минуту. Оставьте те же инструкции, смените движок и сравните звонки.

GPT-Live 1

gpt-live-1 + gpt-5.6-luna

Полнодуплексная голосовая модель OpenAI. Слушает, пока говорит, и естественно реагирует, когда её перебивают. Подробные инструкции выполняет фоновая модель.

Голоса
14
Скорость
Фиксированная

Gemini Live

gemini-3.8-live

Модель Google «речь в речь» с большим выбором голосов. Тон задаётся в инструкциях.

Голоса
30
Скорость
Фиксированная
Языки
30

OpenAI Realtime

gpt-realtime-2.1-mini

«Речь в речь» с настраиваемой скоростью речи. Оплата по аудиотокенам.

Голоса
10
Скорость
0,25–1,5

Классический

Nova-3 → gpt-4.1-mini → gpt-4o-mini-tts

Deepgram распознаёт речь, LLM от OpenAI формирует ответ, TTS от OpenAI его озвучивает. Каждый этап настраивается отдельно.

Голоса
10
Скорость
0,25–4
Языки
30

Измерено на нашем сервере · 5 ноября 2026

Цифры из тестовых звонков, а не из буклета.

Четыре движка, по десять заданных сценариев веб-звонка (соединение из браузера) на каждый, прогон на рабочем сервере. Прогон один, поэтому считайте значения срезом, а не гарантией.

  • 1,45 s Медианное время ответа Gemini Live: от конца фразы звонящего до первого звука агента
  • 2,1 % Ошибки распознавания речи звонящего (WER) GPT-Live 1, тестовые сценарии на турецком
  • 0,07 % Потеря пакетов Первый реальный звонок на сервере: 57,7 с, UDP от начала до конца, задержка туда-обратно 127 мс
  • 1,89 s Время до приветствия Тот же звонок: от подключения до первого звука агента

Время ответа по движкам

Секунды от конца реплики звонящего до первого звука агента, измерено на стороне звонящего.

Время ответа по движкам
ДвижокВремя ответа по движкамМедиана90-й процентиль
Gemini Live 1,45 s 2,28 s
GPT-Live 1 1,76 s 2,56 s
OpenAI Realtime 2,08 s 4,14 s
Классический 3,23 s 4,02 s

Источник: 4 движка × 10 сценариев × 1 прогон на hubvocal.com, 5 ноября 2026. В каждой записи звонка есть те же измерения, см. качество звука.

Возможности

Что агент делает помимо разговора

Часть из этого уже работает, часть в разработке. Возможности с пометкой «скоро» в аккаунтах пока недоступны.

  • Оценка качества звонка

    Оценка от 1,0 до 4,5 для каждого звонка, а если она снижается, то и причина: сеть, поток модели или задержка.

    Подробнее →
  • Даты, числа и имена

    Турецкие выражения дат вычисляет код, номера агент зачитывает группами, имена — по буквам.

    Подробнее →
  • CRM и рабочие чаты

    HubSpot, Pipedrive, monday.com, Slack, Telegram и n8n работают уже сегодня. Скоро: Zapier и Make.

    Интеграции →
  • Перевод на сотрудника

    Скоро

    Холодный или тёплый перевод телефонного звонка на коллегу. При тёплом коллега сначала слышит короткое резюме.

    Подробнее →
  • Исходящие кампании

    Скоро

    Обзвон списка контактов в заданные часы, с повторными попытками и стоп-листом.

    Подробнее →

Интеграции

Работает с инструментами, которыми вы уже пользуетесь

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

Скоро: Zapier и Make.

Пока коннекторы для Zapier и Make не готовы, отправляйте вебхук call.ended на вебхук-триггер там.

Все интеграции

Измерение качества звонков

Видно, как на самом деле дошёл звук.

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

  • Потери пакетов< 0,5% — нормаАудиопакеты, потерянные в сети.
  • Пропуски речи< 1% — нормаКакую долю речи браузеру пришлось достраивать, потому что звук пришёл слишком поздно.
  • Джиттер и буфер< 30 мс · < 120 мсНасколько неравномерно приходят пакеты и насколько вырастает буфер воспроизведения.
  • UDP / TCPTCP: под наблюдениемПереход на TCP добавляет задержку. Отслеживается весь звонок.
  • Пропуски на стороне агента[секунда, мс]Моменты, когда аудиопоток модели останавливался. Не зависят от сети.
  • Норма
  • Внимание
  • Плохо
  • Пропуск на стороне агента (мс)
Иллюстрация. Каждый столбец — окно в 2 секунды. Потерь нет, но на 16-й секунде есть пропуск речи, и в тот же момент агент сообщает о пропуске 141 мс: звук опоздал в источнике, а не потерялся в сети.

Есть потери — проблема в сети.

Потерь нет, а пропуски есть — звук пришёл поздно. Если агент тоже зафиксировал пропуск, причина в источнике; если нет — в доставке.

Оценка качества звонка

Одно число: как звучал звонок.

Каждый звонок получает оценку от 1,0 до 4,5 по шкале MOS, которой в телефонных сетях описывают воспринимаемое качество голоса. Она рассчитывается по измерениям, сделанным во время звонка, а не по опросам, и показывается вместе с причинами.

Что снижает оценку

  • СетьАудиопакеты, потерянные между абонентом и нами.
  • Поздний звукЗвук, который пришёл слишком поздно, чтобы его воспроизвести, хотя ничего не потерялось.
  • Поток моделиМоменты, когда аудио движка останавливалось ещё до того, как покинуть агента.
  • ЗадержкаПуть туда и обратно плюс буферизация. Учитывается, только когда задержка в одну сторону превышает примерно 180 мс.

Расчёт выполняется по E-модели ITU-T G.107. Оценка вычисляется при чтении звонка, поэтому, если формула станет точнее, старые звонки тоже будут показаны по новой.

Примеры

  1. 4,3 ОтличноНаш первый реальный звонок на рабочем сервере: потери пакетов 0,07%, пропуски речи 0,21%, задержка туда и обратно 127 мс.
  2. 3,8 УдовлетворительноПропуски речи 2%, все из-за аудиопотока движка.
  3. 3,5 ПлохоПотери пакетов в сети 3%.
  4. 3,3 ПлохоПотерь пакетов нет, но 4% звука пришло с опозданием.
  5. 1,7 Очень плохоПотери пакетов 15%.

Первая строка — реальный звонок, остальные — расчётные случаи из нашего набора тестов.

  • Отлично ≥ 4,3
  • Хорошо ≥ 4,0
  • Удовлетворительно ≥ 3,6
  • Плохо ≥ 3,1
  • Очень плохо < 3,1

Звонки ниже порога отмечаются

Каждая организация задаёт свой порог, по умолчанию 3,6. Звонки ниже него отмечаются в списке звонков и учитываются в обзоре. Для каждого такого звонка один раз отправляется webhook call.quality_low.

В телефонных звонках мы не видим сеть абонента, поэтому оценка строится только на измерениях на стороне агента, и в карточке звонка это указано.

Точность в деталях

Даты, числа и имена проверяются до сохранения.

Запись на приём или обратный звонок полезны, только если дата, номер и имя верны. Именно в этих деталях голосовые агенты ошибаются чаще всего, поэтому их обрабатывают явные правила и код, а не модель на своё усмотрение.

Турецкие даты считает код

Выражения вроде «в следующий вторник», «послезавтра» или «в пятницу после 15-го» вычисляются в коде, в часовом поясе агента. Время, которое назвал абонент, остаётся рядом с датой в каждом подтверждении.

Абонент
Önümüzdeki salı öğleden sonra iki buçukta olur mu?
Агент
10 Kasım Salı, saat 14.30. Doğru mu?

Вопрос в четверг, 5 ноября: «В следующий вторник в половине третьего дня?» Агент подтверждает: вторник, 10 ноября, 14:30.

Номера зачитываются группами

Номера телефонов агент зачитывает теми группами, которыми их обычно диктуют, и переспрашивает, если не уверен. На классическом движке на турецком суммы, даты и время произносятся словами, а в расшифровке остаются цифры.

Абонент
Sıfır beş yüz otuz iki, dört yüz elli altı, yetmiş sekiz, doksan.
Агент
0532 456 78 90. Doğru mu?

В сообщении для вашей команды номер сохраняется цифрами: 05324567890.

Имена по буквам

Когда абонент диктует имя по буквам или поправляет его («не C, а Ç»), агент берёт последний вариант, сохраняет буквы ç, ş, ğ и ı и один раз повторяет написание для подтверждения.

Абонент
C değil, Ç ile. Çağlar.
Агент
Ç, A, Ğ, L, A, R. Çağlar, doğru mu?

В сообщение или запись попадает исправленное написание.

Выражения с датами понимаются на турецком и английском. Повтор номеров и написание имён по буквам проверены в разговорах на турецком и английском.

Телефония

Подключите свои номера. Отвечать будет агент.

На входящий звонок отвечает агент, назначенный на набранный номер. Агент, которого вы проверили в браузере, говорит по телефону с теми же инструкциями и голосом.

  1. Поступает звонок

    Через DIDWW, Twilio или вашу АТС по SIP.

  2. Определяется номер

    Выбирается агент, назначенный на набранный номер.

  3. Агент говорит

    С выбранными вами движком, голосом и инструкциями.

  4. Появляется карточка

    Расшифровка и стоимость — в панели управления и в API.

DIDWW

Подключите свои DID-номера через SIP-транк.

Twilio

Направьте номера Twilio через Elastic SIP Trunking.

Asterisk / PBX

Своя АТС? Номера остаются у вас — просто направьте на нас SIP-транк.

Исходящие звонки тоже работают: начните звонок с одного из своих номеров через POST /v1/calls, и агент заговорит, когда трубку возьмут.

Перевод на сотрудникаСкоро

Когда звонку нужен человек, агент передаёт его.

В телефонных звонках агент может перевести абонента на коллегу или в отдел. Вы описываете, когда использовать каждое направление перевода; номер, который набирается, агент не видит.

В разработке. В аккаунтах пока недоступно.

Холодный перевод

Звонок сразу уходит на номер телефона или SIP-адрес.

Тёплый перевод

Агент сначала звонит коллеге и зачитывает короткое резюме, затем соединяет абонента. Абонент в это время слышит тишину, а не этот разговор.

Сначала согласие абонента

Перед переводом агент просит абонента подтвердить.

Если никто не ответил

Нет ответа, занято или вызов отклонён: агент возвращается к абоненту, извиняется и принимает сообщение.

Только для телефонных звонков. Каждая попытка и её результат записываются в карточку звонка.

Исходящие кампанииСкоро

Обзвон списка в часы, которые вы выберете.

Загрузите CSV с контактами, и агент обзвонит их с вашего номера, подставляя значения из каждой строки в приветствие и инструкции.

В разработке. В аккаунтах пока недоступно.

Окно звонков

Дни и часы в часовом поясе кампании, лимит одновременных звонков и повторные попытки, если номер занят или не ответил.

Личные данные в звонке

Столбцы вроде имени или госномера становятся подстановками вида {{name}} в инструкциях агента.

Стоп-лист

На номера из списка вашей организации не звонят никогда: ни в кампании, ни при любом другом исходящем звонке. Если человек просит больше не звонить, агент добавляет его в список после подтверждения.

Результаты по каждому контакту

Каждая попытка фиксируется: ответили, не ответили, занято, а также чем закончился звонок.

Турецкие номера: мы не проверяем за вас записи о согласиях в İYS. Перед запуском кампании на номера +90 вы получите напоминание самостоятельно подтвердить согласие в İYS.

Как это работает

01

Опишите агента

Инструкции, приветствие, язык, движок, голос и манера речи. В панели управления или через API.

02

Поговорите с ним в браузере

Пробуйте изменения без сохранения. Расшифровка, стоимость, время до приветствия и качество звука видны сразу.

03

Запустите

Назначьте агента на номер телефона или встройте веб-звонок на свой сайт.

Для команд

  • Организации и роли: владелец, администратор, участник
  • API-ключи для каждой организации
  • Месячный лимит расходов: после его достижения новые звонки не начинаются
  • История звонков, отчёты о потреблении и стоимости

Инструменты

Пусть агент решает задачи прямо во время звонка.

Включите встроенные инструменты или подключите свои системы через webhook. Одно и то же описание инструмента работает на всех четырёх движках.

Завершить звонок, принять сообщение

Встроенные end_call и take_message: агент вежливо завершает звонок или записывает сообщение и просьбу перезвонить в карточку звонка.

Ваши собственные webhooks

Опишите эндпоинт и его параметры один раз. Когда это понадобится по ходу разговора, агент вызовет его подписанным HTTPS-запросом.

Подтверждение перед изменениями

Инструменты, которые меняют данные, срабатывают только после того, как агент зачитал детали, а абонент ответил «да».

Инструменты в документации →

Ответы и записи

Ответы — по вашим документам. Записи — сразу в календарь.

Дайте агенту то, без чего он не будет полезен по телефону: ваши собственные сведения и доступ к календарю.

База знаний

Загрузите файлы PDF, Word, обычный текст или Markdown, вставьте текст или добавьте веб-страницу. Во время звонка агент ищет по ним и отвечает на основе найденного.

  • Агенту предписано не придумывать то, чего нет в ваших документах.
  • Источники каждого ответа сохраняются в карточке звонка.
  • Вы сами выбираете, какими документами может пользоваться каждый агент.

Запись на приём

Подключите Google Calendar в панели управления. Агент проверяет свободное время в пределах ваших рабочих часов и может записать абонента или отменить запись.

  • Агент зачитывает детали и записывает, только когда абонент ответит «да».
  • Минимальный срок до записи, перерывы между приёмами и то, насколько вперёд можно записаться, задаёте вы.
  • Созданные записи видны в карточке звонка.

База знаний и календарь в документации →

MCP

MCP в обе стороны.

Model Context Protocol — открытый стандарт, по которому ИИ-приложения подключаются к инструментам и данным. HubVocal поддерживает его с обеих сторон.

Агент работает с вашим MCP-сервером

Подключите MCP-сервер и выберите, какими его инструментами агент может пользоваться во время звонков. Инструменты, которые меняют данные, проходят тот же шаг подтверждения, что и другие инструменты записи.

HubVocal как MCP-сервер

Подключите Claude, Cursor или другой MCP-клиент по API-ключу, чтобы получать список агентов, читать резюме звонков или изменять агента. Что разрешено ключу, определяют его области доступа.

MCP в документации →

Консоль реального времени

Подключайтесь к звонку, когда это важно.

Супервизор может подключиться из панели управления к любому идущему звонку, веб или телефонному. Разговор ведёт агент, пока кто-то не возьмёт его на себя.

  1. Прослушивание

    Слушайте звонок и следите за расшифровкой в реальном времени. Абонент не знает, что вы на линии.

  2. Подсказка

    Отправьте агенту заметку, и он учтёт её в следующей реплике. Абонент её не слышит.

  3. Перехват

    Агент замолкает, и абонент слышит вас. Расшифровка продолжается, если движок это поддерживает.

  4. Возврат агенту

    Верните звонок агенту, при желании с заметкой. Он продолжит с учётом того, что уже было сказано.

По умолчанию доступно администраторам организации; доступ можно открыть и участникам. Каждое подключение, подсказка и перехват фиксируются в карточке звонка.

После звонка

Резюме каждого звонка там, где оно вам нужно.

Когда звонок заканчивается, агент составляет по расшифровке короткое резюме. Webhook может передать всю карточку звонка в вашу CRM или систему поддержки.

Резюме и итог

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

Webhook call.ended

Подписанный HTTPS-запрос с карточкой звонка, резюме и расшифровкой. Неудачные доставки повторяются примерно два с половиной часа.

Журнал доставок

Каждая попытка записывается со статусом: видно, что дошло, а то, что не дошло, можно отправить повторно.

Webhooks в документации →

Запись и конфиденциальность

Записывайте, когда нужно. Храните только необходимое.

Запись звонков по умолчанию выключена. Включая её, вы также решаете, сколько хранить записи и расшифровки.

Запись с предупреждением

Когда запись включена, агент сообщает об этом абоненту перед приветствием, на языке абонента. Записи можно прослушать в карточке звонка.

Срок хранения и маскирование

Укажите, сколько дней хранить записи и расшифровки; после этого они удаляются автоматически. При желании в расшифровках и резюме можно маскировать номера телефонов, адреса электронной почты, номера удостоверений личности, IBAN и номера карт.

Удаление по запросу

Удалите запись и расшифровку звонка сразу, например по запросу в рамках KVKK или GDPR.

Повседневная работа

Инструменты для повседневной работы.

Тестовая лаборатория

Пишите сценарии с имитацией абонента и правилами, которым должен соответствовать хороший звонок. Запускайте их на черновике до публикации; каждое правило проверяется и поясняется.

Веб-виджет

Добавьте на сайт кнопку звонка одним тегом script и публичным ключом, который работает только на ваших доменах.

Структурированные поля

Задайте поля, например дату записи на приём или интерес клиента. После каждого звонка они заполняются по разговору и передаются вместе с карточкой звонка.

Отчёты и экспорт

Звонки, минуты, стоимость, задержка, итоги и качество звука по дням, агентам или итогам. Экспорт звонков в CSV.

Двухэтапный вход

TOTP-коды для панели управления, настройка организации, которая делает их обязательными, список сеансов и журнал аудита.

Поддерживаемые языки общения

На каких языках каждый движок может вести разговор. Язык агента задаётся полем lang с кодами из таблицы ниже.

  • Поддерживается
  • Экспериментально Движок официально не указывает этот язык. Он работает по инструкции, но качество мы не измеряли.
Язык lang GPT-Live 1Gemini LiveOpenAI RealtimeКлассический
Türkçetr tr Экспериментально Поддерживается Экспериментально Поддерживается
Englishen en Поддерживается Поддерживается Экспериментально Поддерживается
Deutschde de Поддерживается Поддерживается Экспериментально Поддерживается
Françaisfr fr Поддерживается Поддерживается Экспериментально Поддерживается
Españoles es Экспериментально Поддерживается Экспериментально Поддерживается
Italianoit it Экспериментально Поддерживается Экспериментально Поддерживается
Portuguêspt pt Поддерживается Поддерживается Экспериментально Поддерживается
Nederlandsnl nl Экспериментально Поддерживается Экспериментально Поддерживается
Русскийru ru Экспериментально Поддерживается Экспериментально Поддерживается
Українськаuk uk Экспериментально Поддерживается Экспериментально Поддерживается
Polskipl pl Экспериментально Поддерживается Экспериментально Поддерживается
Românăro ro Экспериментально Поддерживается Экспериментально Поддерживается
Ελληνικάel el Экспериментально Поддерживается Экспериментально Поддерживается
Българскиbg bg Экспериментально Поддерживается Экспериментально Поддерживается
Češtinacs cs Экспериментально Поддерживается Экспериментально Поддерживается
Slovenčinask sk Экспериментально Поддерживается Экспериментально Поддерживается
Magyarhu hu Экспериментально Поддерживается Экспериментально Поддерживается
Hrvatskihr hr Экспериментально Поддерживается Экспериментально Поддерживается
Српскиsr sr Экспериментально Поддерживается Экспериментально Поддерживается
Bosanskibs bs Экспериментально Поддерживается Экспериментально Поддерживается
Slovenščinasl sl Экспериментально Поддерживается Экспериментально Поддерживается
Македонскиmk mk Экспериментально Поддерживается Экспериментально Поддерживается
Svenskasv sv Экспериментально Поддерживается Экспериментально Поддерживается
Danskda da Экспериментально Поддерживается Экспериментально Поддерживается
Norskno no Экспериментально Поддерживается Экспериментально Поддерживается
Suomifi fi Экспериментально Поддерживается Экспериментально Поддерживается
Eestiet et Экспериментально Поддерживается Экспериментально Поддерживается
Latviešulv lv Экспериментально Поддерживается Экспериментально Поддерживается
Lietuviųlt lt Экспериментально Поддерживается Экспериментально Поддерживается
Catalàca ca Экспериментально Поддерживается Экспериментально Поддерживается

Экспериментальные языки лучше сначала проверить в браузере, а потом подключать к телефонной линии.

Разработчикам

Всё доступно через REST API.

Всё, что можно сделать в панели управления, можно сделать через API: создавать агентов, назначать номера, открывать веб-звонки, совершать исходящие звонки, читать карточки звонков и данные о потреблении.

  • JSON, API-ключи Bearer, понятные сообщения об ошибках
  • Спецификация OpenAPI 3.1
  • 120 запросов в минуту на ключ
  • Пример livekit-client для звонков из браузера
Открыть веб-звонок
curl
curl -X POST "https://hubvocal.com/v1/web-calls" \
  -H "Authorization: Bearer $VT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "agent_id": "front-desk"
}'

В планах

Над чем мы работаем дальше. О каждом запуске сообщим здесь и в документации.

  • СкороОплата по фактуПополняйте картой и платите за минуты разговора.
  • СкороПеревод на сотрудникаХолодный или тёплый перевод телефонного звонка на коллегу. При тёплом коллега сначала слышит короткое резюме.
  • СкороИсходящие кампанииОбзвон списка контактов в заданные часы, с повторными попытками и стоп-листом.

Хотите услышать агента на своей линии?

Расскажите, что вам нужно. Мы откроем аккаунт и вместе с вами настроим первого агента.