Популярные статьи
- Почему скорость 4G/LTE интернета может быть низкой?
1636 просмотра
- 💰 Как проверить баланс
1123 просмотра
- Как правильно набирать номер телефона?
681 просмотра
- 🔌📞Как подключить телефонный номер к ВАТС
451 просмотра
Каталог событий MCN Telecom — Голосовой робот
Голосовой робот
События (вебхуки и триггеры), связанные с работой Голосового робота.
Единый Envelope используется для всех событий: один channel соответствует одному event_type.
Содержание
Также см.:
«Каталог событий MCN Telecom — Виртуальная АТС (Звонки ВАТС, Переадресация и внутренние номера)»;
«Каталог событий MCN Telecom — Виртуальная АТС (Очереди, Другие события ВАТС)»;
«Каталог событий MCN Telecom — Работа с речью»;
Общий формат события
Все события используют общую обёртку Envelope:
| Поле | Тип | Обяз. | Описание |
|---|---|---|---|
account_id | integer | ✓ | ID аккаунта в системе |
event_type | string | ✓ | Тип события |
created_at | string (date-time) | ✓ | Момент события (UTC) |
idempotencyKey | string (uuid) | — | Ключ идемпотентности; одинаков при повторных доставках и используется для дедупликации |
data | object | ✓ | Данные, специфичные для event_type |
✓— обязательное поле;—— необязательное.
Для каждого события приведены описание полей data и пример Payload.
Звонок объекту
VpbxRobocallObject - Голосовой робот: звонок
Событие: Событие из голосового робота
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) |
taskContactsId | string | ✓ | Номер, к которому привязано текущее задание робоколла |
robocallId | string | ✓ | Идентификатор робоколла |
userEventType | string | ✓ | Дублирует event_type — тип события AMI UserEvent |
channel | string | ✓ | Имя канала Asterisk (SIP/PJSIP, Local и др.) |
privilege | string | ✓ | Уровень логирования/видимости события в Asterisk AMI |
exten | string | ✓ | Extension диалплана, где сработало событие |
objectType | string | ✓ | Тип объекта (например did) |
channelState | number | ✓ | Код состояния Asterisk-канала (см. channelStateDesc) |
callerIdNum | string | ✓ | Номер вызывающего абонента (Caller ID number) |
systemName | string | ✓ | ID Asterisk-сервера (номер хаба) |
dateReceived | string | ✓ | Момент получения события (локальное время сервера) |
context | string | ✓ | Контекст события |
event | string | ✓ | Дублирует event_type — служебное поле Asterisk UserEvent |
calledNumber | string | ✓ | Номер вызывающей стороны |
objectId | string | ✓ | Идентификатор объекта |
timestamp | number | ✓ | Время создания события |
callId | string | ✓ | Идентификатор звонка |
linkedId | string | ✓ | ID связанного звонка |
callerNumber | string | ✓ | Номер звонящего абонента |
dateReceivedAtUTC | string | ✓ | Время получения Kafka-коннектором в UTC, до микросекунд |
eventType | string | ✓ | Тип события |
priority | number | ✓ | Приоритет текущего шага диалплана Asterisk |
accountId | number | ✓ | Номер ЛС |
channelStateDesc | string | ✓ | Расшифровка channelState (например Up, Ring, Down) |
callerIdName | string | ✓ | Имя вызывающего абонента, если передано АТС/оператором |
taskId | string | ✓ | Идентификатор задачи робоколла |
uniqueId | string | ✓ | Уникальный ID call-leg, формат {systemName}-{timestamp}.{seq} |
vpbxId | string | ✓ | Номер Виртуальной АТС |
✓— обязательное поле;—— необязательное.
Пример: Payload
{
"account_id": 10001,
"event_type": "VpbxRobocallObject",
"created_at": "2026-07-01T16:50:21.801Z",
"idempotencyKey": "5b133904-6192-49d2-abbc-f95be887fb70",
"data": {
"originateData": "",
"taskContactsId": "26181272",
"robocallId": "9",
"userEventType": "VpbxRobocallObject",
"channel": "Local/s@autodial-client-leg-0002e24c;1",
"privilege": "user,all",
"exten": "s",
"objectType": "ivr",
"channelState": 6,
"callerIdNum": "79000000041",
"systemName": "125",
"dateReceived": "Jul 1, 2026, 4:50:21 PM",
"context": "autodial-object-leg",
"event": "VpbxRobocallObject",
"calledNumber": "79000000041",
"objectId": "51325",
"timestamp": 1782913821,
"callId": "125-1782913817.12136236",
"linkedId": "125-1782913817.12136235",
"callerNumber": null,
"dateReceivedAtUTC": "2026-07-01 13:50:21.438913",
"eventType": "VpbxRobocallObject",
"priority": 32,
"accountId": 10001,
"channelStateDesc": "Up",
"callerIdName": "Autodialer",
"taskId": "17227",
"uniqueId": "125-1782913817.12136235",
"vpbxId": "280"
}
}
Звонок клиенту
VpbxRobocallClient - Событие из голосового робота
Событие: Событие из голосового робота
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
| Поле | Тип | Обяз. | Описание |
|---|---|---|---|
callId | string | ✓ | Идентификатор звонка |
originateData | string | ✓ | Данные инициации звонка (originateData) |
linkedId | string | ✓ | ID связанного звонка |
callerNumber | string | ✓ | Номер звонящего абонента |
userEventType | string | ✓ | Дублирует event_type — тип события AMI UserEvent |
dateReceivedAtUTC | string | ✓ | Время получения события Kafka-коннектором в UTC, до микросекунд |
didId | string | ✓ | Номер контакта |
channel | string | ✓ | Имя канала Asterisk (SIP/PJSIP, Local и др.) |
privilege | string | ✓ | Уровень логирования/видимости события в Asterisk AMI |
eventType | string | ✓ | Тип события |
priority | number | ✓ | Приоритет текущего шага диалплана Asterisk |
exten | string | ✓ | Extension диалплана, где сработало событие (для входящих обычно s) |
channelState | number | ✓ | Код состояния Asterisk-канала (см. channelStateDesc) |
accountId | number | ✓ | Номер ЛС |
systemName | string | ✓ | ID Asterisk-сервера (номер хаба) |
dateReceived | string | ✓ | Момент получения события (локальное время сервера) |
context | string | ✓ | Контекст события |
channelStateDesc | string | ✓ | Расшифровка channelState (например Up, Ring, Down) |
event | string | ✓ | Дублирует event_type — служебное поле Asterisk UserEvent |
calledNumber | string | ✓ | Номер вызывающей стороны |
uniqueId | string | ✓ | Уникальный ID call-leg, формат {systemName}-{timestamp}.{seq} |
vpbxId | string | ✓ | Номер Виртуальной АТС |
timestamp | number | ✓ | Время создания события |
✓— обязательное поле;—— необязательное.
Пример: Payload
{
"account_id": 10001,
"event_type": "VpbxRobocallClient",
"created_at": "2026-07-01T17:30:17.949Z",
"idempotencyKey": "5b133904-6192-49d2-abbc-f95be887fb70",
"data": {
"callId": "125-1782916217.12150226",
"originateData": "",
"linkedId": "125-1782916217.12150225",
"callerNumber": null,
"userEventType": "VpbxRobocallClient",
"dateReceivedAtUTC": "2026-07-01 14:30:17.736215",
"didId": "4511",
"channel": "Local/s@autodial-client-leg-0002e2ce;2",
"privilege": "user,all",
"eventType": "VpbxRobocallClient",
"priority": 28,
"exten": "s",
"channelState": 4,
"accountId": 10001,
"systemName": "125",
"dateReceived": "Jul 1, 2026, 5:30:17 PM",
"context": "autodial-client-leg",
"channelStateDesc": "Ring",
"event": "VpbxRobocallClient",
"calledNumber": "79000000040",
"uniqueId": "125-1782916217.12150226",
"vpbxId": "280",
"timestamp": 1782916217
}
}