华为云用户手册

  • 响应说明 响应状态码: 200 表3 响应体参数 序号 名称 参数类型 是否必选 说明 1.1 retCode string True 0:成功,其他为失败 1 :添加外呼任务失败,外呼数据库中可能已存在相同外呼任务 2 :呼叫数据信息 3 :未查询出呼叫流水号字段 5 :主被叫或外显号码格式不符 6 :VDN不可用 8 :主叫号码不在租户所分配的移动座席使用的软电话号码范围内 9 :callBackUrl不符合条件 16 :试用租户的座席侧号码未在白名单内 21 :试用租户一键双呼超过每天10次限制 针对ITA双呼还有一些retCode,请参见表4 1.2 retMsg string True 失败原因的描述 1.3 result object False 返回结果 1.3.1 callSerialNo number False 呼叫流水号 表4 针对ITA双呼的retcode说明 retcode retMsg 说明 90100100 Invalid Input Parameter 请求报文不正确。如缺少参数或者不支持的参数 90100200 Auth Failed 请求的来源或者请求的签名未通过校验 90100300 Bad Request 错误请求 90100400 Not found 请求资源不存在 90100600 Internal Server Error 系统内部错误 90102001 Insufficient Balance 额度不足 90102002 Request Restriction 请求限制 90104001 Insufficient Permission 权限不足 90104003 Request Forbidden 请求被禁止 90104004 Service Unavailable 不支持的业务功能或者未实现 90104008 Service Process Failure 业务处理超时或者处理失败 90104029 Too Many Requests 请求过多 90106001 Binding relationship already exists 小号绑定关系已存在 90106002 Binding relationship not exists 小号绑定关系不存在 90106003 Insufficient Number resources 小号号码池资源不足 90106004 No corresponding number found 未找到可用小号 90106005 Inconsistent binding data 小号绑定数据不一致 90106006 Other Error 小号其他原因导致错误 90106010 Policy Forbid 策略禁止 90106011 Caller Forbid 主叫限制 90106012 Callee forbid 被叫限制 响应状态码: 400 错误的请求:请检查请求路径及参数。 响应状态码: 401 未授权:1.请确认是否购买了相关服务。2.请联系客服人员检查您账号的当前状态。 响应状态码: 404 请求的内容未找到:请检查请求的路径。 响应状态码: 500 业务失败:请依次确认您请求中各参数的取值。
  • 报文样例 请求头: x-app-key:9******************************3 Authorization:Bearer e******************************e Content-Type:application/json 请求参数: { "caller": "88889050", "called": "88889060", "agentWorkNo": "", "callerPresent": "640003", "agentPresent": "640060", "callData": "333333" } 响应头: { "connection": "keep-alive", "content-type": "application/json;charset=UTF-8" } 响应参数: { "result": { "callSerialNo": "1771078210739978242" }, "retCode": "0", "retMsg": "Created successfully." }
  • 请求说明 表1 请求头参数 序号 名称 参数类型 是否必选 说明 1 X-APP-Key string False appKey字段,用户标识 2 Authorization string True 鉴权字段,内容格式为: Bearer +tokenByAKSK接口的返回值中AccessToken(Bearer后有空格) 表2 请求体参数 序号 名称 参数类型 是否必选 说明 1 caller string True 主叫号码,客户经理手机号码,或是软电话号码 长度限制:string(32) 2 called string True 被叫号码 长度限制:string(32) 3 agentWorkNo decimal False 发起双呼的座席的工号。 长度限制:decimal(5) 4 callData string False 呼叫数据 长度限制:string(1024) 说明: ITA双呼不支持callData字段。 5 callerPresent string False 用户侧主叫显示号码,用户看到的主叫号码,不携带的情况下默认采用租间的接入码,携带的情况下该号码必须传接入码。如果需要传非接入码号码,请联系运维人员开通主叫透显特性,该特性开通后号码校验规则为:接入码或者11-14位的数字。 说明: ITA双呼不支持callerPresent字段。 6 agentPresent string False 座席侧主叫显示号码,客户经理看到的主叫号码,不携带的情况下默认采用租间的接入码,携带的情况下该号码必须传接入码。如果需要传非接入码号码,请联系运维人员开通主叫透显特性,该特性开通后号码校验规则为:接入码或者11-14位的数字。 说明: ITA双呼不支持agentPresent字段。 7 callBackUrl string False 此参数请采用BASE64编码进行加密。 此字段用于设置客户接收状态上报的挂机回调URL。 云客服CEC平台将业务触发过程中通话的状态信息推送至此服务器,客户服务器根据通话状态信息确定用户状态。 URL可填写为https://IP:Port或 域名 ,推荐使用域名,支持http和https。http为不安全协议,请谨慎使用。且该域名对应多个服务器,避免单点故障无法接收通知。 URL只能由大小写字母(a-z、A-Z),数字(0-9), - : . / _ # ? &组成,不支持其它字符。 回调URL的域名或IP端口已通过系统管理员加入手机客服回调的地址白名单中。 须知: 如果入参callBackUrl不生效,可能是因为您所在的云客服环境接口未正常升级,请联系运管理员确认当前的发布态的API名称是否为createCall_kugui,如果不是,则暂时不能使用callBackUrl入参。
  • 请求说明 表1 请求头参数 序号 名称 参数类型 是否必选 说明 1 X-APP-Key string False appKey字段,用户标识,请联系运营人员获取appKey 2 Authorization string True 鉴权字段,内容格式为: Bearer +tokenByAKSK接口的返回值中AccessToken(Bearer后有空格) 表2 请求体参数 序号 名称 参数类型 是否必选 说明 1.1 id string True 被叫ID 1.2 devicetype integer True 设备类型;1:技能队列 3:IVR 1.3 deviceId integer True 目前设备id(技能队列skillId、IVR的id)
  • 报文样例 请求头: Content-Type:application/json Authorization:Bearer XXXXXXXXXXXXXXXXXXXXXXX X-APP-Key:XXXXXXXXXXXXXXXXXXXXXXX 请求参数: { "id": "1125397061153369092", "devicetype": 1, "deviceId": 1 } 响应参数: { "returnCode": "0", "description": "data update success" }
  • 响应说明 响应状态码: 200 表3 响应体参数 序号 名称 参数类型 是否必选 说明 1.1 returnCode string False 返回码 0:成功 其他:失败 1.2 description string False 描述 响应状态码: 400 错误的请求:请检查请求路径及参数 响应状态码: 401 未授权:1. 请确认是否购买了相关服务。 2. 请联系客服人员检查您账号的当前状态。 响应状态码: 403 鉴权失败 响应状态码: 404 请求的内容未找到:请检查请求的路径。 响应状态码: 500 业务失败:请依次确认您请求中各参数的取值。
  • 报文样例 场景描述:第三方请求鉴权 请求头: X-APP-Key: b*************c7b Authorization: Bearer 1fea*************1d6a15 Content-Type: application/json 请求参数: { "userId": "XXXXXXXXX", "userName": "XXXXXXXX", "channelId": "XXXXXXXXXXXX", "locale": "zh" } 响应参数: { "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" }
  • 响应说明 响应状态码: 200 表4 applyTokenRspBody参数结构 序号 名称 参数类型 说明 1.1 token string 生成的token,后续发起其他请求时,需在Header中将该值赋给ccmessaging-token。 说明: 该Token有1小时有效期,如果系统返回鉴权失败(401)时,需要重新使用applyToken获取新Token。 在会话期间内,Token失效,AICC会自动在当次请求时返回新Token,企业需要自行在Header中更新ccmessaging-token的取值。 1.2 resultCode string 结果码 0:成功 1:失败 1.3 resultDesc string 结果描述 当前暂时没有返回。 响应状态码: 400 错误的请求:请检查请求路径及参数。 响应状态码: 401 未授权:1.请确认是否购买了相关服务。2.请联系客服人员检查您账号的当前状态。 响应状态码: 404 请求的内容未找到:请检查请求的路径。 响应状态码: 500 业务失败:请依次确认您请求中各参数的取值。
  • 报文样例 请求头 POST /CCFS/resource/ccfs/downloadBillFile HTTP/1.1 Authorization: auth-v2/ak/2018-07-02T02:43:08Z/content-length;content-type;host /ae066c2f5d******************13a0afc161cb7e66f5d Accept: */* Content-Type: application/json;charset=UTF-8 Content-Length: 193 请求参数 { "request": { "version": "2.0" }, "msgBody": { "billFileName": "20180702_9239cb50a8384bb0ab503441bf089446.zip" } }
  • 请求说明 表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 billFileName String(1-49) True 无 话单和录音索引文件名称,已调用“生成话单和录音索引”获取。 格式:yyyyMMdd_{responseId}.zip。 例如:已调用“生成话单和录音索引”接口,调用“生成话单和录音索引”接口的日期为2018-07-02,获取到的录音索引responseId为9239cb50a8384bb0ab503441bf08944,则该参数值为20180702_9239cb50a8384bb0ab503441bf089446.zip。
  • 响应说明 当调用本接口响应成功,则从httpresponse消息中获取文件的二进制数据生成话单文件,文件后缀名为.zip,文件中各参数定义参考话单录音索引文件定义,响应中content-type字段为Application/Octet-stream;charset=UTF-8。 当调用本接口响应失败,则返回相应的错误码信息,错误码响应数据结构请查看表4,resultData为保留字段,默认为空字符串。 表4 响应消息参数说明 序号 名称 参数类型 说明 1 resultCode String 请求返回的结果码,详见错误码参考。 2 resultDesc String 请求结果描述。 3 resultData Object 请求响应数据 4 response Object 请求结果对象,参数说明详见表5 不推荐使用,为兼容老版本保留字段。 表5 响应消息response参数说明 序号 名称 参数类型 说明 4.1 version String(1-32) 协议版本,如2.0。 4.2 resultCode String(1-32) 请求返回的结果码。 4.3 resultMsg String 请求结果描述。
  • 报文样例 消息头 Content-Type:application/json; charset=UTF-8 Guid:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx.AgentGateway1 请求参数 { "workNo": "49999", "skills": [ 10, 25 ] } 响应参数 { "message": "", "retcode": "0", "result": {} }
  • 请求说明 消息头 表2 请求头参数说明 序号 名称 参数类型 是否必选 说明 1 Content-Type string True 消息主体编码方式,缺省值:application/json; charset=UTF-8 2 Guid string True 静态鉴权(AUTHMODE = 1)签入接口返回的Guid;动态鉴权(AUTHMODE = 2)轮询事件接口返回的Guid。 消息体 表3 消息体参数说明 序号 名称 参数类型 是否必选 说明 1 workNo string False 指定的座席工号 2 skills array False 技能队列ID的数组,数组长度最大1000
  • 报文样例 请求头: Content-Type:application/json X-APP-KEY:XXXXXXXXXXXXXXXXXXXXXXX Authorization:Bearer XXXXXXXXXXXXXXXXXXXXXXX 请求参数: { "limit": "10", "offset": 0 } 响应参数: { "returnCode": "0", "total": 1, "data": [ { "skillId": 1, "maxAgentWrapupTime": 5, "maxWaitTime": 60, "name": "defaultVideoSkill", "mediaTypeId": 19, "description": "2021ok", "maxWaitNum": 100, "skillParam": { "noAgents": { "transferType": "Release" }, "busy": { "transferType": "Release" }, "answerFunction": "0", "timeOut": { "transferType": "Release" }, "waitVoice": { "parameterType": "Voice" } } } ], "description": "success" }
  • 报文样例 请求头: { "Content-Type": application/json "x-app-key": ******************** "Authorization": Bearer ************************ } 请求参数: { "offset":0, "limit":10, "type":2 } 响应参数: { "returnCode": "0", "description": "query success", "voiceInfo": [ { "tenant_id": "20******234", "uploaddate": 163*****4000, "voice_id": "113379*********9999", "name": "welcome", "voicecontent": "{\"0\":{\"languageId\":\"0\",\"textcontent\":\"欢迎光临\"}}", "type": 2, "tenantSpaceName": "************" } ] }
  • 响应说明 响应状态码: 200 表3 响应体参数 序号 名称 参数类型 是否必选 说明 1 schema object True - 1.1 returnCode string True 返回码,0:成功,其他失败(1:请求参数type不正确) 1.2 description string False 返回描述 1.3 voiceInfo object False 录音信息 1.3.1 tenant_id string True 租户id 1.3.2 uploaddate number True 上传时间,格式为timestamp 1.3.3 voice_id string True 录音id 1.3.4 name string True 录音名称 1.3.5 voicecontent string False 语音内容 1.3.6 type number True 类型 0:音频,2:text文本 1.3.7 tenantSpaceName string False 租户名称 1.3.8 auditaccount string False 审核者账号 1.3.9 noReference boolean False 提示音和故障音是否被引用 1.3.10 auditcomments string False 审核意见 1.3.11 auditdate number False 审核时间,格式为timestamp 1.3.12 scene number False 使用场景 1.3.13 uploadaccount string False 上传账号 1.3.14 isUpdateRec number False 是否是更新记录 1.3.15 status number False 回调状态 1.3.16 callbackTimes number False 回调次数 响应状态码: 400 错误的请求:请检查请求路径及参数 响应状态码: 401 未授权:1. 请确认是否购买了相关服务。 2. 请联系客服人员检查您账号的当前状态。 响应状态码: 403 鉴权失败 响应状态码: 404 请求的内容未找到:请检查请求的路径 响应状态码: 500 业务失败:请依次确认您请求中各参数的取值。
  • 请求说明 表1 请求头参数 序号 名称 参数类型 是否必选 说明 1 X-APP-Key string True appKey字段,用户标识,请联系运营人员获取appKey 2 Authorization string True 鉴权字段,内容格式为: Bearer +tokenByAKSK接口的返回值中AccessToken(Bearer后有空格)。 生成方式参见C1 系统配置类接口鉴权方式。 表2 请求体参数 序号 名称 参数类型 是否必选 说明 1 reqBody object True - 1.1 offset integer False 起始游标,即分页查询时的起始记录行号。 首次查询传入“0”。 后续查询其他分页时传入该分页的第一条记录的序号。返回记录中第一条记录序号为“0”,后续依次排序。例如每页为50条录,查询第二页时应传入“50”。 不传时默认0,无最大值限制 1.2 limit integer False 分页查询时的每页记录数,正整数,不传时默认100,最大值100,传入超过100的值也会转换为100 1.3 type integer False 录音文件类型 0:音频,2:text文本
  • 响应消息 表3 消息体参数说明 参数名 数据类型 说明 message string 描述 retcode string 错误码。取值如下: 0:成功 非0:失败 错误码的参数说明请参见表5。 result object 加入成功后,返回结果信息的对象。该对象的参数说明请参见表4。 表4 result对象参数说明 参数名 数据类型 说明 groupId string 座席加入的用户组编号 groupName string 座席加入的用户组名称 (不允许非法字符,长度不超过20) 表5 错误结束码说明 错误结束码 说明 处理意见 300-010 VDN用户ccid和vdnid匹配错误 检查输入参数是否正确。 300-016 VDN下不存在此座席 检查VDN下是否存在该座席,如果存在建议1分钟后重试一次 300-017 质检用户组名已存在 更改待创建的质检用户组名称 300-018 质检用户组名为空 检查是否携带groupName参数或者其值是否为空 300-019 待加入的质检用户组不存在 检查groupId对应的质检用户组是否存在 1 参数不合法或系统报错 检查输入参数是否正确。
  • 样例报文 请求头: Content-Type: application/json;charset=UTF-8 Authorization: ****************** 请求参数: { "ccId":1, "vdnId":4, "agentId":667, "groupId":"159282396714302232563636876268", "groupName":"话务组", "groupType":"" } 响应参数: { "result": { "groupName": "话务组A", "groupId": "161960203515344228641565404173" }, "message": "success", "retcode": "0" }
  • 报文样例 请求头 POST /CCFS/resource/ccfs/ivr/getFileHash HTTP/1.1 Authorization: auth-v2/ak/2021-08-31T09:38:50.872Z/content-length;content-type;host/c12f0ed0******************494941bdd106 Accept: */* Content-Type: application/json;charset=UTF-8 Content-Length: 193 请求参数 { "request": { "version": "2.0" }, "msgBody": { "fileName": "Y:/3rdfile/2/thirdvoicebotfile/5dckNDei_1647502396161.wav" } } 响应参数 { "resultData": { "hashValue": "2b67748fe335617******************cf19f28bb8" }, "resultCode": "0", "resultDesc": "success" }
  • 响应说明 当调用本接口响应成功,则返回0和operate success。 当调用本接口响应失败,则返回相应的错误码信息,错误码响应数据结构请查看表4,resultData为保留字段,默认为空字符串。 表4 响应消息参数说明 序号 名称 参数类型 说明 1 resultCode String 请求返回的结果码,详见错误码参考。 2 resultDesc String 请求结果描述。 3 resultData Object 请求响应数据,参数说明详见表5。 表5 响应 resultData 说明 序号 名称 参数类型 说明 3.1 hashValue String 放音文件 SHA256 编码后的字符串
  • 响应消息 表3 消息体参数说明 参数名 数据类型 说明 result String 查询结果。取值如下: 0:成功 其他:失败 失败的原因说明请参见错误码参考。 说明: 当前字段为兼容8.13及其之前版本接口响应参数使用。 resultCode string 查询结果。取值如下: "0100000":成功 其他:失败 失败的原因说明请参见错误码参考。 resultDatas array 查询成功后,返回结果信息的对象数组。 该数组中对象的参数说明请参见表4。 说明: 当前字段为兼容8.13及其之前版本接口响应参数使用。 resultDesc array 查询成功后,返回结果信息的对象数组。 该数组中对象的参数说明请参见表4 表4 resultDesc/resultDatas对象参数说明 参数名 数据类型 说明 id int 座席工号。 idxs array 指标结果集。 该对象的参数说明请参见表5 表5 idxs对象参数说明 参数名 数据类型 说明 id string 指标ID。 val object 指标结果。 该对象的参数说明请参见表2
  • 样例报文 请求头: Content-Type: application/json;charset=UTF-8 Authorization: ****************** 请求参数: { "ccId":1, "vdn":170, "agentIds":[1032,1099], "indexIds":["IDX_AGENT_PHONE","IDX_AGENT_CURRENT_STATE","IDX_DURATION_AGENT_CURRENT_STATE","IDX_AGENT_ LOG IN_SKILLS"] } 响应参数: { "result": "0", "resultCode": "0100000", "resultDatas": [ { "idxs": [ { "val": "88880103", "id": "IDX_AGENT_PHONE" }, { "val": 7, "id": "IDX_AGENT_CURRENT_STATE" }, { "val": 17728, "id": "IDX_DURATION_AGENT_CURRENT_STATE" }, { "val": [ 3 ], "id": "IDX_AGENT_LOGIN_SKILLS" } ], "id": 1032 }, { "idxs": [ { "val": "88881609", "id": "IDX_AGENT_PHONE" }, { "val": 1, "id": "IDX_AGENT_CURRENT_STATE" }, { "val": 1414, "id": "IDX_DURATION_AGENT_CURRENT_STATE" }, { "val": [ 2, 4 ], "id": "IDX_AGENT_LOGIN_SKILLS" } ], "id": 1099 } ], "resultDesc": [ { "idxs": [ { "val": "88880103", "id": "IDX_AGENT_PHONE" }, { "val": 7, "id": "IDX_AGENT_CURRENT_STATE" }, { "val": 17728, "id": "IDX_DURATION_AGENT_CURRENT_STATE" }, { "val": [ 3 ], "id": "IDX_AGENT_LOGIN_SKILLS" } ], "id": 1032 }, { "idxs": [ { "val": "88881609", "id": "IDX_AGENT_PHONE" }, { "val": 1, "id": "IDX_AGENT_CURRENT_STATE" }, { "val": 1414, "id": "IDX_DURATION_AGENT_CURRENT_STATE" }, { "val": [ 2, 4 ], "id": "IDX_AGENT_LOGIN_SKILLS" } ], "id": 1099 } ] }
  • 请求说明 表1 请求头参数 序号 名称 参数类型 是否必选 说明 1 Content-Type String True 固定填 application/json; charset=UTF-8。 2 Authorization String True 生成方式参见C2 监控/系统外呼/话单/知识库类接口鉴权方式。 表2 消息体参数说明 参数名 数据类型 是否必选 说明 ccId int True 呼叫中心编。 取值范围:1~65535 vdn int True 虚拟呼叫中心编号。 取值范围:1~5000 agentIds array True 座席工号的数组,最大数组长度为100。 取值范围:101-59999 indexIds array True 指标的数组。数组最大长度为座席实时监控指标的个数,当前不大于4。 该对象的参数说明请参见表2
  • 样例报文 请求头: Content-Type: application/json;charset=UTF-8 Authorization: ****************** 请求参数: { "ccId":1, "vdn":170, "callId": "1678978542-92", "logDate": "1615717765000" } 响应参数: { "resultCode":"0100000", "resultDesc": [{ "callId": "1678978542-92", "mediaType": "1", "subMediaType|: "1", "callIdNum": "-1", "callerNo": "80000888", "calleeNo": "624192", "waitBegin": "1615717765000",// 呼叫等待开始时间 "ackBegin": "1615717765000",// 呼叫应答时间 "callBegin": "1615717765000",// 通话开始时间 "callEnd": "1615717765000",// 通话结束时间 "subCcNo": "0", "deviceType": "1", "deviceNo": "1", "deviceIn": "1", "callType": "1", "releaseCause": "1", // callIdNum=-1时有意义 "EnterReason": "11", "LeaveReason": "11", "CurrentSkillID": "0", // 当前处理呼叫的技能队列编号 "mediaType":53, // 媒体类型 "subMediaType":1 // 子媒体类型 }] }
  • 请求说明 表1 请求头参数 序号 名称 参数类型 是否必选 说明 1 Content-Type String True 固定填 application/json; charset=UTF-8。 2 Authorization String True 生成方式参见C2 监控/系统外呼/话单/知识库类接口鉴权方式。 表2 请求消息体参数说明 序号 名称 参数类型 是否必选 说明 1 ccId int True 呼叫中心编号。 取值范围:1~65535 2 vdn int True 虚拟呼叫中心编号。 取值范围:1~5000 3 callId string True 呼叫ID 4 logDate long True 查询时间,用于解析月份,查询指定表;毫秒级时间戳
  • 错误结果码 表5 错误原因码说明 序号 错误码 说明 1 0200001 参数异常,异常详情在resultDesc中描述。 2 0200007 外呼活动不存在。 3 02000001 参数值为空 4 02000002 参数包含非法字符 5 02000003 参数长度不能大于规定长度 6 02000004 参数长度不能小于规定长度 7 02000005 参数长度需要介于规定长度之间 8 02000006 参数值类型不正确 9 02000007 参数值大小不正确 10 02000008 参数转换异常,请检查请求参数 11 02000009 参数组合不正确,请检查请求参数 12 02000010 hour和minute必须同时存在 13 02000011 参数个数不能大于规定个数
  • 报文样例 该接口的请求消息体举例如下: 无 该接口的响应消息体举例如下: { "resultCode": "0200000", "resultDesc": "", "data": [ { "id": 11, "name": "周末", "type": 1, "week": "5,7", "beginTime": null, "endTime": null }, { "id": 14, "name": "中秋节", "type": 2, "week": null, "beginTime": "2018-09-22", "endTime": "2018-09-24" } ] }
  • 接口URI https://ip:port/rest/isales/v1/openapi/campaigns/{vdnId}/holiday/{campaignId} 其中,ip为CC-iSales服务器地址,port为CC-iSales服务器的HTTPS端口号。 表1 URL中携带的参数说明 序号 参数名 参数类型 是否必选 说明 1 vdnId int True 虚拟呼叫中心ID。 取值的类型为整数,取值范围为1~9999。 2 campaignId int True 外呼活动的ID。
  • 响应说明 表3 消息体参数说明 序号 参数名 参数类型 说明 1 resultCode String 原因码。0200000表示成功,其他表示失败。 具体见表5。 2 resultDesc String 描述。 3 data List 查询成功后,返回的节假日信息列表数据。 参见表4。 4 returnCode String 原因码。0200000表示成功,其他表示失败。 具体见表5 5 returnDesc String 描述。
共100000条