Commit 6ab1e5e175a0088fecdd6ddbd87da9219f48f062
1 parent
f1edbd75
易盾点播音频提交接口(用于测试)
Showing
2 changed files
with
85 additions
and
4 deletions
src/main/java/com/cnlive/shenhe/api/AudioControllerApi.java
| ... | ... | @@ -88,4 +88,16 @@ public class AudioControllerApi { |
| 88 | 88 | return new ResponseBean(ErrorEnum.SUCCESS); |
| 89 | 89 | } |
| 90 | 90 | |
| 91 | + | |
| 92 | + /** | |
| 93 | + * 易盾音频检测结果回调 | |
| 94 | + * | |
| 95 | + * @param json | |
| 96 | + */ | |
| 97 | + @PostMapping("/callbackAudio") | |
| 98 | + @ResponseBody | |
| 99 | + public void callbackYiDunAudio(String json) { | |
| 100 | + logger.info("易盾音频检测结果回调信息:{}",json); | |
| 101 | + | |
| 102 | + } | |
| 91 | 103 | } |
| 92 | 104 | \ No newline at end of file | ... | ... |
src/main/java/com/cnlive/shenhe/utils/YiDunAntiFraudUtil.java
| ... | ... | @@ -50,12 +50,14 @@ public class YiDunAntiFraudUtil { |
| 50 | 50 | */ |
| 51 | 51 | private final static String URL_RESULT = "https://as.dun.163yun.com/v1/crawler/callback/results"; |
| 52 | 52 | |
| 53 | + | |
| 54 | + | |
| 53 | 55 | /** |
| 54 | - * 文本识别图片识别产品密钥ID,产品标识 | |
| 56 | + * 文本识别 图片识别 点播音频识别产品密钥ID,产品标识 | |
| 55 | 57 | */ |
| 56 | 58 | private final static String TEXTANDIMAGESECRETID = "11c62726ba11f03f3f7d87acbe2d4f03"; |
| 57 | 59 | /** |
| 58 | - * 文本识别图片识别产品私有密钥,服务端生成签名信息使用,请严格保管,避免泄露 | |
| 60 | + * 文本识别 图片识别 点播音频识别产品私有密钥,服务端生成签名信息使用,请严格保管,避免泄露 | |
| 59 | 61 | */ |
| 60 | 62 | private final static String TEXTANDIMAGESECRETKEY = "3c0d0d44909926f46e79d3518e7dc4e7"; |
| 61 | 63 | /** |
| ... | ... | @@ -74,6 +76,14 @@ public class YiDunAntiFraudUtil { |
| 74 | 76 | * 易盾内容安全服务图片在线检测接口地址 |
| 75 | 77 | */ |
| 76 | 78 | private final static String IMAGE_RESULT = "https://as.dun.163yun.com/v4/image/check"; |
| 79 | + /** | |
| 80 | + * 业务ID,易盾根据产品业务特点分配(点播音频) | |
| 81 | + */ | |
| 82 | + private final static String AUDIOONDEMANDBUSINESSID = "1b77454593bf55607e3e7120d02c6389"; | |
| 83 | + /** | |
| 84 | + * 点播音频地址URL提交接口地址 | |
| 85 | + */ | |
| 86 | + private final static String AUDIOONDEMAND_URL_SUBMIT = "http://as.dun.163.com/v3/audio/submit"; | |
| 77 | 87 | |
| 78 | 88 | public static void main(String[] args) { |
| 79 | 89 | |
| ... | ... | @@ -81,7 +91,7 @@ public class YiDunAntiFraudUtil { |
| 81 | 91 | //getTextFilter("王八蛋"); |
| 82 | 92 | |
| 83 | 93 | //智能图片识别审核测试 |
| 84 | - JSONArray jsonArray = new JSONArray(); | |
| 94 | + /*JSONArray jsonArray = new JSONArray(); | |
| 85 | 95 | JSONObject image1 = new JSONObject(); |
| 86 | 96 | image1.put("name", UUID.randomUUID()); |
| 87 | 97 | image1.put("type", 1); |
| ... | ... | @@ -97,13 +107,72 @@ public class YiDunAntiFraudUtil { |
| 97 | 107 | image3.put("type", 1); |
| 98 | 108 | image3.put("data", "https://wjj.ys2.cnliveimg.com/769/img/0/2020/03/21/158474856886077030277.jpg"); |
| 99 | 109 | jsonArray.add(image3); |
| 100 | - getImagesFilter(jsonArray.toJSONString()); | |
| 110 | + getImagesFilter(jsonArray.toJSONString());*/ | |
| 101 | 111 | |
| 102 | 112 | //智能网页识别审核测试 |
| 103 | 113 | //getURLFilter(FILE_URL); |
| 104 | 114 | //getURLFilter("http://3g.huabian.com/api/hz0227/show/440549.html"); |
| 115 | + | |
| 116 | + //智能点播音频审核 | |
| 117 | + submitAudioOnDemandUrl("http://vod2017.qn.cnlive.com/60/vod/2020/0519/60_e74190fc4365479eaa206c5de9dbbe2d/ff8080817105357401722b713464073c_128.mp4"); | |
| 118 | + | |
| 119 | + } | |
| 120 | + | |
| 121 | + | |
| 122 | + /** | |
| 123 | + * 点播音频地址提交 | |
| 124 | + * | |
| 125 | + * @param url | |
| 126 | + * @return | |
| 127 | + */ | |
| 128 | + public static JSONObject submitAudioOnDemandUrl(String url) { | |
| 129 | + try { | |
| 130 | + Map<String, String> params = new HashMap<>(); | |
| 131 | + // 1.设置公共参数 | |
| 132 | + params.put("secretId", TEXTANDIMAGESECRETID); | |
| 133 | + params.put("businessId", AUDIOONDEMANDBUSINESSID); | |
| 134 | + params.put("version", "v3.1"); | |
| 135 | + params.put("timestamp", String.valueOf(System.currentTimeMillis())); | |
| 136 | + params.put("nonce", String.valueOf(new Random().nextInt())); | |
| 137 | + | |
| 138 | + // 2.设置私有参数 | |
| 139 | + params.put("url", "http://test.shen.cnlive.com/api/audio/callbackAudio"); | |
| 140 | + params.put("callbackUrl", url); | |
| 141 | + | |
| 142 | + // 3.生成签名信息 | |
| 143 | + String signature = YiDunAntiFraudUtil.genSignature(TEXTANDIMAGESECRETKEY, params); | |
| 144 | + params.put("signature", signature); | |
| 145 | + | |
| 146 | + // 4.发送HTTP请求,这里使用的是HttpClient工具包,产品可自行选择自己熟悉的工具包发送请求 | |
| 147 | + String s = HttpClientUtils.post_str(AUDIOONDEMAND_URL_SUBMIT, params); | |
| 148 | + logger.info("向易盾提交点播音频检测地址返回的结果:{}", s); | |
| 149 | + | |
| 150 | + JSONObject jsonObject = JSONObject.parseObject(s); | |
| 151 | + int code = jsonObject.getIntValue("code"); | |
| 152 | + String msg = jsonObject.getString("msg"); | |
| 153 | + if (code == 200 && "ok".equals(msg)) { | |
| 154 | + return jsonObject; | |
| 155 | + } | |
| 156 | + } catch (Exception e) { | |
| 157 | + e.printStackTrace(); | |
| 158 | + } | |
| 159 | + return null; | |
| 105 | 160 | } |
| 106 | 161 | |
| 162 | + | |
| 163 | + | |
| 164 | + | |
| 165 | + | |
| 166 | + | |
| 167 | + | |
| 168 | + | |
| 169 | + | |
| 170 | + | |
| 171 | + | |
| 172 | + | |
| 173 | + | |
| 174 | + | |
| 175 | + | |
| 107 | 176 | /** |
| 108 | 177 | * 智能文本审核 |
| 109 | 178 | * | ... | ... |