Популярные статьи
- Почему скорость 4G/LTE интернета может быть низкой?
1623 просмотра
- 💰 Как проверить баланс
1096 просмотра
- Как правильно набирать номер телефона?
555 просмотра
- 🔌📞Как подключить телефонный номер к ВАТС
447 просмотра
Каталог событий MCN Telecom - часть 1
События (вебхуки и триггеры), которые платформа MCN Telecom отправляет на адрес (URL) клиента. Единый envelope для всех событий, один channel = один event_type.
Часть 1
Часть 2 смотрите здесь;
Часть 3 смотрите здесь;
Часть 4 смотрите здесь;
Часть 5 смотрите здесь;
Часть 6 смотрите здесь
Operations
EndCall - ВАТС: завершение звонка
Operation ID: EndCall
Звонки Виртуальной АТС
ВАТС: завершение звонка
Payload
Тип: allOf — общий Envelope + данные конкретного события.
Envelope
Общая обёртка для всех вебхуков.
✓— обязательное поле;—— необязательное.
| Поле | Тип | Обяз. | Описание |
|---|---|---|---|
account_id | integer | ✓ | ID аккаунта в системе |
event_type | string | ✓ | Тип события — см. components/messages |
created_at | string (date-time) | ✓ | Момент события (UTC) |
idempotencyKey | string (uuid) | — | Ключ идемпотентности. Одинаков при повторных доставках; используется для дедупликации |
data | object | ✓ | Данные, специфичные для event_type |
data
| Поле | Тип | Обяз. | Описание |
|---|---|---|---|
emit_integration_event_counter_10422 | number | — | Счётчик срабатывания сценарного шага; номер в имени — внутренний ID сценария |
dtmf | string | — | DTMF-тон, введённый абонентом |
outputObject | null | ✓ | Зарезервированное поле результата сценария |
eventVersion | number | ✓ | Версия внутреннего формата события |
scenario_counter | number | ✓ | Порядковый номер выполнения сценария |
scenario_id_1 | string | ✓ | Идентификатор сценария ВАТС |
type | string | ✓ | Категория события, например call_command_event |
eventTs | number | ✓ | Unix-время создания события, мс |
scenario_id | string | ✓ | Идентификатор сценария ВАТС |
transcribation_profile | string | — | Профиль транскрибации, если включена |
commandName | string | ✓ | Завершившаяся команда, например end-call |
eventName | string | ✓ | Имя обработчика, например scenario_command_completed |
id | string | ✓ | Уникальный ID события (UUID) |
transcribation_service_language | string | — | Язык сервиса транскрибации |
callId | string | ✓ | Идентификатор звонка |
transcribation_service_provider | string | — | Провайдер сервиса транскрибации |
eventType | string | ✓ | Дублирует event_type |
hangup_source | string | ✓ | Инициатор завершения: orig — вызывающая, term — принимающая сторона |
num_a | string | ✓ | Номер участника A сценария |
num_b | string | ✓ | Номер участника B сценария |
num_c | null | ✓ | Номер участника C, если задействован |
call_id | string | ✓ | Идентификатор звонка |
accountId | number | ✓ | Номер лицевого счёта; дублирует account_id из Envelope |
vpbx_id | string | ✓ | Номер ВАТС |
is_transcribation_enabled | boolean | — | Включена ли транскрибация |
menu_dtmf | string | — | DTMF-тон, введённый в IVR-меню |
account_id | number | ✓ | Номер ЛС |
Пример: Payload
{
"account_id": 10001,
"event_type": "EndCall",
"created_at": "2026-07-01T21:33:01.842Z",
"idempotencyKey": "5b133904-6192-49d2-abbc-f95be887fb70",
"data": {
"callId": "125-1782930757.12197527",
"variables": {
"hangup_source": "orig"
},
"scenario_client_variables_1": {
"vpbx_id": "280"
},
"outputObject": null,
"eventVersion": 1,
"scenario_counter": 1,
"eventType": "EndCall",
"hangup_source": "orig",
"num_a": "79000000008",
"scenario_id_1": "23799",
"type": "call_command_event",
"num_b": "79000000009",
"eventTs": 1782930781635,
"num_c": null,
"scenario_id": "23799",
"call_id": "125-1782930757.12197527",
"accountId": 10001,
"vpbx_id": "280",
"commandName": "end-call",
"account_id": 10001,
"eventName": "scenario_command_completed",
"id": "2a51915b-69b8-417c-abad-c57584f0137a"
}
}
VpbxInboundCallEnd - ВАТС: Завершение входящего звонка
VpbxInboundCallEnd
ВАТС: Завершение входящего звонка
Operation ID: VpbxInboundCallEnd
Категория: Звонки Виртуальной АТС
Payload
Тип: allOf — общий Envelope + данные события.
Envelope
✓— обязательное поле;—— необязательное
| Поле | Тип | Обяз. | Описание |
|---|---|---|---|
account_id | integer | ✓ | ID аккаунта в системе |
event_type | string | ✓ | Тип события — см. components/messages |
created_at | string (date-time) | ✓ | Момент события (UTC) |
idempotencyKey | string (uuid) | — | Ключ идемпотентности; одинаков при повторных доставках события, используется для дедупликации |
data | object | ✓ | Данные, специфичные для event_type |
data
| Поле | Тип | Обяз. | Описание |
|---|---|---|---|
voicemailbox | number | ✓ | Номер голосового ящика, если задействован |
ivrSchemaId | string | ✓ | ID IVR-схемы, назначенной на номер (DID) |
userEventType | string | ✓ | Дублирует event_type — тип события на уровне AMI UserEvent |
channel | string | ✓ | Имя канала Asterisk, обработавшего вызов (SIP/PJSIP, Local и др.) |
privilege | string | ✓ | Уровень логирования/видимости события в Asterisk AMI (system,call) |
transcribationLanguage | string | ✓ | Язык, использованный сервисом транскрибации |
exten | string | ✓ | Extension диалплана, на котором сработало событие (для входящих обычно s) |
channelState | number | ✓ | Числовой код состояния Asterisk-канала (см. ChannelStateDesc) |
duration | number | ✓ | Общая продолжительность звонка |
callerIdNum | string | ✓ | Номер вызывающего абонента (Caller ID number) |
file | string | ✓ | Название файла записи разговора, если запись сохранена |
systemName | string | ✓ | Идентификатор Asterisk-сервера (номер хаба) |
dateReceived | string | ✓ | Момент получения события (локальное время сервера, человекочитаемый формат) |
record | string | ✓ | Признак наличия записи разговора (1 — есть, 0 — нет) |
internalNumber | string | ✓ | Внутренний номер |
transcribationProvider | string | ✓ | Провайдер сервиса транскрибации |
transcribation | string | ✓ | Признак/режим транскрибации звонка |
context | string | ✓ | Контекст события |
schemaBillsec | string | ✓ | Тарифицируемая длительность звонка по IVR-схеме, секунды |
callerID | string | ✓ | ID звонящего (номер телефона) |
event | string | ✓ | Дублирует event_type — eventName Asterisk UserEvent |
billsec | string | ✓ | Длительность звонка после ответа |
timestamp | number | ✓ | Время создания события |
callId | string | ✓ | Идентификатор звонка |
linkedId | string | ✓ | ID связанного звонка |
answered | string | ✓ | Был ли отвечен звонок (0 или 1) |
callerNumber | string | ✓ | Номер телефона звонящего |
dateReceivedAtUTC | string | ✓ | Время получения события в UTC, микросекунды дублирует dateReceived в другом формате |
eventType | string | ✓ | Тип события |
priority | number | ✓ | Приоритет текущего шага диалплана Asterisk |
firstAnswer | boolean | ✓ | Признак того, что это первый ответ на звонок |
accountId | number | ✓ | Номер ЛС |
durationWaiting | number | ✓ | Время ожидания ответа с очереди, секунды |
queueName | string | ✓ | Название очереди ВАТС, через которую проходил звонок |
time | string | ✓ | Время события (локальное, ЧЧ:ММ:СС) |
coreUserId | string | ✓ | Внутренний числовой ID пользователя/сотрудника (агента) в системе ВАТС |
channelStateDesc | string | ✓ | Текстовая расшифровка channelState (например Up, Ring, Down) |
callerIdName | string | ✓ | Имя вызывающего абонента (Caller ID name), если передано АТС/оператором |
did | string | ✓ | Номер оператора |
uniqueId | string | ✓ | Уникальный идентификатор call-leg (один вызов), формат [systemName]-[timestamp].[seq] |
queue | string | ✓ | Название/номер очереди ВАТС (см. queueName) |
vpbxId | string | ✓ | Номер Виртуальной АТС |
Пример: Payload
{
"account_id": 10001,
"event_type": "VpbxInboundCallEnd",
"created_at": "2026-07-01T22:01:18.433Z",
"idempotencyKey": "5b133904-6192-49d2-abbc-f95be887fb70",
"data": {
"voicemailbox": 0,
"ivrSchemaId": "6906",
"connectedLineNum": "70000040",
"userEventType": "VpbxInboundCallEnd",
"channel": "SIP/sip-node1-000fa7c1",
"privilege": "user,all",
"transcribationLanguage": "ru_RU",
"exten": "s",
"channelState": 6,
"duration": 97,
"callerIdNum": "79000000002",
"file": "20260701-215940-79000000002-79000000001-125178293238012198910",
"systemName": "125",
"dateReceived": "Jul 1, 2026, 10:01:17 PM",
"record": "1",
"InternalNumber": "416",
"transcribationProvider": "yandex",
"transcribation": "1",
"context": "signal-vpbx-inbound-call-end",
"schemaBillsec": "0",
"callerID": "79000000002",
"event": "VpbxInboundCallEnd",
"billsec": "55",
"timestamp": 1782932477,
"callId": "125-1782932380.12198910",
"linkedId": "125-1782932380.12198910",
"answered": "1",
"callerNumber": "79000000002",
"connectedLineName": "70000040",
"dateReceivedAtUTC": "2026-07-01 19:01:17.951205",
"eventType": "VpbxInboundCallEnd",
"priority": 40,
"firstAnswer": false,
"accountId": 10001,
"durationWaiting": 42,
"queueName": "",
"time": "19:01:17",
"coreUserId": "169479",
"channelStateDesc": "Up",
"callerIdName": "79000000002",
"did": "79000000001",
"uniqueId": "125-1782932380.12198910",
"queue": "",
"vpbxId": "280"
}
}
VpbxOutgoingEnd - ВАТС: Завершение исходящего звонка
ВАТС: Завершение исходящего звонка
Событие: Завершение звонка ВАТС
Payload: allOf — общий Envelope + данные события.
Envelope
✓— обязательное поле;—— необязательное.
| Поле | Тип | Обяз. | Описание |
|---|---|---|---|
account_id | integer | ✓ | ID аккаунта в системе |
event_type | string | ✓ | Тип события — см. components/messages |
created_at | string (date-time) | ✓ | Момент события (UTC) |
idempotencyKey | string (uuid) | — | Ключ идемпотентности; одинаков при повторных доставках, используется для дедупликации |
data | object | ✓ | Данные, специфичные для event_type |
data
| Поле | Тип | Обяз. | Описание |
|---|---|---|---|
connectedLineNum | string | ✓ | Номер собеседника, с которым установлено соединение (Connected Line; может содержать доп. параметры через ;) |
userEventType | string | ✓ | Дублирует event_type — тип события на уровне AMI UserEvent |
callback | string | ✓ | callback |
channel | string | ✓ | Имя канала Asterisk, обрабатывающего вызов (SIP/PJSIP, Local и др.) |
privilege | string | ✓ | Уровень логирования/видимости события в Asterisk AMI (служебное поле) |
transcribationLanguage | string | ✓ | Язык, использованный сервисом транскрибации |
exten | string | ✓ | Extension диалплана, на котором сработало событие (для входящих обычно s) |
channelState | number | ✓ | Числовой код состояния Asterisk-канала (см. channelStateDesc) |
duration | number | ✓ | Общая продолжительность звонка |
isRedirect | string | ✓ | Был ли совершён перевод |
hangupCauseCode | string | ✓ | Код завершения звонка |
callerIdNum | string | ✓ | Номер вызывающего абонента (Caller ID number) |
file | string | ✓ | Название файла записи разговора, если запись сохранена |
systemName | string | ✓ | Идентификатор Asterisk-сервера (номер хаба) |
dateReceived | string | ✓ | Момент получения события (локальное время сервера, человекочитаемый формат) |
record | string | ✓ | Наличие записи разговора (1 — есть, 0 — нет) |
transcribationProvider | string | ✓ | Провайдер сервиса транскрибации |
transcribation | string | ✓ | Признак/режим транскрибации звонка |
context | string | ✓ | Контекст события |
event | string | ✓ | Дублирует event_type — служебное поле Asterisk UserEvent |
calledNumber | string | ✓ | Кому звонит |
billsec | string | ✓ | Длительность звонка после ответа |
timestamp | number | ✓ | Время создания события |
callId | string | ✓ | Идентификатор звонка |
linkedId | string | ✓ | ID связанного звонка |
answered | string | ✓ | Был ли отвечен звонок (0 или 1) |
connectedLineName | string | ✓ | Имя/номер собеседника в Connected Line (см. connectedLineNum) |
dateReceivedAtUTC | string | ✓ | Время получения события Kafka-коннектором, UTC, до микросекунд; дублирует dateReceived в другом формате |
eventType | string | ✓ | Тип события |
internalNumber | string | ✓ | Внутренний номер |
priority | number | ✓ | Приоритет текущего шага диалплана Asterisk |
firstAnswer | boolean | ✓ | Признак того, что это первый ответ на звонок |
accountId | number | ✓ | Номер ЛС |
durationWaiting | number | ✓ | Время ожидания ответа |
coreUserId | string | ✓ | Внутренний числовой ID пользователя/сотрудника (агента) в системе ВАТС |
channelStateDesc | string | ✓ | Текстовая расшифровка channelState (например Up, Ring, Down) |
did | string | ✓ | Номер оператора |
uniqueId | string | ✓ | Уникальный ID call-leg (ноги вызова), формат [systemName]-[timestamp].[seq] |
vpbxId | string | ✓ | Номер Виртуальной АТС |
Пример: Payload
{
"account_id": 10001,
"event_type": "VpbxOutgoingEnd",
"created_at": "2026-07-01T21:09:16.081Z",
"idempotencyKey": "5b133904-6192-49d2-abbc-f95be887fb70",
"data": {
"connectedLineNum": "79000000038*E163164",
"userEventType": "VpbxOutgoingEnd",
"callBack": "0",
"channel": "SIP/sip-node1-000fa581",
"privilege": "user,all",
"transcribationLanguage": "ru_RU",
"exten": "s",
"channelState": 6,
"answerList": {
"9186": true
},
"duration": 635,
"isRedirect": "0",
"hangupCauseCode": "16",
"callerIdNum": "79000000039",
"file": "20260701-205839-9186-79000000039-125178292871912193499",
"systemName": "125",
"dateReceived": "Jul 1, 2026, 9:09:15 PM",
"record": "1",
"transcribationProvider": "yandex",
"transcribation": "0",
"context": "signal-outgoing-hangup-handler",
"event": "VpbxOutgoingEnd",
"calledNumber": "79000000039",
"billsec": "618",
"timestamp": 1782929355,
"callId": "125-1782928719.12193499",
"linkedId": "125-1782928719.12193499",
"answered": "1",
"connectedLineName": "79000000038",
"dateReceivedAtUTC": "2026-07-01 18:09:15.734915",
"eventType": "VpbxOutgoingEnd",
"internalNumber": "9186",
"priority": 16,
"firstAnswer": false,
"accountId": 10001,
"durationWaiting": 17,
"coreUserId": "40977",
"channelStateDesc": "Up",
"did": "79000000038",
"uniqueId": "125-1782928719.12193503",
"vpbxId": "280"
}
}
VpbxOutgoingAnswer - ВАТС: Исходящий звонок отвечен
ВАТС: Исходящий звонок отвечен
Событие: Ответ на исходящий звонок ВАТС
Payload: allOf — общий Envelope + данные события.
Envelope
| Поле | Тип | Обяз. | Описание |
|---|---|---|---|
account_id | integer | ✓ | ID аккаунта в системе |
event_type | string | ✓ | Тип события — см. components/messages |
created_at | string (date-time) | ✓ | Момент события (UTC) |
idempotencyKey | string (uuid) | — | Ключ идемпотентности; одинаков при повторных доставках, используется для дедупликации |
data | object | ✓ | Данные, специфичные для event_type |
data
| Поле | Тип | Обяз. | Описание |
|---|---|---|---|
connectedLineNum | string | ✓ | Номер собеседника, с которым установлено соединение (Connected Line; может содержать доп. параметры через ;) |
userEventType | string | ✓ | Дублирует event_type — тип события на уровне AMI UserEvent |
channel | string | ✓ | Имя канала Asterisk, обрабатывающего вызов (SIP/PJSIP, Local и др.) |
privilege | string | ✓ | Уровень логирования/видимости события в Asterisk AMI (служебное поле) |
exten | string | ✓ | Extension диалплана, на котором сработало событие (для входящих обычно s) |
channelState | number | ✓ | Числовой код состояния Asterisk-канала (см. channelStateDesc) |
isRedirect | string | ✓ | Был ли совершён перевод |
callerIdNum | string | ✓ | Номер вызывающего абонента (Caller ID number) |
systemName | string | ✓ | Идентификатор Asterisk-сервера (номер хаба) |
dateReceived | string | ✓ | Момент получения события (локальное время сервера, человекочитаемый формат) |
record | string | ✓ | Признак наличия записи разговора (1 — есть, 0 — нет) |
context | string | ✓ | Контекст события |
event | string | ✓ | Дублирует event_type — служебное поле Asterisk UserEvent |
calledNumber | string | ✓ | Кому звонит |
timestamp | number | ✓ | Время создания события |
callId | string | ✓ | Идентификатор звонка |
linkedId | string | ✓ | ID связанного звонка |
connectedLineName | string | ✓ | Имя/номер собеседника в Connected Line (см. connectedLineNum) |
dateReceivedAtUTC | string | ✓ | Время получения события Kafka-коннектором, UTC, до микросекунд; дублирует dateReceived в другом формате |
eventType | string | ✓ | Тип события |
internalNumber | string | ✓ | Внутренний номер |
priority | number | ✓ | Приоритет текущего шага диалплана Asterisk |
accountId | number | ✓ | Номер ЛС |
durationWaiting | number | ✓ | Время ожидания ответа |
callback | string | ✓ | Признак обратного вызова (callback) |
channelStateDesc | string | ✓ | Текстовая расшифровка channelState (например Up, Ring, Down) |
did | string | ✓ | Номер оператора |
uniqueId | string | ✓ | Уникальный ID call-leg (ноги вызова), формат [systemName]-[timestamp].[seq] |
vpbxId | string | ✓ | Номер Виртуальной АТС |
✓— обязательное поле;—— необязательное.
Пример: Payload
{
"account_id": 10001,
"event_type": "VpbxOutgoingAnswer",
"created_at": "2026-07-01T20:58:57.307Z",
"idempotencyKey": "5b133904-6192-49d2-abbc-f95be887fb70",
"data": {
"connectedLineNum": "79000000038*E163164",
"userEventType": "VpbxOutgoingAnswer",
"channel": "SIP/sip-node1-000fa581",
"privilege": "user,all",
"exten": "s",
"channelState": 6,
"isRedirect": "0",
"callerIdNum": "79000000039",
"systemName": "125",
"dateReceived": "Jul 1, 2026, 8:58:57 PM",
"record": "1",
"context": "signal-outgoing-bridge",
"event": "VpbxOutgoingAnswer",
"calledNumber": "79000000039",
"timestamp": 1782928737,
"callId": "125-1782928719.12193499",
"linkedId": "125-1782928719.12193499",
"connectedLineName": "79000000038",
"dateReceivedAtUTC": "2026-07-01 17:58:57.135236",
"eventType": "VpbxOutgoingAnswer",
"internalNumber": "9186",
"priority": 25,
"accountId": 10001,
"durationWaiting": 17,
"callback": "0",
"channelStateDesc": "Up",
"did": "79000000038",
"uniqueId": "125-1782928719.12193503",
"vpbxId": "280"
}
}
VpbxInboundCallStart - ВАТС: Начало входящего звонка
ВАТС: Начало входящего звонка
Событие: Входящий на ВАТС звонок
Payload: allOf — общий Envelope + данные события.
Envelope
| Поле | Тип | Обяз. | Описание |
|---|---|---|---|
account_id | integer | ✓ | ID аккаунта в системе |
event_type | string | ✓ | Тип события — см. components/messages |
created_at | string (date-time) | ✓ | Момент события (UTC) |
idempotencyKey | string (uuid) | — | Ключ идемпотентности; одинаков при повторных доставках, используется для дедупликации |
data | object | ✓ | Данные, специфичные для event_type |
data
| Поле | Тип | Обяз. | Описание |
|---|---|---|---|
ivrSchemaId | string | ✓ | ID IVR-схемы, назначенной на номер (DID) |
userEventType | string | ✓ | Дублирует event_type — тип события на уровне AMI UserEvent |
channel | string | ✓ | Имя канала Asterisk, обрабатывающего вызов (SIP/PJSIP, Local и др.) |
privilege | string | ✓ | Уровень логирования/видимости события в Asterisk AMI (служебное поле) |
exten | string | ✓ | Extension диалплана, на котором сработало событие (для входящих обычно s) |
channelState | number | ✓ | Числовой код состояния Asterisk-канала (см. channelStateDesc) |
callerIdNum | string | ✓ | Номер вызывающего абонента (Caller ID number) |
systemName | string | ✓ | Идентификатор Asterisk-сервера (номер хаба) |
dateReceived | string | ✓ | Момент получения события (локальное время сервера, человекочитаемый формат) |
context | string | ✓ | Контекст события |
callerID | string | ✓ | ID звонящего (номер телефона) |
event | string | ✓ | Дублирует event_type — служебное поле Asterisk UserEvent |
timestamp | number | ✓ | Время создания события |
callId | string | ✓ | Идентификатор звонка |
linkedId | string | ✓ | ID связанного звонка |
callerNumber | string | ✓ | Номер звонящего |
dateReceivedAtUTC | string | ✓ | Время получения события Kafka-коннектором в UTC, до микросекунд; дублирует dateReceived в другом формате |
eventType | string | ✓ | Тип события |
priority | number | ✓ | Приоритет текущего шага диалплана Asterisk |
accountId | number | ✓ | Номер ЛС |
channelStateDesc | string | ✓ | Текстовая расшифровка channelState (например Up, Ring, Down) |
callerIdName | string | ✓ | Имя вызывающего абонента (Caller ID name), если передано АТС/оператором |
did | string | ✓ | Номер оператора |
uniqueId | string | ✓ | Уникальный ID call-leg (ноги вызова), формат {systemName}-{timestamp}.{seq} |
vpbxId | string | ✓ | Номер Виртуальной АТС |
✓— обязательное поле;—— необязательное.
Пример: Payload
{
"account_id": 10001,
"event_type": "VpbxInboundCallStart",
"created_at": "2026-07-01T21:59:40.563Z",
"idempotencyKey": "5b133904-6192-49d2-abbc-f95be887fb70",
"data": {
"ivrSchemaId": "6906",
"userEventType": "VpbxInboundCallStart",
"channel": "SIP/sip-node1-000fa7c1",
"privilege": "user,all",
"exten": "s",
"channelState": 4,
"callerIdNum": "79000000002",
"systemName": "125",
"dateReceived": "Jul 1, 2026, 9:59:40 PM",
"context": "signal-vpbx-inbound-call",
"callerID": "79000000002",
"event": "VpbxInboundCallStart",
"timestamp": 1782932380,
"callId": "125-1782932380.12198910",
"linkedId": "125-1782932380.12198910",
"callerNumber": "79000000002",
"dateReceivedAtUTC": "2026-07-01 18:59:40.336450",
"eventType": "VpbxInboundCallStart",
"priority": 3,
"accountId": 10001,
"channelStateDesc": "Ring",
"callerIdName": "79000000002",
"did": "79000000001",
"uniqueId": "125-1782932380.12198910",
"vpbxId": "280"
}
}
PhoneCallStart - ВАТС: Начало звонка на внутренний номер
ВАТС: Начало звонка на внутренний номер
Событие: Начало звонка на внутренний номер ВАТС
Payload: allOf — общий Envelope + данные события.
Envelope
| Поле | Тип | Обяз. | Описание |
|---|---|---|---|
account_id | integer | ✓ | ID аккаунта в системе |
event_type | string | ✓ | Тип события — см. components/messages |
created_at | string (date-time) | ✓ | Момент события (UTC) |
idempotencyKey | string (uuid) | — | Ключ идемпотентности; одинаков при повторных доставках, используется для дедупликации |
data | object | ✓ | Данные, специфичные для event_type |
data
| Поле | Тип | Обяз. | Описание |
|---|---|---|---|
externalNumber | string | ✓ | Внешний номер |
connectedLineNum | string | ✓ | Номер собеседника, с которым установлено соединение (Connected Line); может содержать доп. параметры через * |
userEventType | string | ✓ | Дублирует event_type — тип события на уровне AMI UserEvent |
channel | string | ✓ | Имя канала Asterisk, обрабатывающего вызов (SIP/PJSIP, Local и др.) |
privilege | string | ✓ | Уровень логирования/видимости события в Asterisk AMI (служебное поле) |
exten | string | ✓ | Extension диалплана, на котором сработало событие (для входящих обычно s) |
isIncoming | boolean | ✓ | Направление звонка: true — входящий, false — исходящий |
channelState | number | ✓ | Числовой код состояния Asterisk-канала (см. channelStateDesc) |
callerIdNum | string | ✓ | Номер вызывающего абонента (Caller ID number) |
systemName | string | ✓ | Идентификатор Asterisk-сервера (номер хаба) |
dateReceived | string | ✓ | Момент получения события (локальное время сервера, человекочитаемый формат) |
context | string | ✓ | Контекст события |
from | string | ✓ | Номер звонящего (с внутренним номером оператора) |
callerID | string | ✓ | ID звонящего (номер телефона) |
event | string | ✓ | Дублирует event_type — служебное поле Asterisk UserEvent |
calledNumber | string | ✓ | Кому звонят |
timestamp | number | ✓ | Время создания события |
callId | string | ✓ | Идентификатор звонка |
linkedId | string | ✓ | ID связанного звонка |
callerNumber | string | ✓ | Номер звонящего |
connectedLineName | string | ✓ | Имя/номер собеседника в Connected Line (см. connectedLineNum) |
dateReceivedAtUTC | string | ✓ | Время получения события Kafka-коннектором в UTC, до микросекунд; дублирует dateReceived в другом формате |
eventType | string | ✓ | Тип события |
internalNumber | string | ✓ | Внутренний номер оператора |
priority | number | ✓ | Приоритет текущего шага диалплана Asterisk |
accountId | number | ✓ | Номер ЛС |
to | string | ✓ | Кому звонят (с внутренним номером оператора) |
coreUserId | string | ✓ | Внутренний числовой ID пользователя/сотрудника (агента) в системе ВАТС |
channelStateDesc | string | ✓ | Текстовая расшифровка channelState (например Up, Ring, Down) |
did | string | ✓ | Номер оператора |
uniqueId | string | ✓ | Уникальный ID call-leg (ноги вызова), формат {systemName}-{timestamp}.{seq} |
vpbxId | string | ✓ | Номер Виртуальной АТС |
✓— обязательное поле;—— необязательное.
Пример: Payload
{
"account_id": 10001,
"event_type": "PhoneCallStart",
"created_at": "2026-07-01T19:04:54.511Z",
"idempotencyKey": "5b133904-6192-49d2-abbc-f95be887fb70",
"data": {
"externalNumber": "79000000028",
"connectedLineNum": "79000000028*F1;cpc=MT_FMC",
"userEventType": "PhoneCallStart",
"channel": "SIP/sip-node1-000f9fb3",
"privilege": "user,all",
"exten": "s",
"isIncoming": true,
"channelState": 0,
"callerIdNum": "s",
"systemName": "125",
"dateReceived": "Jul 1, 2026, 7:04:54 PM",
"context": "signal-phone-call",
"from": "79000000028",
"callerID": "79000000028",
"event": "PhoneCallStart",
"calledNumber": "79000000029",
"timestamp": 1782921894,
"callId": "125-1782921894.12176185",
"linkedId": "125-1782921894.12176185",
"callerNumber": "79000000028",
"connectedLineName": "79000000028*F1",
"dateReceivedAtUTC": "2026-07-01 16:04:54.347329",
"eventType": "PhoneCallStart",
"internalNumber": "9152",
"priority": 6,
"accountId": 10001,
"to": "9152",
"coreUserId": "0",
"channelStateDesc": "Down",
"did": "79000000029",
"uniqueId": "125-1782921894.12176190",
"vpbxId": "280"
}
}
VpbxOutgoingStart - ВАТС: Начало исходящего звонка
ВАТС: Начало исходящего звонка
Событие: Начало звонка ВАТС
Payload: allOf — общий Envelope + данные события.
Envelope
| Поле | Тип | Обяз. | Описание |
|---|---|---|---|
account_id | integer | ✓ | ID аккаунта в системе |
event_type | string | ✓ | Тип события — см. components/messages |
created_at | string (date-time) | ✓ | Момент события (UTC) |
idempotencyKey | string (uuid) | — | Ключ идемпотентности; одинаков при повторных доставках, используется для дедупликации |
data | object | ✓ | Данные, специфичные для event_type |
data
| Поле | Тип | Обяз. | Описание |
|---|---|---|---|
originateData | string | ✓ | originateData |
connectedLineNum | string | ✓ | Номер собеседника, с которым установлено соединение (Connected Line); может содержать доп. параметры через * |
userEventType | string | ✓ | Дублирует event_type — тип события на уровне AMI UserEvent |
channel | string | ✓ | Имя канала Asterisk, обрабатывающего вызов (SIP/PJSIP, Local и др.) |
privilege | string | ✓ | Уровень логирования/видимости события в Asterisk AMI (служебное поле) |
exten | string | ✓ | Extension диалплана, на котором сработало событие (для входящих обычно s) |
channelState | number | ✓ | Числовой код состояния Asterisk-канала (см. channelStateDesc) |
isRedirect | string | ✓ | Был ли совершён перевод |
callerIdNum | string | ✓ | Номер вызывающего абонента (Caller ID number) |
systemName | string | ✓ | Идентификатор Asterisk-сервера (номер хаба) |
dateReceived | string | ✓ | Момент получения события (локальное время сервера, человекочитаемый формат) |
context | string | ✓ | Контекст события |
event | string | ✓ | Дублирует event_type — служебное поле Asterisk UserEvent |
calledNumber | string | ✓ | Кому звонят |
timestamp | number | ✓ | Время создания события |
callId | string | ✓ | Идентификатор звонка |
linkedId | string | ✓ | ID связанного звонка |
connectedLineName | string | ✓ | Имя/номер собеседника в Connected Line (см. connectedLineNum) |
dateReceivedAtUTC | string | ✓ | Время получения события Kafka-коннектором в UTC, до микросекунд; дублирует dateReceived в другом формате |
eventType | string | ✓ | Тип события |
internalNumber | string | ✓ | Внутренний номер |
priority | number | ✓ | Приоритет текущего шага диалплана Asterisk |
accountId | number | ✓ | Номер ЛС |
callback | string | ✓ | Признак обратного вызова (callback) |
channelStateDesc | string | ✓ | Текстовая расшифровка channelState (например Up, Ring, Down) |
did | string | ✓ | Номер оператора |
uniqueId | string | ✓ | Уникальный ID call-leg (ноги вызова), формат {systemName}-{timestamp}.{seq} |
vpbxId | string | ✓ | Номер Виртуальной АТС |
✓— обязательное поле;—— необязательное.
Пример: Payload
{
"account_id": 10001,
"event_type": "VpbxOutgoingStart",
"created_at": "2026-07-01T20:58:40.173Z",
"idempotencyKey": "5b133904-6192-49d2-abbc-f95be887fb70",
"data": {
"originateData": "",
"connectedLineNum": "79000000038*E163164",
"userEventType": "VpbxOutgoingStart",
"channel": "SIP/sip-node1-000fa581",
"privilege": "user,all",
"exten": "s",
"channelState": 0,
"isRedirect": "0",
"callerIdNum": "s",
"systemName": "125",
"dateReceived": "Jul 1, 2026, 8:58:40 PM",
"context": "signal-outgoing-call",
"event": "VpbxOutgoingStart",
"calledNumber": "79000000039",
"timestamp": 1782928720,
"callId": "125-1782928719.12193499",
"linkedId": "125-1782928719.12193499",
"connectedLineName": "79000000038",
"dateReceivedAtUTC": "2026-07-01 17:58:40.034264",
"eventType": "VpbxOutgoingStart",
"internalNumber": "9186",
"priority": 11,
"accountId": 10001,
"callback": "0",
"channelStateDesc": "Down",
"did": "79000000038",
"uniqueId": "125-1782928719.12193503",
"vpbxId": "280"
}
}
FwCallStart - ВАТС: Начало переадресации звонка
ВАТС: Начало переадресации звонка
Событие: Начало переадресованного звонка (ВАТС)
Payload: allOf — общий Envelope + данные события.
Envelope
| Поле | Тип | Обяз. | Описание |
|---|---|---|---|
account_id | integer | ✓ | ID аккаунта в системе |
event_type | string | ✓ | Тип события — см. components/messages |
created_at | string (date-time) | ✓ | Момент события (UTC) |
idempotencyKey | string (uuid) | — | Ключ идемпотентности; одинаков при повторных доставках, используется для дедупликации |
data | object | ✓ | Данные, специфичные для event_type |
data
| Поле | Тип | Обяз. | Описание |
|---|---|---|---|
connectedLineNum | string | ✓ | Номер собеседника, с которым установлено соединение (Connected Line); может содержать доп. параметры через * |
userEventType | string | ✓ | Дублирует event_type — тип события на уровне AMI UserEvent |
channel | string | ✓ | Имя канала Asterisk, обрабатывающего вызов (SIP/PJSIP, Local и др.) |
privilege | string | ✓ | Уровень логирования/видимости события в Asterisk AMI (служебное поле) |
dest | string | ✓ | Куда звонили |
exten | string | ✓ | Extension диалплана, на котором сработало событие (для входящих обычно s) |
channelState | number | ✓ | Числовой код состояния Asterisk-канала (см. channelStateDesc) |
callerIdNum | string | ✓ | Номер вызывающего абонента (Caller ID number) |
systemName | string | ✓ | Идентификатор Asterisk-сервера (номер хаба) |
dateReceived | string | ✓ | Момент получения события (локальное время сервера, человекочитаемый формат) |
context | string | ✓ | Контекст события |
callerID | string | ✓ | ID звонящего (номер телефона) |
event | string | ✓ | Дублирует event_type — служебное поле Asterisk UserEvent |
timestamp | number | ✓ | Время создания события |
callId | string | ✓ | Идентификатор звонка |
linkedId | string | ✓ | ID связанного звонка |
callerNumber | string | ✓ | Номер звонящего абонента |
connectedLineName | string | ✓ | Имя/номер собеседника в Connected Line (см. connectedLineNum) |
dateReceivedAtUTC | string | ✓ | Время получения события Kafka-коннектором в UTC, до микросекунд; дублирует dateReceived в другом формате |
eventType | string | ✓ | Тип события |
internalNumber | string | ✓ | Внутренний номер |
priority | number | ✓ | Приоритет текущего шага диалплана Asterisk |
accountId | number | ✓ | Номер ЛС |
channelStateDesc | string | ✓ | Текстовая расшифровка channelState (например Up, Ring, Down) |
did | string | ✓ | Номер телефона |
uniqueId | string | ✓ | Уникальный ID call-leg (ноги вызова), формат {systemName}-{timestamp}.{seq} |
vpbxId | string | ✓ | Номер Виртуальной АТС |
✓— обязательное поле;—— необязательное.
**Пример:** Payload
```json
{
"account_id": 10001,
"event_type": "FwCallStart",
"created_at": "2026-07-01T11:39:09.291Z",
"idempotencyKey": "5b133904-6192-49d2-abbc-f95be887fb70",
"data": {
"connectedLineNum": "79000000003",
"userEventType": "FwCallStart",
"channel": "Local/+79000000012@redirlch-0002dcb4;1",
"privilege": "user,all",
"dest": "79000000012",
"exten": "s",
"channelState": 0,
"callerIdNum": "5189",
"systemName": "125",
"dateReceived": "Jul 1, 2026, 11:39:08 AM",
"context": "vpbx-signal-fw-call",
"callerID": "79000000003",
"event": "FwCallStart",
"timestamp": 1782895148,
"callId": "125-1782895148.11994644",
"linkedId": "125-1782895148.11994644",
"callerNumber": "79000000003",
"connectedLineName": "79000000003",
"dateReceivedAtUTC": "2026-07-01 08:39:08.648879",
"eventType": "FwCallStart",
"internalNumber": "5189",
"priority": 4,
"accountId": 10001,
"channelStateDesc": "Down",
"did": "79000000013",
"uniqueId": "125-1782895148.11994650",
"vpbxId": "280"
}
}
FwCallAnswer - ВАТС: Ответ на переадресованный звонок
ВАТС: Ответ на переадресованный звонок
Событие: Начало ответа на переадресованный звонок
Payload: allOf — общий Envelope + данные события.
Envelope
| Поле | Тип | Обяз. | Описание |
|---|---|---|---|
account_id | integer | ✓ | ID аккаунта в системе |
event_type | string | ✓ | Тип события — см. components/messages |
created_at | string (date-time) | ✓ | Момент события (UTC) |
idempotencyKey | string (uuid) | — | Ключ идемпотентности; одинаков при повторных доставках, используется для дедупликации |
data | object | ✓ | Данные, специфичные для event_type |
data
| Поле | Тип | Обяз. | Описание |
|---|---|---|---|
connectedLineNum | string | ✓ | Номер собеседника, с которым установлено соединение (Connected Line); может содержать доп. параметры через * |
userEventType | string | ✓ | Дублирует event_type — тип события на уровне AMI UserEvent |
channel | string | ✓ | Имя канала Asterisk, обрабатывающего вызов (SIP/PJSIP, Local и др.) |
privilege | string | ✓ | Уровень логирования/видимости события в Asterisk AMI (служебное поле) |
dest | string | ✓ | Куда звонили |
exten | string | ✓ | Extension диалплана, на котором сработало событие (для входящих обычно s) |
channelState | number | ✓ | Числовой код состояния Asterisk-канала (см. channelStateDesc) |
callerIdNum | string | ✓ | Номер вызывающего абонента (Caller ID number) |
systemName | string | ✓ | Идентификатор Asterisk-сервера (номер хаба) |
dateReceived | string | ✓ | Момент получения события (локальное время сервера) |
record | string | ✓ | Наличие записи разговора: 1 — есть, 0 — нет |
context | string | ✓ | Контекст события |
callerID | string | ✓ | ID звонящего (номер телефона) |
event | string | ✓ | Дублирует event_type — служебное поле Asterisk UserEvent |
timestamp | number | ✓ | Время создания события |
callId | string | ✓ | Идентификатор звонка |
linkedId | string | ✓ | ID связанного звонка |
callerNumber | string | ✓ | Номер звонящего абонента |
connectedLineName | string | ✓ | Имя/номер собеседника в Connected Line (см. connectedLineNum) |
dateReceivedAtUTC | string | ✓ | Время получения события Kafka-коннектором в UTC, до микросекунд; дублирует dateReceived |
eventType | string | ✓ | Тип события |
internalNumber | string | ✓ | Внутренний номер |
priority | number | ✓ | Приоритет текущего шага диалплана Asterisk |
accountId | number | ✓ | Номер ЛС |
channelStateDesc | string | ✓ | Расшифровка channelState (например Up, Ring, Down) |
did | string | ✓ | Номер телефона |
uniqueId | string | ✓ | Уникальный ID call-leg, формат {systemName}-{timestamp}.{seq} |
vpbxId | string | ✓ | Номер Виртуальной АТС |
✓— обязательное поле;—— необязательное.
Пример: Payload
{
"account_id": 10001,
"event_type": "FwCallAnswer",
"created_at": "2026-07-01T11:39:16.707Z",
"idempotencyKey": "5b133904-6192-49d2-abbc-f95be887fb70",
"data": {
"connectedLineNum": "79000000003",
"userEventType": "FwCallAnswer",
"channel": "Local/+79000000012@redirlch-0002dcb4;1",
"privilege": "user,all",
"dest": "79000000012",
"exten": "s",
"channelState": 6,
"callerIdNum": "5189",
"systemName": "125",
"dateReceived": "Jul 1, 2026, 11:39:16 AM",
"record": "1",
"context": "vpbx-signal-fw-bridge",
"callerID": "79000000003",
"event": "FwCallAnswer",
"timestamp": 1782895156,
"callId": "125-1782895148.11994644",
"linkedId": "125-1782895148.11994644",
"callerNumber": "79000000003",
"connectedLineName": "79000000003",
"dateReceivedAtUTC": "2026-07-01 08:39:16.536451",
"eventType": "FwCallAnswer",
"internalNumber": "5189",
"priority": 17,
"accountId": 10001,
"channelStateDesc": "Up",
"did": "79000000013",
"uniqueId": "125-1782895148.11994650",
"vpbxId": "280"
}
}
PhoneTransferStart - ВАТС: Перевод звонка с внутреннего номера
ВАТС: Перевод звонка с внутреннего номера
Событие: Переадресация с внутреннего номера
Payload: allOf — общий Envelope + данные события.
Envelope
| Поле | Тип | Обяз. | Описание |
|---|---|---|---|
account_id | integer | ✓ | ID аккаунта в системе |
event_type | string | ✓ | Тип события — см. components/messages |
created_at | string (date-time) | ✓ | Момент события (UTC) |
idempotencyKey | string (uuid) | — | Ключ идемпотентности; одинаков при повторных доставках, используется для дедупликации |
data | object | ✓ | Данные, специфичные для event_type |
data
| Поле | Тип | Обяз. | Описание |
|---|---|---|---|
externalNumber | string | ✓ | Внешний номер |
userEventType | string | ✓ | Дублирует event_type — тип события на уровне AMI UserEvent |
channel | string | ✓ | Имя канала Asterisk (SIP/PJSIP, Local и др.) |
privilege | string | ✓ | Уровень логирования/видимости события в Asterisk AMI |
dest | string | ✓ | Куда совершён перевод номера |
exten | string | ✓ | Extension диалплана, где сработало событие (для входящих обычно s) |
isIncoming | boolean | ✓ | true — входящий звонок, false — исходящий |
channelState | number | ✓ | Код состояния Asterisk-канала (см. channelStateDesc) |
callerIdNum | string | ✓ | Номер вызывающего абонента (Caller ID number) |
systemName | string | ✓ | Идентификатор Asterisk-сервера (номер хаба) |
dateReceived | string | ✓ | Момент получения события (локальное время сервера) |
context | string | ✓ | Контекст события |
from | string | ✓ | Номер звонящего (с внутренним номером оператора) |
callerID | string | ✓ | ID звонящего (номер телефона) |
event | string | ✓ | Дублирует event_type — служебное поле Asterisk UserEvent |
calledNumber | string | ✓ | Номер, на который был совершён звонок |
timestamp | number | ✓ | Время создания события |
callId | string | ✓ | Идентификатор звонка |
linkedId | string | ✓ | ID связанного звонка |
callerNumber | string | ✓ | ID звонящего (номер телефона) |
dateReceivedAtUTC | string | ✓ | Время получения события Kafka-коннектором в UTC, до микросекунд; дублирует dateReceived |
eventType | string | ✓ | Тип события |
priority | number | ✓ | Приоритет текущего шага диалплана Asterisk |
transfereeCallerID | string | ✓ | transfereeCallerID |
accountId | number | ✓ | Номер ЛС |
to | string | ✓ | Кому звонят (с внутренним номером оператора) |
channelStateDesc | string | ✓ | Расшифровка channelState (например Up, Ring, Down) |
callerIdName | string | ✓ | Имя вызывающего абонента (Caller ID name), если передано АТС/оператором |
uniqueId | string | ✓ | Уникальный ID call-leg, формат {systemName}-{timestamp}.{seq} |
vpbxId | string | ✓ | Номер Виртуальной АТС |
✓— обязательное поле;—— необязательное.
Пример: Payload
{
"account_id": 10001,
"event_type": "PhoneTransferStart",
"created_at": "2026-07-01T17:58:47.074Z",
"idempotencyKey": "5b133904-6192-49d2-abbc-f95be887fb70",
"data": {
"externalNumber": "196",
"userEventType": "PhoneTransferStart",
"channel": "Local/167@transfer-context-0002e335;2",
"privilege": "user,all",
"dest": "167",
"exten": "167",
"isIncoming": true,
"channelState": 4,
"callerIdNum": "196",
"systemName": "125",
"dateReceived": "Jul 1, 2026, 5:58:46 PM",
"context": "internal-vpbx",
"from": "196",
"callerID": "196",
"event": "PhoneTransferStart",
"calledNumber": "196",
"timestamp": 1782917926,
"callId": "125-1782917926.12159576",
"linkedId": "125-1782917773.12158887",
"callerNumber": "",
"dateReceivedAtUTC": "2026-07-01 14:58:46.839220",
"eventType": "PhoneTransferStart",
"priority": 59,
"transfereeCallerID": "79000000031",
"accountId": 10001,
"to": "",
"channelStateDesc": "Ring",
"callerIdName": "Ivanova Maria",
"uniqueId": "125-1782917926.12159576",
"vpbxId": "280"
}
}
Также см.:
Каталог событий MCN Telecom - часть 2;
Каталог событий MCN Telecom - часть 3;
Каталог событий MCN Telecom - часть 4;
Каталог событий MCN Telecom - часть 5;
Каталог событий MCN Telecom - часть 6