## 接口地址 https://as.dun.163yun.com/v1/audio/check (https://as.dun.163yun.com/v1/audio/check) ## 接口描述 建议您使用POST请求, 且仅接受 application/x-www-form-urlencoded 编码格式。 根据发布的内容、发布者、ip、设备等信息来检测是否为需拦截内容。接口同步返回易盾内容安全服务实时反垃圾引擎检测结果,产品可以根据该结果对数据进行初步过滤。 ## 请求参数 该接口参数与请求公共参数一致,详细见 请求公共参数 (/help/documents/191342014578741248) ### 语音文件URL提交 参数名称 | 类型 | 是否必选 | 最大长度 | 描述 dataCheckType | Number | N | 1 | 检测类型,默认0-url,1-语音内容base64 url | String | N | 1024 | 语音文件url,时长不超过60s version | String | Y | 4 | 接口版本号,可选值 v1 title | String | N | 512 | 文件标题 ip | String | N | 32 | 用户IP地址 account | String | N | 128 | 用户唯一标识,如果无需登录则为空 deviceId | String | N | 128 | 用户设备 id deviceType | Number | N | 4 | 用户设备类型,1:web, 2:wap, 3:android, 4:iphone, 5:ipad, 6:pc, 7:wp callback | String | N | 2^16-1 | 数据回调参数,调用方根据业务情况自行设计,当调用离线结果获取接口或查询接口时,该接口会原样返回该字段,详细见音频离线检测结果获取 (/help/documents/191344520906067968)。作为数据处理标识,因此该字段应该设计为能唯一定位到该次请求的数据结构,如对用户的昵称进行检测,dataId可设为用户标识(用户ID),用户修改多次,每次请求数据的dataId可能一致,但是callback参数可以设计成定位该次请求的数据结构,比如callback字段设计成json,包含dataId和请求的时间戳等信息,当然如果不想做区分,也可以直接把callback设置成dataId的值。 callbackUrl | String | N | 256 | 审核后离线结果回调通知到客户的URL。主动回调数据接口超时时间设置为2s,为了保证顺利接收数据,需保证接收接口性能稳定并且保证幂等性。 format | String | N | 1 | 语音内容格式,不区分大小写,可选值pcm rate | Number | N | 5 | 语音内容采样率,可选值16000 channel | Number | N | 1 | 语音内容声道数,仅支持单声道,可选值1 extension | String | N | 30000 | 自定义扩展参数 ### 语音内容base64提交 参数名称 | 类型 | 是否必选 | 最大长度 | 描述 dataCheckType | Number | N | 1 | 检测类型,默认0-url,1-语音内容base64 data | String | N | 2560000 | 语音内容base64 format | String | N | 3 | 语音内容格式,不区分大小写,可选值pcm,不填默认为pcm rate | Number | N | 5 | 语音内容采样率,可选值16000,不填默认为16000 channel | Number | N | 1 | 语音内容声道数,仅支持单声道,可选值1,不填默认为1 version | String | Y | 4 | 接口版本号,可选值 v1 title | String | N | 512 | 文件标题 ip | String | N | 32 | 用户IP地址 account | String | N | 128 | 用户唯一标识,如果无需登录则为空 deviceId | String | N | 128 | 用户设备 id deviceType | Number | N | 4 | 用户设备类型,1:web, 2:wap, 3:android, 4:iphone, 5:ipad, 6:pc, 7:wp callback | String | N | 2^16-1 | 数据回调参数,调用方根据业务情况自行设计,当调用离线结果获取接口或查询接口时,该接口会原样返回该字段,详细见音频离线检测结果获取 (/help/documents/191344520906067968)。作为数据处理标识,因此该字段应该设计为能唯一定位到该次请求的数据结构,如对用户的昵称进行检测,dataId可设为用户标识(用户ID),用户修改多次,每次请求数据的dataId可能一致,但是callback参数可以设计成定位该次请求的数据结构,比如callback字段设计成json,包含dataId和请求的时间戳等信息,当然如果不想做区分,也可以直接把callback设置成dataId的值。 callbackUrl | String | N | 256 | 审核后离线结果回调通知到客户的URL。主动回调数据接口超时时间设置为2s,为了保证顺利接收数据,需保证接收接口性能稳定并且保证幂等性。 ## 响应结果 响应字段如下,响应通用字段已省略,详细见 响应通用字段 (/help/documents/191342014578741248): ### 反垃圾结果 result 数据结构 参数名称 | 类型 | 描述 taskId | String | 点播视频提交生成的唯一数据标识,可以根据该标识查询视频数据最新结果 status | Number | 0-检测成功 1-检测超时(后期可能新增,请保持扩展性) antispam | json数组 | 反垃圾检测结果 language | json数组 | 语种检测结果 asr | json数组 | 语音识别检测结果 voice | json数组 | 人声识别检测结果 antispam 数组数据结构 参数名称 | 类型 | 描述 asrStatus | Number | 音频翻译结果,2:检测中,3:检测完成,4:检测失败 asrResult | Number | 音频翻译检测失败原因,1:文件格式错误,2:文件下载失败,3:解析失败,4:音频流不存在,5:同步检测音频时长超长(>60s) action | Number | 检测结果,0:通过,1:嫌疑,2:不通过 taskId | String | 唯一标识 segments | json数组 | 断句信息 labels | json数组 | 分类信息 censorSource | Number | 审核来源,0:易盾人审,1:客户人审,2:易盾机审 censorTime | Number | 人工审核完成时间,毫秒单位时间戳(13位) censorLabels | json数组 | 审核标签 segments 数据结构 参数名称 | 类型 | 描述 startTime | Number | 开始时间,单位秒 endTime | Number | 结束时间,单位秒 content | String | 断句内容 label | Number | 分类信息,100:色情,200:广告,260:广告法,300:暴恐,400:违禁,500:涉政,600:谩骂,900:其他,1100:涉价值观 level | Number | 分类级别,0:通过,1:不确定,2:确定 leaderName | String | 领导人名,若命中领导人声纹,返回对应的领导人名 hintList | json数组 | 其他信息 labels 数据结构 参数名称 | 类型 | 描述 label | Number | 分类信息,100:色情,200:广告,260:广告法,300:暴恐,400:违禁,500:涉政,600:谩骂,900:其他,1100:涉价值观 level | String | 分类级别,1:不确定,2:确定 subLabels | json数组 | 细分类信息,可能包含多个,可能为空 subLabels 数据结构 参数名称 | 类型 | 描述 details | json对象 | 其他信息 subLabel | json数组 | 细分类,详细编码请参考下方对应细分类编码对应表 (/help/documents/447221715740790784) [md-attention] #### 自定义细分类 易盾支持sublabel自定义细分类过检并返回,如有需求,可联系您的专属安全策略经理添加。 details 数据结构 参数名称 | 类型 | 描述 hitType | Number | 命中检测器类型:10:用户名单 11:IP名单 12:设备名单 30:敏感词 110:IP地区限制 130:声纹检测 hint | json数组 | 线索信息,用于定位文本中有问题的部分,辅助人工审核 hint 数据结构 参数名称 | 类型 | 描述 value | String | 命中的敏感词或者声纹检测的分值 segments | json数组 | 命中敏感词或者声纹检测的音频时间点 segments 数据结构 参数名称 | 类型 | 描述 startTime | Number | 最近开始时间点,单位毫秒 endTime | Number | 最近结束时间点,单位毫秒 censorLabels 数据结构 参数名称 | 类型 | 描述 code | String | 审核标签code ### 语音识别检测结果 asr 数组数据结构 参数名称 | 类型 | 描述 taskId | String | 唯一标识 details | json数组 | 语音识别检测结果 details 数据结构 参数名称 | 类型 | 描述 startTime | Number | 断句开始时间点,单位毫秒 endTime | Number | 断句结束时间点,单位毫秒 content | String | 语音识别结果 ### 语种检测结果 language 数组数据结构 参数名称 | 类型 | 描述 taskId | String | 唯一标识 details | json数组 | 语种检测结果 details 数据结构 参数名称 | 类型 | 描述 type | String | 语种类型 segments | json数组 | 识别语种检测的音频时间点 segments 数据结构 参数名称 | 类型 | 描述 startTime | Number | 最近开始时间点,单位毫秒 endTime | Number | 最近结束时间点,单位毫秒 ### 人声属性结果 voice 数组数据结构 参数名称 | 类型 | 描述 taskId | String | 唯一标识 mainGander | String | 音频性别建议值,male/female ## 响应示例 当获取到离线结果时,输出示例如下: Code: { "code":200, "msg":"ok", "result":{ "taskId":"3286f29ca5d44198aca8d4a3f790c842", "status":0, "antispam":[ { "action":2, "asrStatus":3, "taskId":"3286f29ca5d44198aca8d4a3f790c842", "labels":[ { "label":400, "level":2, "subLabels":[ { "subLabel":"400017", "details":{ "hint":[ { "value":"与时聚进", "segments":[ { "startTime":0, "endTime":4 } ] } ], "hitType":30 } } ] } ], "segments":[ { "startTime":0, "endTime":3, "content":"一是坚持与时聚进。", "label":400, "level":2, "hintList":[ "与时聚进" ] } ], "callback":"", "censorSource":2, "censorTime":1616398858595, "censorLabels":[ ] } ], "language":[ ], "asr":[ { "taskId":"3286f29ca5d44198aca8d4a3f790c842", "details":[ { "startTime":0, "endTime":3, "content":"一是坚持与时聚进。" } ] } ], "voice":[ ] } }