
# 视频文件下载接口（扩展）
#### 前置条件
- Gateway已经打开了视频文件下载开关（VIDEO_DOWNLOAD_FLAG 配置为ON）和视频事件开关（IF_SUPPORT_VIDEO配置为ON），配置文件路径：/home/elpis/tomcat/webapps/agentgateway/WEB-INF/config/basic.properties。
- Gateway已经挂载文件服务器。
- 座席已签入。
- 配置文件中已配置挂载目录。
 
#### 场景描述
下载视频通话产生的视频文件（不建议通过该接口下载超过200MB视频文件）。
#### 接口方法
设置成"GET"。该接口仅支持GET方法，不支持PUT、POST和DELETE等方法。
#### 接口URI
https://ip:port/agentgateway/resource/recordfile/{agentid}/videofiledownloadEx?recordId=xxx\&locationId=xxx
![](https://support.huaweicloud.com/api-ccfs-cec/public_sys-resources/note_3.0-zh-cn.png)
如果CC-Gateway单机部署，IP地址为CC-Gateway服务器地址，port为CC-Gateway服务器的HTTPS端口号，默认值为8043；如果CC-Gateway采用集群模式部署，IP请配置为NSLB地址， Port请配置为默认值8043。
NSLB上的CC-Gateway端口号，请以nslb用户登录任意一个NSLB节点，执行./nslbctl l查询，查询结果中，如下端口表示CC-Gateway通过NSLB面向第三方系统开放的端口。
![](https://support.huaweicloud.com/api-ccfs-cec/figure/zh-cn_image_0000002204207349.png)
SaaS场景下请咨询运维人员获取IP和Port。
表1URI中携带的参数说明 
| 序号 | 名称         | 参数类型   | 是否必选  | 说明                                                                                                                                                                                                                                           |
|:---|:---|:---|:---|:---|
| 1  | agentid    | string | True  | 座席的工号，取值范围：101～999999。                                                                                                                                                                                                                       |
| 2  | recordId   | string | True  | 视频文件路径。 说明： 如果recordId不传，默认下载第一条录播地址对应的视频文件。 |
| 3  | locationId | int    | False | 节点Id（CTI POOL模式下为必选）                                                                                                                                                                                                                         |
   
#### 日志中的方法名
downloadVideoFileEx
#### 请求说明
- 消息头
  表2请求头参数说明 
  | 序号 | 名称           | 参数类型   | 是否必选 | 说明                                                             |
  |:---|:---|:---|:---|:---|
  | 1  | Content-Type | string | True | 消息主体编码方式，缺省值：application/json;charset=UTF-8                    |
  | 2  | Guid         | string | True | 静态鉴权（AUTHMODE = 1）签入接口返回的Guid；动态鉴权（AUTHMODE = 2）轮询事件接口返回的Guid。 |
     
  

- 消息体 无
  
 
#### 响应说明
该接口的响应说明体举例如下：
- 下载失败时： 消息头Content-Type: application/json;charset=UTF-8
  消息体示例请参见[报文样例]
  表3消息体参数说明 
  | 序号 | 名称      | 参数类型   | 说明                                                                                                                                                                                                                                                                        |
  |:---|:---|:---|:---|
  | 1  | message | string | 描述                                                                                                                                                                                                                                                                        |
  | 2  | retcode | string | 错误码。取值如下： 0：成功 非0：失败 |
  | 3  | result  | object | 预留字段                                                                                                                                                                                                                                                                      |
     
  
- 下载成功时： 消息头 Content-Type: application/octet-stream;charset=utf-8
  消息体 文件流
  
 
#### 触发事件
- 座席签入，调用视频文件下载接口。
 
#### 错误结果码
- 108-001
- 104-003
- 104-010
- 108-002
- 108-011
- 108-009
- 108-012
- 108-013
- 108-019
 
 #### 报文样例
- 消息头
  ```
  Content-Type:application/json;charset=UTF-8
  Guid：xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx.AgentGateway1
  ```
  
- 请求参数 无
  
- 响应参数
  ```
  {
      "retcode": "000-003",
      "message": "no right to invite resource",
      "result": ""
  }
  ```
  
 
