MCN Telecom logo

На главную

Command Palette

Search for a command to run...

Каталог событий MCN Telecom — Виртуальная АТС (Очереди, Другие события ВАТС)

2 просмотраСоздано 27.08.2026Обновлено 27.08.2026

Виртуальная АТС

События (вебхуки и триггеры), которые платформа MCN Telecom отправляет на адрес (URL) клиента.

Единый Envelope используется для всех событий: один channel соответствует одному event_type.

Содержание

Также см.:
«Каталог событий MCN Telecom — Виртуальная АТС (Звонки ВАТС, Переадресация и внутренние номера)»
«Каталог событий MCN Telecom — Работа с речью»

Общий формат события

Все события используют общую обёртку Envelope:

ПолеТипОбяз.Описание
account_idintegerID аккаунта в системе
event_typestringТип события
created_atstring (date-time)Момент события (UTC)
idempotencyKeystring (uuid)Ключ идемпотентности; одинаков при повторных доставках и используется для дедупликации
dataobjectДанные, специфичные для event_type

— обязательное поле; — необязательное.

Для каждого события приведены описание полей data и пример Payload.

Очереди

QUEUE_LINK_START - Начало звонка в очереди

Payload: allOf — общий Envelope + данные события.

Envelope

ПолеТипОбяз.Описание
account_idintegerID аккаунта в системе
event_typestringТип события — см. components/messages
created_atstring (date-time)Момент события (UTC)
idempotencyKeystring (uuid)Ключ идемпотентности; одинаков при повторных доставках, используется для дедупликации
dataobjectДанные, специфичные для event_type

data

ПолеТипОбяз.Описание
linkedidstringID связанного звонка; объединяет все плечи одного вызова
cid_numstringНомер вызывающего (CallerID Num, Asterisk CEL)
eventtimenumberUnix-время события в микросекундах, формат Asterisk CEL
peeraccountstringКод лицевого счёта второй стороны соединения
eventTypestringТип события
extenstringExtension диалплана, где сработало событие (для входящих обычно s)
accountIdstringНомер ЛС
userdeftypestringПользовательский подтип Asterisk CEL; дублирует event_type
appnamestringПриложение Asterisk, создавшее событие (например CELGenUserEvent)
userfieldstringСлужебное поле userfield канала Asterisk CEL
cid_rdnisstringRDNIS — номер переадресовавшей стороны, если был редирект
peerstringВнутренний ID второй стороны звонка (Asterisk CEL peer)
cid_dnidstringDNID — номер, на который был направлен вызов
cid_anistringANI — номер, определённый АТС/оператором как исходный
contextstringКонтекст события
cid_namestringИмя вызывающего (CallerID Name, Asterisk CEL)
channamestringИмя канала Asterisk
eventtypestringДублирует event_type (нижний регистр, Asterisk CEL)
idnumberВнутренний числовой ID CEL-записи Asterisk
amaflagsnumberФлаг тарификации вызова в Asterisk (AMA flag)
accountcodestringAccount code канала; обычно совпадает с account_id, может быть пустым
uniqueidstringУникальный ID call-leg, формат {systemName}-{timestamp}.{seq}

— обязательное поле; — необязательное.

Пример: Payload

{
"account_id": 10001,
  "event_type": "QUEUE_LINK_START",
  "created_at": "2026-07-01T21:32:38.898Z",
  "idempotencyKey": "5b133904-6192-49d2-abbc-f95be887fb70",
  "data": {
    "linkedid": "125-1782930757.12197527",
    "cid_num": "79000000008",
    "eventtime": 1782930758210580,
    "peeraccount": "",
    "eventType": "QUEUE_LINK_START",
    "exten": "s",
    "accountId": "10001",
    "userdeftype": "QUEUE_LINK_START",
    "appname": "CELGenUserEvent",
    "userfield": "280",
    "cid_rdnis": "",
    "peer": "",
    "cid_dnid": "79000000009",
    "extra": {
      "callid": "125-1782930757.12197527",
      "queue_name": "тест2026",
      "queue": "124",
      "queue_id": "18796",
      "scenario_id": "23799"
    },
    "cid_ani": "79000000008",
    "context": "queue",
    "cid_name": "79000000008",
    "channame": "SIP/sip-node1-000fa748",
    "eventtype": "QUEUE_LINK_START",
    "id": 1204108120,
    "amaflags": 15,
    "accountcode": "10001",
    "uniqueid": "125-1782930757.12197527"
  }
}
QueueCallStart - Начало звонка через очередь

Событие: Начало звонка на очереди
Payload: allOf — общий Envelope + данные события.

