更新时间:2023-09-27 GMT+08:00

生成话单和录音索引

场景描述

调用该API,则会根据条件生成话单文件和录音索引文件。文件生成后,文件名称(billFileName)会通过回调的方式发送到callBackURL携带的回调地址上。

回调callBackURL需要鉴权,详见C2 监控/系统外呼/话单/知识库类接口鉴权方式

使用说明

  • 前提条件
    • 开发者环境已经构建,能够正常进行呼叫,开发者有独立服务器并且已经绑定回调地址(callBackURL)。
    • 企业帐号(租间ID:accountId)、座席ID(agentId)以及话单ID(callId)为可选组合参数,可自由组合生成话单和录音索引文件。如果三者均没有传入,则生成指定时间段内该开发者下相应的数据记录。
    • 已通过鉴权(Authorization)、获得接入地址。
    • 请检查CC-FS配置文件“/home/ccfsapp/webapps/ccfsapp/WEB-INF/classes/config/servicecloud.base.properties”“aicc.ssl.trustAll”是否配置为false,请配置为false,然后参考下面步骤放置证书。
      1. 以运维用户登录CC-FS的服务器,切换到root用户下。
        su - root
      2. 将CC-FS生成索引文件通知回调地址加载的第三方证书上传至AICC的truststore.jks证书的同一目录中,目录为:“$HOME/conf”,具体目录请以实际环境为准。
      3. 修改上传的第三放证书的属组。
        chown ccfsapp:ccfsapp XXX.jks
      4. 执行下面的命令将第三方证书导入到truststore.jks中。
        keytool -import -alias xxx -file XXX.jks -keystore truststore.jks

        请依据界面提示输入truststore.jks证书密码。

      5. 在环境上删除XXX.jks证书。
      6. 重启CC-FS。

        进入“/home/ccfsapp/bin”目录,执行如下命令。

        ./shutdown.sh;./startup.sh
  • 使用限制

    开发者只能访问该帐号下的数据信息,开发者帐号(appId)和企业帐号(租间ID:accountId)必须对应。

    开发者账号(appId)包含在鉴权认证字符串中,详见C2 监控/系统外呼/话单/知识库类接口鉴权方式

接口方法

POST

接口URI

https://ip:port/CCFS/resource/ccfs/queryBillData

其中,ip为CC-FS安装的服务器IP地址,port为CC-FS的HTTPS端口号。

如果经过NSLB路由,ip为NSLB的服务器IP地址,port为CC-FS服务在NSLB映射的HTTPS端口号。

请求说明

表1 请求Headers参数说明

序号

名称

参数类型

是否必选

默认值

说明

1

Content-Type

String

True

固定填 application/json; charset=UTF-8。

2

Authorization

String

True

生成方式参见C2 监控/系统外呼/话单/知识库类接口鉴权方式

表2 请求Body中request参数说明

序号

名称

参数类型

是否必选

默认值

说明

1

version

String(1-32)

True

2.0

协议版本。当前固定值为2.0。

表3 请求Body中msgBody参数说明

序号

名称

参数类型

是否必选

默认值

说明

1

beginTime

String

True

话单和录音记录的起始时间,为租间所在时区的时间,起始时间和截止时间需要做范围限制,最大为3天内。格式为:yyyy-MM-dd HH:mm:ss。

2

endTime

String

True

话单和录音记录的截止时间,为租间所在时区的时间,起始时间和截止时间需要做范围限制,最大为3天内。格式为:yyyy-MM-dd HH:mm:ss。

3

accountId

String(1-20)

False

企业帐号(租间ID)

4

agentId

String(1-20)

False

座席ID

5

callId

String(1-25)

False

呼叫标识,可从已调用的“下载话单和录音索引”返回的文件中获取。

6

callerNo

String(1-25)

False

主叫号码

7

calleeNo

String(1-25)

False

被叫号码,当calleeNo2不存在时为被叫号码,当calleeNo2存在时为主叫号码。

8

calleeNo2

String(1-25)

False

被叫号码2

9

dataType

String(1-11)

True

