轮询模式

2024.09.06 10:39:09

    内容安全直播音频异步检测或人工审核的结果,客户可以通过轮询调用该接口获取数据。轮询模式与推送模式互斥,只能选取一种模式进行结果获取。

    接口说明

    该接口返回直播音频经过人工审核的结果或者直播音频异步机器检测结果,需要客户通过该接口进行定时轮询获取,当提交检测接口参数callbackUrl为空时,表示结果通过该接口获取,结果可以根据提交检测时返回的taskId对应。

    鉴权说明

    易盾内容安全服务使用签名方法对接口进行鉴权,所有接口每一次请求都需要包含签名信息(signature 参数),以验证用户身份,防止信息被恶意篡改。目前支持MD5,SHA1,SHA256,SM3几种加密算法,详细信息,请参见接口鉴权

    结果说明

    • 获取结果后,下次调用,不会再次返回之前获取过的结果
    • 接口一次最多返回200个结果,审核结果数据默认保留7天,7天不获取会失效
    • 接口请求频率建议1s一次,过快服务器会拒绝处理,客户可以根据业务需求进行适当调整

    接口耗时

    结果获取接口的响应很快,正常50ms内返回结果,业务方根据需求适当调整超时时间,建议为1s

    历史版本

    v3版本直播语音轮询模式请点此查看

    请求

    请求地址

    名称
    HTTP URL http://as.dun.163.com/v4/liveaudio/callback/results
    HTTP Method POST

    请求头

    名称 类型 必填 描述
    Content-Type String 固定值:"application/x-www-form-urlencoded"

    请求参数

    请求参数由公共参数和业务参数两部分组成

    公共参数

    公共参数包含密钥信息和参数签名信息,公共参数详细见请求公共参数

    业务参数

    名称 类型 必填 最大长度 描述
    version String 4 接口版本v4.1
    yidunRequestId String 64 幂等参数说明

    请求体示例

    version=v4.1&signature=xxx&secretId=xxx&businessId=xxx&nonce=xxxxx×tamp=1628137551000
    

    响应

    该接口可以返回人工审核结果或异步机器检测结果,两类结果结构保持一致。

    响应结果

    响应字段如下,响应公共字段已省略,详细见响应公共字段。详细字段信息如下:

    名称 类型 必须返回 描述
    result Object[] 音频检测结果
     ∟ antispam Object 内容安全检测结果
      ∟ taskId String 易盾侧机审数据唯一标识,能够根据该值定位到该条数据,如对检测结果有异议,可以发送该值给策略经理查询
      ∟ callback String 提交时传递的callback
      ∟ dataId String 上传数据唯一标识,能够根据该值定位到该条数据,如对数据结果有异议,可以发送该值给客户经理查询
      ∟ censorSource Number 审核来源,0:易盾人审,1:客户人审,2:易盾机审
      ∟ status Number 检测状态,1-检测中,2-检测成功,3-检测失败
      ∟ finishType Number 结束检测类型,0-易盾结束检测,1-客户结束检测
      ∟ failureReason Number 检测失败原因,当检测失败时返回,1:下载失败,2:直播流不存在,3:解析失败,4:格式错误
      ∟ riskLevel Number 直播异常风险等级, 0-正常,1-低危,2-中危,3-中高危,4-高危
      ∟ riskScore Number 直播异常分数
      ∟ duration Number 直播时长字段,直播结束返回直播整体时长,单位s
      ∟ billDuration Number 直播音频片段计费时长字段,单位s
      ∟ strategySource Number 策略来源,0:易盾策略来源,1:客户策略来源
      ∟ evidences Object 直播断句审核证据信息
       ∟ suggestion Number 建议结果 0-通过 1-嫌疑 2-删除
       ∟ label Number 分类信息,分类信息,100:色情,200:广告,260:广告法,300:暴恐,400:违禁,500:涉政,600:谩骂,1040:黑麦,1100:涉价值观,1050:噪音
       ∟ secondLabel String 命中二级标签细分类
       ∟ thirdLabel String 命中三级标签细分类
       ∟ suggestionLevel Number 嫌疑级别,针对部分定制策略支持命中嫌疑时返回,1:低嫌疑,2:高嫌疑,对通用策略、模型结果暂不支持,v5.2版本新增,默认不返回,如果需要返回请联系运营经理配置
       ∟ startTime Number 断句开始时间,单位毫秒
       ∟ endTime Number 断句结束时间,单位毫秒
       ∟ type Number 断句类型,0-语音识别,1-声纹检测
       ∟ rate Number 声纹检测命中置信度
       ∟ content String 当断句为声纹检测时返回命中声纹检测,语音识别时语音内容
       ∟ url String 需要开启返回直播语音片段播放地址,请联系易盾策略经理
       ∟ speakerId String 针对接入SDK监听客户,返回说话人ID信息
       ∟ speakerRiskScore Number 说话人的直播异常分数
       ∟ segmentId String 断句id
       ∟ frontSegment Object 关联证据信息,异常/嫌疑断句命中时返回,命中断句前20s的证据信息,包含前20s的音频语音识别内容及对应url。通过时数据为空,如果命中断句前20s没有内容,返回为空。
        ∟ content String 命中断句前20s的语音识别内容
        ∟ url String 命中断句前20s的音频url,可解析进行回放
       ∟ labels Object[] 分类信息,通过时数据为空
        ∟ label Number 分类信息,分类信息,100:色情,200:广告,260:广告法,300:暴恐,400:违禁,500:涉政,600:谩骂,1040:黑麦,1100:涉价值观,1050:噪音
        ∟ level Number 命中级别,示例值:1:嫌疑,2:不通过,0:正常,特殊策略下可返回“level=0”的数据,如果需要返回可以找策略经理配置
        ∟ rate Number 置信度分数,0-1之间取值,1为置信度最高,0为置信度最低。v4.1及以上版本支持返回
        ∟ subLabels Object[] 命中细分类信息
         ∟ subLabel String 细分类,详细编码请参考细分类编码 对照表
         ∟ subLabelDepth Number 命中的标签层级,目前支持的层级:2,3
         ∟ secondLabel String 命中二级标签细分类
         ∟ thirdLabel String 命中三级标签细分类
         ∟ rate Number 置信度分数,0-1之间取值,1为置信度最高,0为置信度最低。v4.1及以上版本支持返回
         ∟ details Object 其他信息
          ∟ hitInfos Object[] 证据信息
           ∟ value String 命中线索内容
          ∟ hitLeaders Object[] 命中领导人信息
           ∟ value String 领导人名,若命中领导人声纹,返回对应的领导人名
          ∟ keywords Object[] 自定义敏感词线索分类信息
           ∟ word String 自定义添加敏感词
          ∟ libInfos Object[] 自定义名单线索分类信息
           ∟ listType Number 名单类型,1:自定义用户名单,2:自定义IP名单,3:自定义设备名单
           ∟ entity String 名单内容
           ∟ strategyGroupName String 策略组名称
          ∟ intent Object 意图识别结果
           ∟ result Number 意图识别结果类型,0:否定意图;1:肯定意图
           ∟ score Number 意图识别结果得分,小数[0-1]范围
          ∟ rules Object[] 命中用户自定义的规则信息
           ∟ name String 规则名
      ∟ reviewEvidences Object 直播墙人审证据信息
       ∟ action Number 审核操作, 1为忽略, 2为警告, 3为断流, 4为提示
       ∟ actionTime Number 操作时间, UNIX_TIME时间戳, 毫秒为单位
       ∟ spamType Number 违规类型, 100-色情, 115-音乐内容低俗, 116-言论低俗涉黄, 121-发出涉黄声音, 122-ASMR, 200-广告, 211-商业推广, 212-提及竞品, 300-暴恐, 400-违禁, 500-涉政, 511-影响政府形象, 512-邪教迷信, 513-涉军事, 514-涉宗教, 515-国歌、严肃歌曲, 516-涉及少数民族,517-涉及政治敏感话题 800-不文明, 826-传播负面情绪, 827-违反公序良俗, 828-侵害他人隐私, 1000-其他, 1023-无营养, 1027-话题炒作, 1030-挂机, 1050-自定义
       ∟ spamDetail String 违规详细说明
       ∟ censorLabels Object[] 支持在审核系统自定义标签分类信息;使用自定义标签时,spamType为1050
        ∟ code String 在系统配置自定义标签之后会生成一个唯一的标签ID
        ∟ name String 在审核系统配置自定义标签名称
        ∟ desc String 在审核系统配置自定义标签备注
        ∟ customCode String 在审核系统配置自定义标签code
       ∟ speakerId String 针对接入SDK监听客户,针对房间内具体说话人的处罚,返回说话人ID信息,若为空,则针对房间维度处罚
       ∟ censorAccount String 审核账号
       ∟ warnCount Number 警告次数
       ∟ promptCount Number 提示次数
       ∟ segments Object[] 人审断句信息, 可为空
        ∟ startTime Number 断句开始时间,单位毫秒
        ∟ endTime Number 断句结束时间 ,单位毫秒
     ∟ asr Object 语音识别检测结果,如有需要请联系您的专属商务,未开通状态下不返回
      ∟ taskId String 易盾侧机审数据唯一标识,能够根据该值定位到该条数据,如对检测结果有异议,可以发送该值给策略经理查询
      ∟ startTime Number 断句开始时间,单位毫秒
      ∟ endTime Number 断句结束时间,单位毫秒
      ∟ content String 语音识别结果
      ∟ url String 语音断句的临时访问地址,地址有效期为7天,如需开启请联系易盾策略经理
      ∟ speakerId String 针对接入SDK监听客户,返回说话人ID信息
     ∟ language Object 语种识别检测结果,如有需要请联系您的专属商务,未开通状态下不返回
      ∟ taskId String 易盾侧机审数据唯一标识,能够根据该值定位到该条数据,如对检测结果有异议,可以发送该值给策略经理查询
      ∟ startTime Number 断句开始时间,单位毫秒
      ∟ endTime Number 断句结束时间,单位毫秒
      ∟ content String 语种识别类型,支持检测语种类型请参考语种代码表
      ∟ callback String 提交时传递的callback
      ∟ segmentId String 断句id
      ∟ speakerId String 针对接入SDK监听客户,返回说话人ID信息
     ∟ voice Object 人声属性检测结果
      ∟ taskId String 易盾侧机审数据唯一标识,能够根据该值定位到该条数据,如对检测结果有异议,可以发送该值给策略经理查询
      ∟ startTime Number 断句开始时间,单位毫秒
      ∟ endTime Number 断句结束时间,单位毫秒
      ∟ dataId String 上传数据唯一标识,能够根据该值定位到该条数据,如对数据结果有异议,可以发送该值给客户经理查询
      ∟ segmentId String 断句id
      ∟ speakerId String 针对接入SDK监听客户,返回说话人ID信息
      ∟ callback String 提交时传递的callback
      ∟ mainGender String 音频性别建议值,male/female
      ∟ mainAgeGroup String 识别人声年龄,underage(0~18岁),adult(18岁以上)
      ∟ mainAgeGroupRate Number 人声年龄置信度分数,0-1之间取值,1为置信度最高,0为置信度最低
      ∟ url String 语音断句的临时访问地址
     ∟ quality Object 语音质量检测结果
      ∟ taskId String 易盾侧机审数据唯一标识,能够根据该值定位到该条数据,如对检测结果有异议,可以发送该值给策略经理查询
      ∟ startTime Number 断句开始时间,单位毫秒
      ∟ endTime Number 断句结束时间,单位毫秒
      ∟ dataId String 上传数据唯一标识,能够根据该值定位到该条数据,如对数据结果有异议,可以发送该值给客户经理查询
      ∟ callback String 提交时传递的callback
      ∟ speakerId String 针对接入SDK监听客户,返回说话人ID信息
      ∟ details Object 详细说明
       ∟ silent Boolean 是否为无声片段,true:无声片段

    响应体示例

    检测中返回示例
    {
        "code":200,
        "msg":"ok",
        "result":[
            {
                "antispam":{
                    "taskId":"3e10895e028d4b53b387edef27f6deb6",
                    "dataId":"1631932263268",
                    "censorSource":2,
                    "evidences":{
                        "content":"加我",
                        "startTime":1631932269297,
                        "endTime":1631932285317,
                        "dataId":"1631932263268",
                        "speakerId":"",
                        "segmentId":"0ab2682947b648fd98cbe9436875ab0d",
                        "suggestion":2,
                        "labels":[
                            {
                                "label":200,
                                "level":2,
                                "subLabels":[
                                    {
                                        "details":{
                                            "hitInfos":[
                                                {
                                                    "value":"加我"
                                                }
                                            ]
                                        },
                                        "subLabel":"200009",
                                        "subLabelDepth":2,
                                        "secondLabel":"200009"
                                    }
                                ]
                            }
                        ]
                    },
                    "riskLevel":4,
                    "riskScore":212,
                    "status":1
                },
                "asr":{
                    "taskId":"3e10895e028d4b53b387edef27f6deb6",
                    "startTime":1631932269297,
                    "endTime":1631932285317,
                    "content":"加我",
                    "speakerId":"",
                    "dataId":"1631932263268"
                },
                "voice":{
                    "taskId":"7f03cdeaf4cf4c748a4edbe97833a9ee",
                    "dataId":"",
                    "callback":"",
                    "detail":{
                        "mainAgeGroup":"adult",
                        "mainAgeGroupRate":0.9973
                    }
                }
            }
        ]
    }
    
    检测结束返回示例
    {
       "code:200,
       "msg":ok,
       "result":[
    	{
    		"antispam":{
    			"taskId":"31d2bdoi41d457gfmifu4ysog04009xgv",
    			"callback":"{自定义callback内容}",
    			"evidences":{
    				"startTime":0,
    				"endTime":0,
    				"segments":[
    
    				],
    				"suggestion":0,
    				"censorSource":2
    			},
                   "duration":26,
                   "status":2,
                   "dataId":"12345"
          }
      ]
    	
    }
    

    响应返回码

    响应返回码见:响应返回码

    示例代码

    服务端 SDK 接入

    推荐使用我们提供的服务端 SDK 进行接入(目前支持 Java 和 Go 两种语言),不但可以节省接入成本,实现更快速的集成,并享有灵活的请求配置选项,同时 SDK 内置了错误重试、熔断降级等功能,提升服务可用性。点击 服务端 SDK 接入指引 了解更多。

    Github Demo 地址

    Gitee Demo 地址(Github 无法访问时选择)

    HTTP API 接入

    Github Demo 地址

    Gitee Demo 地址(Github 无法访问时选择)

    Online Chat Tel:95163223 Free trial