Envelope

ПолеТипОбяз.Описание
account_idintegerID аккаунта в системе
event_typestringТип события — см. components/messages
created_atstring (date-time)Момент события (UTC)
idempotencyKeystring (uuid)Ключ идемпотентности; одинаков при повторных доставках, используется для дедупликации
dataobjectДанные, специфичные для event_type

data

ПолеТипОбяз.Описание
linkedIDstringID связанного звонка
channelstringИмя канала Asterisk (SIP/PJSIP, Local и др.)
privilegestringУровень логирования/видимости события в Asterisk AMI
startGeneralTimenumberUnix-время начала звонка до постановки в очередь
extenstringExtension диалплана, где сработало событие (для входящих обычно s)
appDatastringСлужебные параметры приложения Asterisk (сырая строка)
callerIDanistringANI — номер, определённый АТС/оператором как исходный
callerIdNumstringНомер вызывающего абонента (Caller ID number)
systemNamestringID Asterisk-сервера (номер хаба)
peerstringВнутренний ID второй стороны звонка (Asterisk CEL peer)
dateReceivedstringМомент получения события (локальное время сервера)
extrastringJSON-строка с дополнительными данными события (Asterisk CEL)
eventTimestringВремя CEL-события, формат YYYY-MM-DD HH:MM:SS
contextstringКонтекст события
eventNamestringИмя CEL-события, например PREDIAL_AGENT_CALLED
callerIDdnidstringDNID — номер, на который был направлен вызов
eventstringДублирует event_type — служебное поле Asterisk UserEvent
callerIDrdnisstringRDNIS — номер переадресовавшей стороны, если был редирект
uniqueIDstringУникальный ID call-leg, формат {systemName}-{timestamp}.{seq}
timestampnumberВремя создания события
callIdstringНомер звонка
accountCodestringAccount code канала; обычно совпадает с account_id, может быть пустым
callerNumberstringНомер звонящего
dateReceivedAtUTCstringВремя получения Kafka-коннектором в UTC, до микросекунд; дублирует dateReceived
eventTypestringТип события
internalNumberstringВнутренний номер оператора
accountIdnumberНомер ЛС
peerAccountstringКод лицевого счёта второй стороны соединения
queueNamestringНазвание очереди ВАТС
applicationstringПриложение Asterisk, сгенерировавшее событие
userFieldstringСлужебное поле userfield канала Asterisk CEL
callerIdNamestringИмя вызывающего абонента, если передано АТС/оператором
queuestringОчередь
didstringНомер оператора
amaFlagsstringФлаг тарификации Asterisk (AMA flag), например DOCUMENTATION
vpbxIdstringНомер Виртуальной АТС

— обязательное поле; — необязательное.

Пример: Payload

{
"account_id": 10001,
  "event_type": "QueueCallStart",
  "created_at": "2026-07-01T22:00:13.023Z",
  "idempotencyKey": "5b133904-6192-49d2-abbc-f95be887fb70",
  "data": {
    "linkedID": "125-1782932380.12198910",
    "channel": "SIP/70000040-000fa7c7",
    "privilege": "call,all",
    "startGeneralTime": 1782932380,
    "exten": "s",
    "appData": "PREDIAL_AGENT_CALLED,sipdevice,SIP/sip-node1-000fa7c1,416,6616,10001,280,193.242.105.39,55627,mobile,09876f14-76e1-6a45-639c-f177ae897897,006a4563-bc00-800b-a244-47d04dd17241",
    "callerIDani": "70000040",
    "callerIdNum": "70000040",
    "systemName": "125",
    "peer": "",
    "dateReceived": "Jul 1, 2026, 10:00:12 PM",
    "extra": "{\"extra\":\"sipdevice,SIP/sip-node1-000fa7c1,416,6616,10001,280,193.242.105.39,55627,mobile,09876f14-76e1-6a45-639c-f177ae897897,006a4563-bc00-800b-a244-47d04dd17241\"}",
    "eventTime": "2026-07-01 22:00:12",
    "context": "queue-predial-handler",
    "eventName": "PREDIAL_AGENT_CALLED",
    "callerIDdnid": "",
    "event": "CEL",
    "callerIDrdnis": "",
    "uniqueID": "125-1782932412.12198980",
    "timestamp": 1782943212,
    "callId": "125-1782932380.12198910",
    "headers": {},
    "accountCode": "10001",
    "callerNumber": "79000000002",
    "dateReceivedAtUTC": "2026-07-01 19:00:12.539676",
    "eventType": "QueueCallStart",
    "internalNumber": "416",
    "accountId": 10001,
    "peerAccount": "10001",
    "queueName": "SupportQueue",
    "application": "CELGenUserEvent",
    "userField": "",
    "callerIdName": "70000040",
    "queue": "302",
    "did": "79000000001",
    "amaFlags": "DOCUMENTATION",
    "vpbxId": "280"
  }
}
QueueAgentCalled - Начало звонка на внутренний номер в очереди