需生成的数据记录文件类型。

  • call:话单记录
  • record:录音记录索引
  • call_record:话单记录和录音记录索引

10

callBackURL

String

True

回调地址。平台生成数据记录文件后将billFileName返回到该地址。

响应说明

调用本接口获得响应分为两部分:

(1)被调用方响应

(2)调用方响应,即回调第三方的响应;

  • 被调用方响应:

    response响应消息参数说明详见表5-响应消息参数说明

  • 调用方响应(回调第三方响应):该响应由request,msgBody两部分组成。

    request包含响应版本号version(默认2.0)。

    msgBody由responseId(话单文件名组成部分),billName(待下载话单zip名称),accountId(租间ID)组成。响应消息resultData参数说明见表5

表4 响应消息参数说明

序号

名称

参数类型

说明

1

resultCode

String

请求返回的结果码,

  • 0:成功
  • 非0:失败。

2

resultDesc

String

请求结果描述,详见错误码参考

3

resultData

Object

请求响应数据,参数说明详见表6-响应消息resultData参数说明。

4

response

Object

请求结果对象,参数说明详见表6

不推荐使用,为兼容老版本保留字段。

表5 响应消息resultData参数说明

序号

名称

参数类型

说明

3.1

responseId

String

调用本接口成功后,生成的唯一标识,是文件名称的组成部分。

表6 响应消息response参数说明

序号

名称

参数类型

说明

4.1

version

String(1-32)

协议版本,如2.0。

4.2

resultCode

String(1-32)

请求返回的结果码,详见错误码参考

4.3

resultMsg

String

请求结果描述。

表7 回调返回消息请求Body中msgBody参数说明

序号

名称

参数类型

说明

1

responseId

String

调用本接口成功后,生成的唯一标识,是文件名称的组成部分。

2

billFileName

String

话单和录音索引文件名称。格式:yyyyMMdd_{responseId}.zip。

例如:调用本接口的日期为2018-07-02,获取到的responseId为9239cb50-a838-4bb0-ab50-3441bf089446,则该参数值为20180702_9239cb50a8384bb0ab503441bf089446.zip。

3

accountId

String

企业帐号(租间ID),请求参数中带的企业账号,用来将文件名和企业进行关联,如果请求参数中未填accountId,则不会返回该值。

报文样例

  • 请求头
    POST /CCFS/resource/ccfs/queryBillData HTTP/1.1
    Authorization: auth-v2/ak/2018-07-02T02:42:49Z/content-length;content-type;host
    /7a8fb9d620ee488******************85c5df0cce3c6a253
    Accept: */*
    Content-Type: application/json;charset=UTF-8
    Content-Length: 297
  • 请求参数
    {
        "request": {
            "version": "2.0"
        },
        "msgBody": {
            "beginTime": "2018-06-29 10:42:49",
            "endTime": "2018-07-02 10:42:49",
            "accountId": "",
            "agentId": "",
            "callId": "",
            "dataType": "call_record",
            "callBackURL": "https://10.57.118.171:8000"
        }
    }
  • 响应头
    HTTP/1.1 200 OK
    Content-Type: application/json;charset=UTF-8
    Date: Mon, 02 Jul 2018 02:43:03 GMT
  • 响应示例
    {
        "resultData": {
            "responseId": "9239cb50a8384bb0ab503441bf089446"
        },
        "resultCode": "0",
        "resultDesc": "success"
    }
  • 呼叫中心向回调地址返回的消息示例

    消息头:

    POST / HTTP/1.1
    Accept: */*
    Content-Type: application/json;charset=UTF-8
    Authorization: auth-v2/ak/2018-07-02T02:43:03Z/content-length;content-type;host
    /c5bd683******************9def5747bd572c28
    Host: 10.57.118.171
    Content-Length: 208

    消息参数:

    {
        "request": {
            "version": "2.0"
        },
        "msgBody": {
            "responseId": "9239cb50a8384bb0ab503441bf089446",
            "billFileName": "20180702_9239cb50a8384bb0ab503441bf089446.zip",
            "accountId": ""
        }
    }