请求数据格式为post
http://ip:port/voice/secure/templateVariableSend
参数 | 类型 | 传输方式 | 描述 |
---|---|---|---|
appId | String | 用户Appid(必填) | |
timestamp | String | Http头信息传输 | 时间戳(必填,提交时间) 格式:yyyyMMddHHmmss 14位(保证跟北京 时间误差1分钟之内) |
sign | String | Http头信息传输 | 签名(必填) 格式:md5(appId+ secretKey + timestamp) 32位 |
templateId | String | 模板id | |
variables | List
|
描述变量和手机号对应关系 | |
smsContent | String | (选填)短信内容 | |
triggerConditions | String | (必填)短信触发条件, 3-按键,4-接通时间到达配置时间时 | |
keyContent | String | (选填)按键触发短信按键(数字0-9, 当triggerConditions为3时必填) | |
connectTime | String | (选填)接通时间到达配置时间6-60,按键为4时必填 | |
MobileVariable | |||
mobiles | String | 手机号(必填)最多500个,使用英文逗号分隔 | |
variable | Map
|
描述文本变量和变量值对应关系 | |
customJoinIds | String | 自定义消息ID(选填)最长64位 与手机号一一对应 最多500个,使用英文逗号分 隔 |
1、将参数拼装成json串: { "variables": [{ "mobile": "15350706525", "variable": { "age": "12", "name": "张三" }, "customVoiceId": "4567891230" },{ "mobile": "15350706500", "variable": { "age": "85", "name": "李四" }, "customVoiceId": "4343556566" }], "triggerConditions": "3", "connectTime": "6", "appId": "EUCP-EMY-VOC1-ZUY0W", "sign": "ee2422919f6113a8be3a0a95252454f1", "smsContent": "欢迎您的到来", "keyContent": "4", "templateId": "1593582909402002000", "timestamp": "20200820095405" } 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"); [ { "voiceId":"156134219456600100", "mobile":"15902010205", "customVoiceId":"2018010709302911" }, { "voiceId":"156134219456601100", "mobile":"15903050206", "customVoiceId":"2018010709302912" } ]