Событие: Начало звонка на внутренний номер в очереди
Payload: allOf — общий Envelope + данные события.

Envelope

ПолеТипОбяз.Описание
account_idintegerID аккаунта в системе
event_typestringТип события — см. components/messages
created_atstring (date-time)Момент события (UTC)
idempotencyKeystring (uuid)Ключ идемпотентности; одинаков при повторных доставках, используется для дедупликации
dataobjectДанные, специфичные для event_type

data

ПолеТипОбяз.Описание
callerNumstringНомер звонящего
connectedLineNumstringНомер собеседника (Connected Line); может содержать доп. параметры через *
userEventTypestringДублирует event_type — тип события AMI UserEvent
channelstringИмя канала Asterisk (SIP/PJSIP, Local и др.)
memberNamestringИмя того, кому звонили
callerChanstringИмя канала звонящего агента
privilegestringУровень логирования/видимости события в Asterisk AMI
extenstringExtension диалплана, где сработало событие (для входящих обычно s)
callerNamestringИмя звонящего
channelStatenumberКод состояния Asterisk-канала (см. channelStateDesc)
callerIdNumstringНомер вызывающего абонента (Caller ID number)
systemNamestringID Asterisk-сервера (номер хаба)
dateReceivedstringМомент получения события (локальное время сервера)
eventTimestringВремя CEL-события, формат YYYY-MM-DD HH:MM:SS
contextstringКонтекст события
eventstringДублирует event_type — служебное поле Asterisk UserEvent
linkedIdstringID связанного звонка
connectedLineNamestringИмя/номер собеседника в Connected Line (см. connectedLineNum)
dateReceivedAtUTCstringВремя получения Kafka-коннектором в UTC, до микросекунд; дублирует dateReceived
eventTypestringТип события
prioritynumberПриоритет текущего шага диалплана Asterisk
accountIdnumberНомер лицевого счёта
peerAccountstringКод лицевого счёта второй стороны соединения
queueNumberstringНомер в очереди
coreUserIdstringВнутренний ID пользователя/сотрудника (агента) ВАТС
channelStateDescstringРасшифровка channelState (например Up, Ring, Down)
queuestringОчередь
uniqueIdstringУникальный ID call-leg, формат {systemName}-{timestamp}.{seq}
vpbxIdstringНомер ВАТС

— обязательное поле; — необязательное.

Пример: Payload

{
"account_id": 10001,
  "event_type": "QueueAgentCalled",
  "created_at": "2026-07-01T22:00:12.724Z",
  "idempotencyKey": "5b133904-6192-49d2-abbc-f95be887fb70",
  "data": {
    "callerNum": "79000000002",
    "connectedLineNum": "79000000002",
    "userEventType": "QueueAgentCalled",
    "channel": "SIP/71977930-000fa7c4",
    "memberName": "181",
    "callerChan": "SIP/sip-node1-000fa7c1",
    "privilege": "user,all",
    "exten": "s",
    "callerName": "[302] 79000000002",
    "channelState": 0,
    "callerIdNum": "71977930",
    "systemName": "125",
    "dateReceived": "Jul 1, 2026, 10:00:12 PM",
    "eventTime": "2026-07-01 22:00:12",
    "context": "queue-predial-handler",
    "event": "QueueAgentCalled",
    "linkedId": "125-1782932380.12198910",
    "connectedLineName": "[302] 79000000002",
    "dateReceivedAtUTC": "2026-07-01 19:00:12.474839",
    "eventType": "QueueAgentCalled",
    "priority": 36,
    "accountId": 10001,
    "peerAccount": "10001",
    "queueNumber": "302",
    "coreUserId": "111241",
    "channelStateDesc": "Down",
    "callerIdName": "71977930",
    "queue": "6616",
    "uniqueId": "125-1782932412.12198975",
    "vpbxId": "280"
  }
}
QueueCallAnswer - Ответ на звонок через очередь

Событие: Звонок был отвечен в очереди
Payload: allOf — общий Envelope + данные события.

Envelope

