
# 第三方生成文件 Hash 值
#### 场景描述
调用该API，第三方（IVR加载定制 jar 包形式与第三方对接的模式）生成已经上传文件的 Hash 值，用于校验服务器文件与本地是否一致。
#### 使用说明
- 前提条件
  - 已通过鉴权（Authorization）。
   
- 使用限制 开发者只能获取属于自己帐号下的文件 Hash 值，详见[C2 监控/系统外呼/话单/知识库类接口鉴权方式](https://support.huaweicloud.com/api-ccfs-cec/cec_07_0003.html#ZH-CN_TOPIC_0000002481273406)。
  
 
#### 接口方法
POST
#### 接口URI
https://ip:port/CCFS/resource/ccfs/ivr/getFileHash
其中，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 监控/系统外呼/话单/知识库类接口鉴权方式](https://support.huaweicloud.com/api-ccfs-cec/cec_07_0003.html#ZH-CN_TOPIC_0000002481273406)。 |
   
表2请求Body中request参数说明 
| 序号 | 名称      | 参数类型         | 是否必选 | 默认值 | 说明              |
|:---|:---|:---|:---|:---|:---|
| 1  | version | String（1-32） | True | 2.0 | 协议版本。当前固定值为2.0。 |
   
表3请求Body中msgBody参数说明 
| 序号 | 名称         | 参数类型   | 是否必选  | 默认值 | 说明                                                                                                                                                                                                                                                                                                                                   |
|:---|:---|:---|:---|:---|:---|
| 1  | fileName   | String | True  | 无   | 要获取的文件 hash 值的全地址，文件路径由系统级参数"第三方上传文件路径规则"控制，请联系系统管理员获取，获取路径："配置中心 \> 系统管理 \> 系统参数配置 \> 系统参数 \> 文件存储服务 \> 路径配置 \> \> 第三方上传文件路径规则"。默认值：/3rdfile/%VDNNO%/thirdvoicebotfile/。 例：{盘符}:/3rdfile/{VDN编号}/thirdvoicebotfile/xxx.wav |
| 2  | locationId | String | False | 无   | 仅 CTI POOL 模式下生效                                                                                                                                                                                                                                                                                                                     |
   
#### 响应说明
当调用本接口响应成功，则返回0和operate success。
当调用本接口响应失败，则返回相应的错误码信息，错误码响应数据结构请查看[表4](https://support.huaweicloud.com/api-ccfs-cec/cec_07_0817.html#ZH-CN_TOPIC_0000002513073793__zh-cn_topic_0000002478109896_zh-cn_topic_0205768961_table179638246341)，resultData为保留字段，默认为空字符串。
表4响应消息参数说明 
| 序号 | 名称         | 参数类型   | 说明                                                                                                                              |
|:---|:---|:---|:---|
| 1  | resultCode | String | 请求返回的结果码，详见[错误码参考](https://support.huaweicloud.com/api-ccfs-cec/cec_07_0835.html#ZH-CN_TOPIC_0000002481113938)。                 |
| 2  | resultDesc | String | 请求结果描述。                                                                                                                         |
| 3  | resultData | Object | 请求响应数据，参数说明详见[表5]。 |
   
 表5响应 resultData 说明 
| 序号  | 名称        | 参数类型   | 说明                  |
|:---|:---|:---|:---|
| 3.1 | hashValue | String | 放音文件 SHA256 编码后的字符串 |
   
#### 报文样例
- 请求头
  ```
  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"
  }
  ```
  
 
