Hướng dẫn tích hợp JsSIP, lấy CDR, ghi âm, máy nhánh online

I. Thư viện điều kiển cuộc gọi

Sử dụng thư viện JSSIP để lập trình điều khiển cuộc gọi. Chi tiết tham khảo https://jssip.net/documentation/

Thông tin cơ bản (đưc ePacific cung cấp trong email kích hoạt dịch vụ):

  • SIP URI: extension@domain

  • Password: Password của extension

  • Via transport: WSS

  • Websocket URI: wss://sbcwrtchcm.ccall.vn:8080/ws hoặc wss://sbcwrtchn.ccall.vn:8080/ws

Chi tiết như trong hình:

II. Lấy lịch sử cuộc gọi và tệp tin ghi âm

Để lấy được thông tin chi tiết cuộc gọi (CDR), file ghi âm cuộc gọi, máy nhánh online. Ta cần dùng API

API end point

Tất cả các request được submmit thông qua base URL.

HTTP Methods

Tất cả các request được submit thông qua phương thức HTTP POST, "Content-Type" cho phương thức POST là "application/x-www-form-urlencoded" và "application/json"

Authentication

Tất cả các request đều yêu cầu giá trị cho tham số "api_key" và "api_secret", các giá trị này sẽ được ePacific cung cấp.

1. Truy xuất dữ liệu CDR theo khoảng thời gian

Endpoint: https://api.ccall.vn/cdrs/json

Cấu trúc submit request_data (JSON Encoded):

{
"submission" : {
"api_key" : "apikey",
"api_secret" : "apisecret",
"param1" : "value1",
"param2" : "value2",
"paramN" : "valueN"
}
}

Mô tả fields

api_key, api_secret (Bất buộc) : ePacific sẽ cung cấp cặp key này cho khách hàng

param(s) : date_range, hangup_cause, source, destination, cid_name, direction, page, limit

Ví dụ:

date_range: "date_range" : { "from" : "", "to" : "" } có format là "YYYY-MM-DD HH:mm"

cid_name: "Thanh Nguyen"

source: "1001"

destination: "1005"

hangup_cause: "NORMAL_CLEARING"

direction: có 3 giá trị tương ứng là “inbound”, “outbound” và “local” (Nếu trong cấu trúc submit không có param này, hệ thống sẽ truy vấn dựa vào cả 3 giá trị)

page: 1 (số trang hiện tại)

limit: 50 (số dòng cho một trang)

Cấu trúc response data (JSON Encoded):

Không phân trang

Có phân trang

Mô tả fields

"direction" : hướng cuộc gọi

"cid_name" : Caller name, tên người dùng tương ứng với extension

"source" : Caller number (Extension)

"destination" : Destination number (Extension)

"recording" : Hyperlink dùng để tải file ghi âm

"start" : Thời gian bắt đầu thực hiện cuộc gọi

"tta" : Time to Answer, thời điểm destination trả lời tính từ thời gian bắt đầu cuộc gọi (= giây)

"duration" : Khoảng thời gian thoại (có format theo hh:mm:ss)

"pdd" : Post Dial Delay

"mos" : Mean Opinion Score

"status" : Hangup cause

“paging”: thông tin về phân trang

"txtdesc": một chuỗi mô tả ngắn gọn

"page_current": số trang hiện tai đang chọn

"limit": số dòng giới hạn cho 1 trang

"record_count": tổng số dòng

"page_count": tổng số trang

"prev_page": trang trước (true là có trang trước, ngược lại là false)

"next_page": trang sau (true là có trang sau, ngược lại là false)

Danh sách giá trị Hangup cause:

NORMAL_CLEARING ORIGINATOR_CANCEL BLIND_TRANSFER LOSE_RACE NO_ANSWER NORMAL_UNSPECIFIED NO_USER_RESPONSE NO_ROUTE_DESTINATION SUBSCRIBER_ABSENT NORMAL_TEMPORARY_FAILURE ATTENDED_TRANSFER PICKED_OFF USER_BUSY CALL_REJECTEDINVALID_NUMBER_FORMAT

NETWORK_OUT_OF_ORDER DESTINATION_OUT_OF_ORDER RECOVERY_ON_TIMER_EXPIRE MANAGER_REQUEST MEDIA_TIMEOUT UNALLOCATED_NUMBER NONE EXCHANGE_ROUTING_ERROR ALLOTTED_TIMEOUT CHAN_NOT_IMPLEMENTED INCOMPATIBLE_DESTINATION USER_NOT_REGISTERED SYSTEM_SHUTDOWN MANDATORY_IE_MISSING

2. Truy xuất dữ liệu CDRs theo “Call ID”

Cấu trúc submit request_data (JSON Encoded):

{
"submission" : {
"api_key" : "apikey",
"api_secret" : "apisecret",
"call_id" : "value"
}
}

Cấu trúc response data (JSON Encoded):

3. Lấy danh sách Extension đang Registered (Online):

Endpoint: https://api.ccall.vn/ext_reg/json

Cấu trúc submit request_data (JSON Encoded):

{
"submission" : {
"api_key" : "apikey",
"api_secret" : "apisecret"
}
}

Mô tả fields

api_key, api_secret (Bất buộc) : ePacific sẽ cung cấp cặp key này cho khách hàng

Cấu trúc response data (JSON Encoded):

Mô tả

Ví dụ trong hệ thống có 6 Extension từ 100 đến 106. Sau khi gọi API kết qua trả về như trong hình trên là hiện tại có 2 Ext đang online là 100 và 101

Hãy liên lạc với chúng tôi qua số điện thoại: 1900 1563 hoặc qua email: support@epacific.com.vn để được tư vấn chi tiết.