ПолеТипОбяз.Описание
account_idintegerID аккаунта в системе
event_typestringТип события — см. components/messages
created_atstring (date-time)Момент события (UTC)
idempotencyKeystring (uuid)Ключ идемпотентности; одинаков при повторных доставках, используется для дедупликации
dataobjectДанные, специфичные для event_type

data

ПолеТипОбяз.Описание
queueIdstringID очереди ВАТС
connectedLineNumstringНомер собеседника (Connected Line); может содержать доп. параметры через *
userEventTypestringДублирует event_type — тип события AMI UserEvent
channelstringИмя канала Asterisk (SIP/PJSIP, Local и др.)
privilegestringУровень логирования/видимости события в Asterisk AMI
extenstringExtension диалплана, где сработало событие (для входящих обычно s)
channelStatenumberКод состояния Asterisk-канала (см. channelStateDesc)
callerIdNumstringНомер вызывающего абонента (Caller ID number)
systemNamestringID Asterisk-сервера (номер хаба)
dateReceivedstringМомент получения события (локальное время сервера)
contextstringКонтекст события
startTimenumberUnix-время начала звонка/ответа
callerIDstringID звонящего (номер телефона)
eventstringДублирует event_type — служебное поле Asterisk UserEvent
timestampnumberВремя события
callIdstringID звонка (Call_id)
linkedIdstringID связанного звонка
callerNumberstringНомер звонящего
connectedLineNamestringИмя/номер собеседника в Connected Line (см. connectedLineNum)
dateReceivedAtUTCstringВремя получения Kafka-коннектором в UTC, до микросекунд; дублирует dateReceived
eventTypestringТип события
internalNumberstringВнутренний номер оператора, на который поступил звонок
prioritynumberПриоритет текущего шага диалплана Asterisk
accountIdnumberНомер лицевого счёта
durationWaitingnumberВремя ожидания звонка
queueNamestringНазвание очереди ВАТС
coreUserIdstringВнутренний ID пользователя/сотрудника (агента) ВАТС
channelStateDescstringРасшифровка channelState (например Up, Ring, Down)
callerIdNamestringИмя вызывающего абонента, если передано АТС/оператором
didstringТелефонный номер оператора (DID, на который поступил звонок)
queuestringID очереди
uniqueIdstringУникальный ID call-leg, формат {systemName}-{timestamp}.{seq}
vpbxIdstringНомер Виртуальной АТС

— обязательное поле; — необязательное.

Пример: Payload

{
"account_id": 10001,
  "event_type": "QueueCallAnswer",
  "created_at": "2026-07-01T20:32:47.586Z",
  "idempotencyKey": "5b133904-6192-49d2-abbc-f95be887fb70",
  "data": {
    "queueId": "6616",
    "connectedLineNum": "79000000017",
    "userEventType": "QueueCallAnswer",
    "channel": "SIP/70000040-000fa4b6",
    "privilege": "user,all",
    "exten": "s",
    "channelState": 6,
    "callerIdNum": "416",
    "systemName": "125",
    "dateReceived": "Jul 1, 2026, 8:32:47 PM",
    "context": "signal-queue-member-answer",
    "startTime": 1782927155,
    "callerID": "79000000017",
    "event": "QueueCallAnswer",
    "timestamp": 1782927167,
    "callId": "125-1782927123.12191322",
    "linkedId": "125-1782927123.12191322",
    "callerNumber": "79000000017",
    "connectedLineName": "[302] 79000000017",
    "dateReceivedAtUTC": "2026-07-01 17:32:47.235915",
    "eventType": "QueueCallAnswer",
    "internalNumber": "416",
    "priority": 6,
    "accountId": 10001,
    "durationWaiting": 12,
    "queueName": "SupportQueue",
    "coreUserId": "169479",
    "channelStateDesc": "Up",
    "callerIdName": "70000040",
    "did": "79000000032",
    "queue": "302",
    "uniqueId": "125-1782927155.12191423",
    "vpbxId": "280"
  }
}
QUEUE_LINK_END - Завершение звонка в очереди

Когда завершается звонок в очереди QUEUE_LINK_END, приходит одно событие на всю очередь.

Payload: allOf — общий Envelope + данные события.

Envelope

ПолеТипОбяз.Описание
account_idintegerID аккаунта в системе
event_typestringТип события — см. components/messages
created_atstring (date-time)Момент события (UTC)
idempotencyKeystring (uuid)Ключ идемпотентности; одинаков при повторных доставках, используется для дедупликации
dataobjectДанные, специфичные для event_type

data

