代码改变世界

通用短信平台接口

2010-02-25 13:16  贺臣  阅读(6269)  评论(6编辑  收藏  举报

之前看到很多网站和企业管理平台都有一个在线发短信的功能。自己就一直琢磨着要自己的网站上添加这样一个功能。昨天联系了一家短信发送代理商。试用了一下他们接口,还真不错。在这里我们不去条论它的商业价值了,我们简单的介绍一下这个接口的试用方法。

 

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


作者:情缘
出处:http://www.cnblogs.com/qingyuan/
关于作者:从事仓库,生产软件方面的开发,在项目管理以及企业经营方面寻求发展之路
版权声明:本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文链接。
联系方式: 个人QQ  821865130 ; 仓储技术QQ群 88718955,142050808 ;
吉特仓储管理系统 开源地址: https://github.com/hechenqingyuan/gitwms