亿美软通

发送个性模板短信接口

请求

链接

http://ip:port/inter/sendTemplateVariableSMS

参数

参数 类型 传输方式 描述
appId String http头信息传输 用户Appid(必填)
gzip String http头信息传输 是否启用GZIP压缩【非必填】on :是
encode String http头信息传输 字符集【非必填】不填,默认UTF-8编码集,此字符集必须与实际传输数据字符集相同
mobile String 10.将所有参数拼装成json串后
; 11.将json串进行AES加密;
12.加密后的byte数组通过post直接传输;
手机号 (必填)最多500个
customSmsId String 自定义消息ID(选填)32位与手机号一一对应
content String 变量键值对
templateId String 模板 id 不能为空
timerTime String 定时发送时间(选填,定时时间在 90 天之内) 格式:yyyy-MM-dd HH:mm:ss 如果不填,则为及时发送 多条,与手机号一一对应
extendedCode String 扩展码(选填) 最长支持12位,如果最终号码长度超长,会截取扩展码,请根据我司建议位数提交 多条,与手机号一一对应
requestTime long 请求时间(必填) 格式:时间毫秒数 安全验证字段,防止同一个请求重复提交; 短信平台根据requestTime与requestValidPeriod共同判断请求是否有效,针对无效的请求,短信平台响应错误; 判断方法:请求时间 + 请求有效时间 > 当前时间 ? 有效 : 无效;
requestValidPeriod int 请求有效时间(必填)[单位:秒] 描述同上

示例

  • 1、将参数拼装成json串:
    {
    	"smses": [{
    		"mobile": "15903201025",
    		"customSmsId": "1592875962975",
    		"content": {
    			"money": "10983.4",
    			"name": "王先生"
    		}
    	}, {
    		"mobile": "15903201025",
    		"customSmsId": "1592875962975",
    		"content": {
    			"money": "26985.4",
    			"name": "李先生"
    		}
    	}],
    	"templateId": "22222",
    	"timerTime": null,
    	"extendedCode": "111",
    	"requestTime": 1592875962975,
    	"requestValidPeriod": 60
    }
    
  • 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,算法);
  • 将appId放入http head:http.setHead(“appId”,appId);
  • 通过http post方法传输:Byte[] response = http.post(url,data);
TOP

响应

参数

参数 类型 传输方式 描述
result String http头信息传输 请求状态码,详见本文档《4.接口状态码表》 当result不是SUCCESS时,不会响应下面参数数据。
mobile String 传输过来的数据是加密后的byte数组 手机号
多个
smsId String 消息ID
多个,与mobile一对一
customSmsId String 客户自定义SMSID
多个,与mobile一对一

示例

  • 1、从http头信息获取请求状态,如果code不是SUCCESS,不用进行下面几步;String code = http.getHead(“result”);
  • 2、从响应流获取响应数据,并解密; Byte[] data = Response.getdata(); data = AES. decryption (secretKey, data,算法);
  • 3、如果请求信息中有压缩标示,返回的数据也是压缩过的,需要解压缩;[非必须步骤]
  • 4、将数据转换成JSON串String json = new String(data,”UTF-8”);
    [
    {
    	"mobile":"15538850000",
    	"smsId":"20170392833833891100",
    	"customSmsId":"20170392833833891100"
    },{
    	"mobile":"15538850001",
    	"smsId":"20170392833833892100",
    	"customSmsId":"20170392833833891100"
    	    	    }
    ]
    								
TOP