## 系统回调
>[info] **功能说明**
> 业务系统可以根据话单(即通话记录)制作各种统计报表,如座席工作量,电话接通率,计费,录音文件及通话记录绑定客户,录音文件及通话记录绑定案件等。
> 话单可以通过以下形式获取到;
> 1:接收CTI平台的http回调(业务系统需要提供接收回调的http或https接口);
> 2:通过callid查询(点击外呼时会返回callid);
> 3:消费redis消息;
> 4:消费cdr日志文件;
> 5:查询CTI系统数据库(mysql);
* **回调请求地址**
```
提示:是CTI平台POST请求callbackDomain这个URL地址,所以需要保证callbackDomain真实有效。
```
* **提交数据**
CTI平台向callbackDomain提交的数据为json字符串格式,参数如下:
| 参数 | 类型 | 描述 |
| --- | --- | --- |
| callid | string | 本次通话的唯一uuid。|
| start_stamp | datetime | 通话开始时间。 |
| answer_stamp | datetime | 被叫应答时间。|
| end_stamp | datetime | 通话结束时间。|
| billsec | int | 呼叫时长。|
| ring_duration | int | 座席分机振铃时长,呼入或API外呼有效(API外呼是系统拨打座席分机,分机振铃,座席摘机,系统才拨打外线号码)。|
| ext_duration | int | 座席分机通话时长。|
| callfrom | string | 主叫号码。|
| callto | string | 被叫号码。|
| type | string | 呼叫方向:inbound,outbound。|
| callroter | string | 表示本次呼叫是哪里发起的呼叫,如:API外呼,使用话机直接拨号,语音通知(api,dial,voc,auto)。|
| hangup_cause | string | 挂机原因。|
| recording | string | 录音文件名。|
| trunk_name | string | 本次通话使用的中继 |
| hangup_firstin | string | 座席和外线谁先挂机(agent/customer)。|
| rtp_use_codec | string | 本次通话使用的语音编码,如G711,G729等。|
| data | obj | json对象,该值是API外呼或者语音通知提交的data参数值,原样回调,方便开发者与业务数据匹配或者制作统计报表。|
* **响应参数**
| 参数 | 类型 | 描述 |
| --- | --- | --- |
| status | string | 请求结果:success:成功。failed:失败。|
>[warning] **提示**
> 响应参数没有格式要求,但响应参数会记录到数据库话单表中,长度不能超过200个字符。
* **响应示例**
```
{
"status": "success"
}
```