ПолеТипОбяз.Описание
linkedidstringID связанного звонка; объединяет все плечи одного вызова
cid_numstringНомер вызывающего (CallerID Num, служебное поле Asterisk CEL)
eventtimenumberUnix-время события в микросекундах, формат Asterisk CEL
peeraccountstringКод лицевого счёта второй стороны соединения
eventTypestringТип события
extenstringExtension диалплана, где сработало событие (для входящих обычно s)
accountIdstringНомер ЛС
userdeftypestringПользовательский подтип Asterisk CEL; дублирует event_type
appnamestringДиалплан-приложение Asterisk, создавшее событие (например CELGenUserEvent)
userfieldstringСлужебное поле userfield канала Asterisk CEL
cid_rdnisstringRDNIS — номер переадресовавшей стороны, если был редирект
peerstringВнутренний ID второй стороны звонка (Asterisk CEL peer)
cid_dnidstringDNID — номер, на который был направлен вызов
cid_anistringANI — номер, определённый АТС/оператором как исходный
contextstringКонтекст события
cid_namestringИмя вызывающего (CallerID Name, служебное поле Asterisk CEL)
channamestringИмя канала Asterisk
eventtypestringДублирует event_type (нижний регистр, Asterisk CEL)
idnumberВнутренний числовой ID CEL-записи Asterisk
amaflagsnumberФлаг тарификации вызова в Asterisk (AMA flag)
accountcodestringAccount code канала; обычно совпадает с account_id, может быть пустым
uniqueidstringУникальный ID call-leg, формат {systemName}-{timestamp}.{seq}

— обязательное поле; — необязательное.

Пример: Payload

{
 "account_id": 10001,
  "event_type": "QUEUE_LINK_END",
  "created_at": "2026-07-01T21:33:02.689Z",
  "idempotencyKey": "5b133904-6192-49d2-abbc-f95be887fb70",
  "data": {
    "linkedid": "125-1782930757.12197527",
    "cid_num": "79000000008",
    "eventtime": 1782930781582635,
    "peeraccount": "",
    "eventType": "QUEUE_LINK_END",
    "exten": "h",
    "accountId": "10001",
    "userdeftype": "QUEUE_LINK_END",
    "appname": "CELGenUserEvent",
    "userfield": "280",
    "cid_rdnis": "",
    "peer": "",
    "cid_dnid": "79000000009",
    "extra": {
      "callid": "125-1782930757.12197527",
      "queue_name": "тест2026",
      "queue": "124",
      "queue_id": "18796",
      "scenario_id": "23799",
      "status": "LOST"
    },
    "cid_ani": "79000000008",
    "context": "queue",
    "cid_name": "[124] 79000000008",
    "channame": "SIP/sip-node1-000fa748",
    "eventtype": "QUEUE_LINK_END",
    "id": 1204108275,
    "amaflags": 15,
    "accountcode": "10001",
    "uniqueid": "125-1782930757.12197527"
  }
}
QueueCallEnd - Завершение звонка в очереди

Событие QueueCallEnd приходит на каждого абонента в очереди, т.е будет на 10 номеров в очереди придет 10 событий.

Payload: allOf — общий Envelope + данные события.

Envelope

ПолеТипОбяз.Описание
account_idintegerID аккаунта в системе
event_typestringТип события — см. components/messages
created_atstring (date-time)Момент события (UTC)
idempotencyKeystring (uuid)Ключ идемпотентности; одинаков при повторных доставках, используется для дедупликации
dataobjectДанные, специфичные для event_type

data

ПолеТипОбяз.Описание
callIdstringИдентификатор звонка
queueIdnullID очереди ВАТС
answeredstringБыл ли отвечен звонок: 0 или 1
callerNumberstringНомер звонящего
dateReceivedAtUTCstringВремя получения события Kafka-коннектором в UTC, до микросекунд; дублирует dateReceived
eventTypestringТип события
startGeneralTimenumberUnix-время начала звонка до постановки в очередь
internalNumberstringВнутренний номер оператора
durationnumberДлительность вызова/сессии, секунды
accountIdnumberНомер ЛС
durationWaitingnumberВремя ожидания ответа/в очереди, секунды
filestringНазвание файла записи разговора, если запись сохранена
queueNamestringНазвание очереди ВАТС, через которую проходил звонок
recordstringНаличие записи: 1 — есть, 0 — нет
billsecstringДлительность звонка после ответа
didstringНомер оператора
uniqueIDstringУникальный ID call-leg, формат {systemName}-{timestamp}.{seq}
queuestringОчередь
whoAnsweredbooleanПризнак того, что именно этот агент ответил на звонок
timestampnumberВремя создания события
vpbxIdstringНомер Виртуальной АТС

— обязательное поле; — необязательное.



