之前看到很多网站和企业管理平台都有一个在线发短信的功能。自己就一直琢磨着要自己的网站上添加这样一个功能。昨天联系了一家短信发送代理商。试用了一下他们接口,还真不错。在这里我们不去条论它的商业价值了,我们简单的介绍一下这个接口的试用方法。
1.注册帐户
我使用的这个接口,是要在他们平台上注册的。平台地址: http://ad.smsadmin.cn/
注册这个平台账号之后,它们会给你十条短信试用。还是挺人性化的,对于我们来说学到东西又不花钱,哈哈。
平台发送短信都是基于http协议的,因此我们可以很容易的将这个功能集成到我们的Web项目中来。
2.Get方式发送
测试URL: http://www.smsadmin.cn/smsmarketing/wwwroot/api/get_send/
发送类型: GET
参数: ?uid=userid&pwd=password&mobile=telephone&msg=msgcontent&dtime=time
参数说明: uid 是指你在这个平台上注册的账号
pwd 即为平台登录密码
mobile 是要发送人的手机号码。可以进行短信群发,发送号码用英文";"隔开
msg 是短信发送的内容
dtime 指定短信发送的时间 如果时间为null 则是立即发送 (2010-2-25 13:28:00)
返回参数: 0发送成功
2余额不足
1用户名或密码错误
3超过发送最大量100条
4此用户不允许发送
5手机号或发送信息不能为空
6.包含敏感字符
备注: GET 接口目前只支持100个号码
2.POST方式发送
测试URL: http://www.smsadmin.cn/smsmarketing/wwwroot/api/post_send/
发送类型: POST
参数: ?uid=userid&pwd=password&mobile=telephone&msg=msgcontent&dtime=time
参数说明: uid 是指你在这个平台上注册的账号
pwd 即为平台登录密码
mobile 是要发送人的手机号码。可以进行短信群发,发送号码用英文";"隔开
msg 是短信发送的内容
dtime 指定短信发送的时间 如果时间为null 则是立即发送(2010-2-25 13:28:00)
返回参数: 0发送成功
2余额不足
1用户名或密码错误
3超过发送最大量10000条
4此用户不允许发送
5手机号或发送信息不能为空
6.包含敏感字符
备注: GET 接口目前只支持1000个号码
3. 资费查询接口
URL: http://www.smsadmin.cn/smsmarketing/wwwroot/api/user_info/?uid=ID&pwd=密码
看过上面两个接口 这个接口的参数就不用说了。因为短信平台是收费的,我们可以查看资费详细说明
4. 集成到Web平台
上面的接口组装好之后得到一个URL串。然后请求这个URL串就可以了
java 平台:
代码
1 /**
2 * 远程获取数据
3 *
4 * @param url
5 * 远程请求的路径
6 * @param oriEncoding
7 * 原始的编码方式
8 * @param targetEncoding
9 * 指定的编码方式
10 * @return 返回值
11 * @throws IOException
12 * 抛出IO异常
13 */
14 public String getContent(String url, String oriEncoding,
15 String targetEncoding) throws IOException {
16 URL u = new URL(url);
17 URLConnection uc = u.openConnection();
18 BufferedReader in;
19 if (oriEncoding == null || oriEncoding.length() == 0) {
20 in = new BufferedReader(new InputStreamReader(uc.getInputStream()));
21 } else {
22 in = new BufferedReader(new InputStreamReader(uc.getInputStream(),
23 oriEncoding));
24 }
25 //in = new BufferedReader(new InputStreamReader(uc.getInputStream()));
26 String line;
27 StringBuilder sb = new StringBuilder();
28 while ((line = in.readLine()) != null) {
29 sb.append(line);
30 }
31 log.info(sb.toString());
32 return sb.toString();
33 }
.NET 平台
使用C#请求和java 请求原理是一样的。C# 中试用HttpWebReqeust 和HttpWebResponse 这 两个对象。
同样是请求然后获得网络流转码获得返回状态。这里不再过多讲解
这些接口都是本人测试过了的,感觉还不错。就是有点舍不得花钱 。希望这个接口能够对读者有用。
对于短信平台充值问题和业务套餐问题可以打电话仔细哈: 02133197104