请求数据格式为post
hhttp://ip:port/join/secure/send
参数 | 类型 | 传输方式 | 描述 |
---|---|---|---|
appId | String | Http头信息传输 | 用户Appid(必填) |
gzip | String | Http头信息传输 | 是否压缩,on:压缩 |
encode | String | Http头信息传输 | 默认UTF-8 |
timestamp | String | 时间戳(必填,提交时间) 格式:yyyyMMddHHmmss 14位(保证跟北京时间误差1分钟之内) | |
content | String | 语音内容(必填,最多200字) | |
mobiles | String | 手机号(必填)最多500个,使用英文逗号分隔 | |
customVoiceIds | String | 自定义消息ID(选填) 最长64位 与手机号一一对应 最多500个,使用英文逗号分隔 | |
smsContent | String | (选填)短信内容 | |
triggerConditions | String | (必填)短信触发条件, 3-按键,4-接通时间到达配置时间时 | |
keyContent | String | (选填)按键触发短信按键(数字0-9,当triggerConditions为3时必填) | |
connectTime | String | (选填)接通时间到达配置时间6-60,按键为4时必填 |
1、将参数拼装成json串: { "voiceContent ":"亿美你好”, "timestamp":”20190623111159”, "mobiles":”15920150204,13856042527”, “customJoinIds”:”158245852155,56525866325”, “smsContent”:”联系客服电话号码为:138xxxxxxxx”, “triggerConditions”:”3”, “keyContent”:”2”, “connectTime”:”30” } 2、将json串转化为UTF-8编码的byte数组 Byte[] data = json.toBytes[“UTF-8”]; 3、如果需要gzip压缩,则压缩数据,并放入标示,[非必需步骤] data =gzip.com (data); http.setHead("gzip","on"); 4、通过AES加密 data = AES. encryption (secretKey,data,算法); 5、将appId放入http head http.setHead("appId",appId); 6、通过http post方法传输 Byte[] response = http.post(url,data);
响应数据格式为Json。
参数 | 类型 | 传输方式 | 描述 |
---|---|---|---|
result | String | Http头信息传输 | 请求状态码,详见附录《接口状态码表》 |
mobile | String | 手机号 | |
voiceId | String | 消息ID | |
customVoiceId | String | 客户自定义vocieID |
1、从http头信息获取请求状态,如果code不是SUCCESS,不用进行下面几步 String code = http.getHead("result"); 2、从响应流获取响应数据,并解密 Byte[] data = Response.getdata(); data = AES. decryption (secretKey, data,算法); 3、如果请求信息中有压缩标示,返回的数据也是压缩过的,需要解压缩;[非必须步骤] data = GZIP.dcom(data); 4、将数据转换成JSON串 String json = new String(data,"UTF-8"); [ { "joinId":"156134484404100100", "mobile":"15902010205", "customJoinId":"2018010709302914" } ]