**Пример:** Payload

```json
{
 "account_id": 10001,
  "event_type": "QueueCallEnd",
  "created_at": "2026-07-01T22:01:20.486Z",
  "idempotencyKey": "5b133904-6192-49d2-abbc-f95be887fb70",
  "data": {
    "callId": "125-1782932380.12198910",
    "queueId": null,
    "answered": "0",
    "callerNumber": "79000000002",
    "dateReceivedAtUTC": "2026-07-01 19:01:17.951205",
    "eventType": "QueueCallEnd",
    "startGeneralTime": 1782932380,
    "internalNumber": "181",
    "duration": 97,
    "accountId": 10001,
    "durationWaiting": 97,
    "file": "0",
    "queueName": "SupportQueue",
    "record": "0",
    "billsec": "0",
    "did": "79000000001",
    "uniqueID": "125-1782932412.12198975",
    "queue": "302",
    "whoAnswered": false,
    "timestamp": 1782932477,
    "vpbxId": "280"
  }
}

Другие события Виртуальной АТС

VpbxReceiveFax - ВАТС: Получение факса

Событие: Получение факса
Payload: allOf — общий Envelope + данные события.

Envelope

ПолеТипОбяз.Описание
account_idintegerID аккаунта в системе
event_typestringТип события — см. components/messages
created_atstring (date-time)Момент события (UTC)
idempotencyKeystring (uuid)Ключ идемпотентности; одинаков при повторных доставках, используется для дедупликации
dataobjectДанные, специфичные для event_type

data

ПолеТипОбяз.Описание
callerIDstringID звонящего (номер телефона)
accountIdstringНомер ЛС
vpbxIdstringНомер Виртуальной АТС
callIdstringИдентификатор звонка
didstringНомер телефона
rsidstringПараметр факса rsid
pagesstringКоличество страниц полученного факса
speedstringСкорость передачи факса
ecmstringПараметр факса ecm
resultstringРезультат получения факса
timestampstringВремя создания события
eventTypestringТип события
linkedIdstringID связанного звонка
dateReceivedstringМомент получения события (локальное время сервера)

— обязательное поле; — необязательное.

Пример: Payload

{
"account_id": 0,
  "event_type": "string",
  "created_at": "2019-08-24T14:15:22Z",
  "idempotencyKey": "0c14c6a6-6f50-4d1e-b0c4-b46ff43ba6a1",
  "data": {
    "callerID": "string",
    "accountId": "string",
    "vpbxId": "string",
    "callId": "string",
    "did": "string",
    "rsid": "string",
    "pages": "string",
    "speed": "string",
    "ecm": "string",
    "result": "string",
    "timestamp": "string",
    "eventType": "string",
    "linkedId": "string",
    "dateReceived": "string"
  }
}
Record_upload_done - Загружен файл записи разговора

Событие: Завершение загрузки файла записи разговора
Payload: allOf — общий Envelope + данные события.

Envelope

ПолеТипОбяз.Описание
account_idintegerID аккаунта в системе
event_typestringТип события — см. components/messages
created_atstring (date-time)Момент события (UTC)
idempotencyKeystring (uuid)Ключ идемпотентности; одинаков при повторных доставках, используется для дедупликации
dataobjectДанные, специфичные для event_type

data

ПолеТипОбяз.Описание
callIdstringИдентификатор звонка
linkedIdstringID связанного звонка
accountIdnumberНомер лицевого счёта
fileNamestringНазвание файла
eventTypestringТип события
idstringID события
typestringТип
vpbxIdstringНомер ВАТС

— обязательное поле; — необязательное.

Пример: Payload

{
"account_id": 10001,
  "event_type": "record_upload_done",
  "created_at": "2026-07-01T22:01:22.196Z",
  "idempotencyKey": "5b133904-6192-49d2-abbc-f95be887fb70",
  "data": {
    "callId": "125-1782932380.12198910",
    "linkedId": "125-1782932380.12198910",
    "accountId": 10001,
    "fileName": "20260701-215940-79000000002-79000000001-125178293238012198910",
    "data": {
      "callId": "125-1782932380.12198910",
      "fileName": "20260701-215940-79000000002-79000000001-125178293238012198910",
      "eventVersion": 2,
      "numA": "79000000002",
      "type": "call",
      "transcribationLanguage": "ru_RU",
      "eventTs": 1782932482063,
      "callType": "vpbx",
      "numB": "79000000001",
      "accountId": 10001,
      "transcribationProfile": "",
      "transcribationProvider": "yandex",
      "transcribation": 1,
      "eventName": "record_upload_done",
      "vpbxId": "280"
    },
    "eventType": "record_upload_done",
    "id": "563d7a43-90c2-4e97-96ae-c26071b9dec9",
    "type": "external_event",
    "vpbxId": "280"
  }
}
EmitIntegrationEvent - Отправка переменных из сценария ВАТС

Payload: allOf — общий Envelope + данные события.

Envelope

ПолеТипОбяз.Описание
account_idintegerID аккаунта в системе
event_typestringТип события — см. components/messages
created_atstring (date-time)Момент события (UTC)
idempotencyKeystring (uuid)Ключ идемпотентности; одинаков при повторных доставках, используется для дедупликации
dataobjectДанные, специфичные для event_type

data

ПолеТипОбяз.Описание
emit_integration_event_counter_10422numberСчётчик срабатывания сценарного шага; номер в имени — внутренний ID сценария
dtmfstringDTMF-тон, введённый абонентом
outputObjectnullЗарезервированное поле результата сценария; в примере не заполнено
eventVersionnumberВерсия внутреннего формата события сценария
scenario_counternumberПорядковый номер выполнения сценария
scenario_id_1stringИдентификатор сценария ВАТС
typestringКатегория события сценария, например call_command_event
eventTsnumberUnix-время создания события на стороне сценарного движка, мс
scenario_idstringИдентификатор сценария ВАТС
transcribation_profilestringПрофиль транскрибации звонка
commandNamestringИмя завершившейся команды сценария, например end-call
eventNamestringИмя обработчика события, например scenario_command_completed
idstringУникальный технический ID события (UUID)
transcribation_service_languagestringЯзык сервиса транскрибации
callIdstringИдентификатор звонка
transcribation_service_providerstringПровайдер сервиса транскрибации
variablesnullКонтейнер дополнительных переменных сценария (JSON); в этом событии не заполнен
eventTypestringДублирует event_type
num_astringНомер участника A сценария
num_bstringНомер участника B сценария
num_cnullНомер участника C, если задействован
call_idstringИдентификатор звонка
accountIdnumberНомер лицевого счёта; дублирует account_id из Envelope
vpbx_idstringНомер ВАТС
is_transcribation_enabledbooleanВключена ли транскрибация звонка
menu_dtmfstringDTMF-тон, введённый в IVR-меню
account_idnumberНомер ЛС

— обязательное поле; — необязательное.

Пример: Payload

{
"account_id": 0,
  "event_type": "string",
  "created_at": "2019-08-24T14:15:22Z",
  "idempotencyKey": "0c14c6a6-6f50-4d1e-b0c4-b46ff43ba6a1",
  "data": {
    "emit_integration_event_counter_10422": 0,
    "dtmf": "string",
    "outputObject": null,
    "eventVersion": 0,
    "scenario_counter": 0,
    "scenario_id_1": "string",
    "type": "string",
    "eventTs": 0,
    "scenario_id": "string",
    "transcribation_profile": "string",
    "commandName": "string",
    "eventName": "string",
    "id": "string",
    "transcribation_service_language": "string",
    "callId": "string",
    "transcribation_service_provider": "string",
    "variables": null,
    "eventType": "string",
    "num_a": "string",
    "num_b": "string",
    "num_c": null,
    "call_id": "string",
    "accountId": 0,
    "vpbx_id": "string",
    "is_transcribation_enabled": true,
    "menu_dtmf": "string",
    "account_id": 0
  }
}
External_pbx_change_availability - Изменение состояния транка

Событие: Информация об изменении состояния транка
Payload: allOf — общий Envelope + данные события.

Envelope

ПолеТипОбяз.Описание
account_idintegerID аккаунта в системе
event_typestringТип события — см. components/messages
created_atstring (date-time)Момент события (UTC)
idempotencyKeystring (uuid)Ключ идемпотентности; используется для дедупликации повторных доставок
dataobjectДанные, специфичные для event_type

data

ПолеТипОбяз.Описание
accountIdnumberНомер ЛС
typestringТип события
statusstringСтатус транка после изменения: доступен/недоступен
namestringИмя абонента

— обязательное поле; — необязательное.

Пример: Payload

{
"account_id": 0,
  "event_type": "string",
  "created_at": "2019-08-24T14:15:22Z",
  "idempotencyKey": "0c14c6a6-6f50-4d1e-b0c4-b46ff43ba6a1",
  "data": {
    "accountId": 0,
    "type": "string",
    "status": "string",
    "name": "string"
  }
}
SubscriberStatus - Статус абонента

Событие: Статусы абонентов
Payload: allOf — общий Envelope + данные события.

Envelope

ПолеТипОбяз.Описание
account_idintegerID аккаунта в системе
event_typestringТип события — см. components/messages
created_atstring (date-time)Момент события (UTC)
idempotencyKeystring (uuid)Ключ идемпотентности; используется для дедупликации повторных доставок
dataobjectДанные, специфичные для event_type

data

ПолеТипОбяз.Описание
accountIdnumberНомер ЛС
vpbx_idnumberНомер ВАТС
pausedbooleanНаличие паузы
account_idnumberНомер ЛС
core_user_idstringCore user ID
queue_member_idnumberID участника в очереди
namestringИмя абонента
eventTypestringТип события
int_number_idnumberID внутреннего номера
object_idnumberID объекта
queue_idnumberID очереди

— обязательное поле; — необязательное.

Пример: Payload

{
  "account_id": 10001,
  "event_type": "SubscriberStatus",
  "created_at": "2026-05-08T14:32:59.995Z",
  "idempotencyKey": "5b133904-6192-49d2-abbc-f95be887fb70",
  "data": {
    "accountId": 10001,
    "vpbx_id": 280,
    "paused": false,
    "account_id": 10001,
    "core_user_id": "175925",
    "queue_member_id": 1383074,
    "name": "Petrov Aleksandr",
    "eventType": "SubscriberStatus",
    "int_number_id": 119512,
    "object_id": 73485,
    "queue_id": 32123
  }
}
OriginateStart - Начало звонка через API

Payload: allOf — общий Envelope + данные события.

Envelope

ПолеТипОбяз.Описание
account_idintegerID аккаунта в системе
event_typestringТип события — см. components/messages
created_atstring (date-time)Момент события (UTC)
idempotencyKeystring (uuid)Ключ идемпотентности; используется для дедупликации повторных доставок
dataobjectДанные, специфичные для event_type

data

ПолеТипОбяз.Описание
linkedIdstringID связанного звонка
accountCodestringAccount code канала; обычно совпадает с account_id, может быть пустым
connectedLineNumstringНомер собеседника (Connected Line); может содержать доп. параметры через *
userEventTypestringДублирует event_type — тип события AMI UserEvent
dateReceivedAtUTCstringВремя получения Kafka-коннектором в UTC, до микросекунд; дублирует dateReceived
channelstringИмя канала Asterisk (SIP/PJSIP, Local и др.)
privilegestringУровень логирования/видимости события в Asterisk AMI
eventTypestringТип события
prioritynumberПриоритет текущего шага диалплана Asterisk
extenstringExtension диалплана, где сработало событие (для входящих обычно s)
callTypestringТип звонка
channelStatenumberКод состояния Asterisk-канала (см. channelStateDesc)
accountIdnumberНомер лицевого счёта
callerIdNumstringНомер вызывающего абонента (Caller ID number)
systemNamestringID Asterisk-сервера (номер хаба)
dateReceivedstringМомент получения события (локальное время сервера)
contextstringКонтекст события
channelStateDescstringРасшифровка channelState (например Up, Ring, Down)
callerIdNamestringИмя вызывающего абонента, если передано АТС/оператором
eventstringДублирует event_type — служебное поле Asterisk UserEvent
uniqueIdstringУникальный ID call-leg, формат {systemName}-{timestamp}.{seq}
originateIdstringID исходящего вызова, инициированного через API (Originate)

— обязательное поле; — необязательное.

Пример: Payload

{
  "account_id": 10001,
  "event_type": "OriginateStart",
  "created_at": "2026-07-01T16:01:53.508Z",
  "idempotencyKey": "5b133904-6192-49d2-abbc-f95be887fb70",
  "data": {
    "linkedId": "125-1782910912.12119563",
    "accountCode": "10001",
    "connectedLineNum": "79000000018",
    "userEventType": "OriginateStart",
    "dateReceivedAtUTC": "2026-07-01 13:01:53.343815",
    "channel": "SIP/70000205-000f8ab2",
    "privilege": "user,all",
    "eventType": "OriginateStart",
    "priority": 3,
    "exten": "s",
    "callType": "click2call",
    "channelState": 6,
    "accountId": 10001,
    "callerIdNum": "79000000018",
    "systemName": "125",
    "dateReceived": "Jul 1, 2026, 4:01:53 PM",
    "context": "originate-start",
    "channelStateDesc": "Up",
    "callerIdName": "70000205",
    "event": "OriginateStart",
    "uniqueId": "125-1782910912.12119563",
    "originateId": ""
  }
}

Была ли эта статья полезной