Вебхуки звонков: события и когда они приходят

Обновлено: 9 октября 2026 · 5 мин чтения

У вебхука звонков четыре события. Каждое отправляется один раз на звонок: если сервис звонков повторит статус, второго запроса не будет.

Шаги

  1. 1

    Четыре события

    • call_started: входящий звонок начал звонить. Для исходящего: сотрудник позвонил клиенту.
    • call_answered: на звонок ответили в панели, в приложении или в самом WhatsApp (на телефоне).
    • call_ended: звонок завершён, с любым результатом: был разговор, не ответили, отклонили, не удалось.
    • call_recording_ready: готовы запись звонка, текст (транскрипт) и краткое содержание. Только для звонков с записью.

    У звонка без ответа нет call_answered: после call_started приходит call_ended.

  2. 2

    Порядок

    Порядок, в котором события доходят до Вас, не гарантирован: call_ended может прийти раньше call_answered. Упорядочивайте их по полям started_at, answered_at, ended_at. Храните звонок по id и обновляйте его при каждом событии.

  3. 3

    Звонок WhatsApp (QR) из панели или приложения

    call_answered приходит, когда клиент ответил, call_ended сразу после завершения звонка. Длительность считается с момента ответа. Запись, текст и краткое содержание приходят через несколько минут отдельным call_recording_ready.

  4. 4

    Звонок WhatsApp (QR), на который ответили на телефоне

    WhatsApp не сообщает связанному устройству о конце такого звонка, он пишет его только в журнал звонков телефона. Телефон обычно присылает журнал через несколько секунд после звонка, вместе с длительностью, поэтому call_ended ждёт его. Если журнал не пришёл за 10 минут, call_ended приходит без длительности: duration_seconds: null, duration_known: false, ended_at: null. Журнал приходит только для номеров, подключённых по QR после 22 сентября 2026 года.

  5. 5

    Звонок с самого телефона

    О таком звонке Clomni узнаёт только из журнала звонков телефона, после его завершения. Поэтому все его события приходят вместе, после звонка.

Документ