Hangup cause codes
Mã hangup_cause xuất hiện trong response CDR + payload webhook (pbx.call.hangup, pbx.cdr.created). Mã theo chuẩn Q.850 của ITU-T, được Zorio PBX mapping từ SIP response.
Mã phổ biến nhất
hangup_cause | Ý nghĩa | Tình huống thực tế |
|---|---|---|
NORMAL_CLEARING | Cuộc gọi kết thúc bình thường | 1 trong 2 bên cúp máy chủ động sau khi nói chuyện xong |
NO_ANSWER | Hết thời gian đổ chuông, không ai nhấc | Khách không nghe máy / không tới điện thoại |
USER_BUSY | Số bị bận | Khách đang trong cuộc gọi khác |
CALL_REJECTED | Số đích từ chối nhận cuộc | Khách bấm "từ chối" trên điện thoại |
ORIGINATOR_CANCEL | Agent / hệ thống huỷ trước khi nhấc | Agent đổi ý cúp trong lúc đang đổ chuông |
RECOVERY_ON_TIMER_EXPIRE | Cuộc gọi treo do timeout SIP | Mạng/PBX có vấn đề kỹ thuật |
Mã liên quan tới định tuyến
hangup_cause | Ý nghĩa |
|---|---|
UNALLOCATED_NUMBER | Số không tồn tại trong mạng (vd 1XX, đầu số fake) |
NO_ROUTE_DESTINATION | Không có route gọi tới đích (vd chưa cấu hình trunk) |
NO_ROUTE_TRANSIT_NET | Trunk không nhận cuộc gọi |
DESTINATION_OUT_OF_ORDER | Số đích offline |
INVALID_NUMBER_FORMAT | Số sai format (vd thừa ký tự, sai prefix) |
FACILITY_REJECTED | Telco từ chối route |
Mã liên quan tới chất lượng cuộc gọi
hangup_cause | Ý nghĩa |
|---|---|
MEDIA_TIMEOUT | RTP packet ngừng đến trong N giây (mạng đứt) |
BEARERCAPABILITY_NOTAVAIL | Codec không tương thích giữa 2 bên |
INCOMPATIBLE_DESTINATION | Khác chuẩn (vd analog ↔ SIP không bridge được) |
EXCHANGE_ROUTING_ERROR | Lỗi định tuyến của telco |
Mã liên quan tới chính sách
hangup_cause | Ý nghĩa |
|---|---|
CALL_REJECTED | Bị reject cứng (vd DNC list, blacklist) |
INTERWORKING | Không tương thích giao thức (vd ISDN ↔ SIP) |
BEARERCAPABILITY_NOTAUTH | Không có quyền dùng dịch vụ này |
CHANNEL_UNACCEPTABLE | Channel không sẵn sàng |
Mã liên quan tới quá tải
hangup_cause | Ý nghĩa |
|---|---|
NORMAL_TEMPORARY_FAILURE | Lỗi tạm thời, thử lại sau |
SWITCH_CONGESTION | Hệ thống quá tải, không xử lý được thêm |
REQUESTED_CHAN_UNAVAIL | Hết channel rảnh ở trunk |
RESOURCE_UNAVAILABLE | Hết tài nguyên (vd SBC) |
Mã liên quan tới hệ thống nội bộ
hangup_cause | Ý nghĩa |
|---|---|
LOSE_RACE | Mất race khi 2 cuộc gọi cùng tới 1 số (chỉ 1 win) |
MANAGER_REQUEST | Admin / supervisor cúp máy thủ công qua API |
SYSTEM_SHUTDOWN | Hệ thống đang shutdown |
BLIND_TRANSFER | Cuộc gọi bị chuyển blind sang số khác |
ATTENDED_TRANSFER | Cuộc gọi bị chuyển attended sang số khác |
PICKED_OFF | Cuộc gọi bị 1 ext khác bắt qua hàng đợi |
Mapping sang trường result
Field result trong CDR phân loại đơn giản hơn để CRM dễ thống kê. Quy tắc map:
| Điều kiện | result |
|---|---|
hangup_cause = NORMAL_CLEARING + billsec > 0 | answered |
hangup_cause = NORMAL_CLEARING + billsec = 0 | no_answer (case đặc biệt: agent cúp ngay khi nhấc) |
hangup_cause = NO_ANSWER | no_answer |
hangup_cause = USER_BUSY | busy |
hangup_cause = CALL_REJECTED | rejected |
hangup_cause = ORIGINATOR_CANCEL | cancelled |
| Cuộc gọi tới hộp thư thoại | voicemail |
| Còn lại (lỗi mạng, định tuyến, hệ thống) | failed |
Khi gặp hangup_cause lạ
Nếu bạn thấy mã không có trong bảng trên (vd BIB_NA, XXX_ZZZ), đó có thể là:
- Mã mở rộng của telco cụ thể (Viettel, Mobifone, ...).
- Lỗi hiếm gặp ở hạ tầng — báo team support Zorio kèm
call_uuidđể truy nguyên.
Tài liệu chi tiết Q.850: ITU-T Q.850.
