简单的介绍短信接口的例子

简单的介绍短信接口的例子,如有需要可以下载接口演示版
发送短信,<=0返回失败.大于0成功条数,个人的。企业ID为0

http://gateway.woxp.cn:6630/gb2312/web_api/?x_eid=企业ID&x_uid=账号&x_pwd_md5=登陆密码MD5值&x_ac=10&x_gate_id=300&x_target_no=手机号码&x_memo=短信内容

提示:HTTP调用URL接口时, 参数值必须URL编码后再调用

--x_eid企业代码,个人账号值为0
--x_gate_id值为300.代表组合通道
--x_target_no可以多个号码最多100个每次。之间用[,]分开。例如:15910011001,1591061000,15912341234
--x_memo短信内容70字
--查询余额  
http://gateway.woxp.cn:6630/gb2312/web_api/?x_eid=企业ID&x_uid=账号&x_pwd_md5=登陆密码MD5值&x_ac=30&x_gate_id=300
1. --ASP 调用例子-------------------------------------------------------------------------------------------
<%
'常用函数
'输入url目标网页地址,返回值getHTTPPage是目标网页的html代码
function getHTTPPage(url)
dim Http
set Http=server.createobject("MSXML2.XMLHTTP")
Http.open "GET",url,false
Http.send()
if Http.readystate<>4 then 
exit function
end if
getHTTPPage=bytesToBSTR(Http.responseBody,"GB2312")
set http=nothing
if err.number<>0 then err.Clear 
end function
Function BytesToBstr(body,Cset)
dim objstream
set objstream = Server.CreateObject("adodb.stream")
objstream.Type = 1
objstream.Mode =3
objstream.Open
objstream.Write body
objstream.Position = 0
objstream.Type = 2
objstream.Charset = Cset
BytesToBstr = objstream.ReadText 
objstream.Close
set objstream = nothing
End Function

'自已组合一下提交的URL加入自己的账号和密码MD5
sms_url="http://gateway.woxp.cn:6630/gb2312/web_api/?x_eid=&x_uid=&x_pwd_md5=&x_ac=10&x_gate_id=101&x_target_no=&x_memo="
response.write getHTTPPage(sms_url)
%>

2.--C# 调用---------------------------------------------------------------------------------------------
//需要用到的命名空间
using System.Net;
using System.IO;
using System.Text;
//调用时只需要把拼成的URL传给该函数即可。判断返回值即可
public string GetHtmlFromUrl(string url)
{
string strRet = null;

if(url==null || url.Trim().ToString()=="")
{
return strRet;
}
string targeturl = url.Trim().ToString();
try
{
HttpWebRequest hr = (HttpWebRequest)WebRequest.Create(targeturl);
hr.UserAgent = "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)";
hr.Method = "GET";
hr.Timeout = 30 * 60 * 1000;
WebResponse hs = hr.GetResponse();
Stream sr = hs.GetResponseStream();
StreamReader ser = new StreamReader(sr, Encoding.Default);
strRet = ser.ReadToEnd(); 
}
catch (Exception ex)
{
strRet = null;
}
return strRet;
}

3.---JAVA调用----------------------------------------------------------------------------------------------
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.UnsupportedEncodingException;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLEncoder;


/**
* 发送短信基础类
* @author administration
*
*/
public class SmsBase {
private Integer x_eid=0;
private String x_uid="username";
private String x_pwd_md5="md5pass";
private Integer x_gate_id=300;

public String SendSms(String mobile,String content) throws UnsupportedEncodingException{
Integer x_ac=12;//发送信息
HttpURLConnection httpconn = null;
String result="-20";
String memo = content.trim();
StringBuilder sb = new StringBuilder();
sb.append("http://gateway.woxp.cn:6630/utf8/web_api/?x_eid=");
sb.append(x_eid);
sb.append("&x_uid=").append(x_uid);
sb.append("&x_pwd_md5=").append(x_pwd_md5);
sb.append("&x_ac=").append(x_ac);
sb.append("&x_gate_id=").append(x_gate_id);
sb.append("&x_target_no=").append(mobile);
sb.append("&x_memo=").append(URLEncoder.encode(memo, "utf-8"));
try {
URL url = new URL(sb.toString());
httpconn = (HttpURLConnection) url.openConnection();
BufferedReader rd = new BufferedReader(new InputStreamReader(httpconn.getInputStream()));
result = rd.readLine();
rd.close();
} catch (MalformedURLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} finally{
if(httpconn!=null){
httpconn.disconnect();
httpconn=null;
}

}
return result;
}
}
------4 PHP----------------------------------------------------------------------------------
$url='http://gateway.woxp.cn:6630/gb2312/web_api/?x_eid=&x_uid=&x_pwd_md5=&x_ac=10&x_target_no=&x_memo=test&x_gate_id=300';

echo Get($url);
function Get($url)
{
if(function_exists('file_get_contents'))
{
$file_contents = file_get_contents($url);
}
else
{
$ch = curl_init();
$timeout = 5;
curl_setopt ($ch, CURLOPT_URL, $url);
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, $timeout);
$file_contents = curl_exec($ch);
curl_close($ch);
}
return $file_contents;
}

5.VB.NET-------------------------------------------------------------------------------------
'调用发送短信,NoList接收号码.多个之间用,分开,Memo内容70字
Public Function SendSMS(ByVal NoList As String, ByVal Memo As String) As String 
Dim Url As String = "http://gateway.woxp.cn:6630/gb2312/web_api/?x_eid=企业ID&x_uid=会员帐号&x_pwd_md5=MD5登录密码&x_ac=10&x_gate_id=300&x_memo=" & Memo & "&x_target_no=" & NoList
Dim webClient As New Net.WebClient()
Try
'Dim responseData As Byte() = 
Dim srcString As String = webClient.DownloadString(Url)
Return srcString
Catch
Return "-444"
End Try
End Function



网页中参数详细列表
编号 参数名称 参数说明是否必须
1x_eid会员企业ID号,个人用户为0
2x_uid会员账号
3x_pwd_md5登陆密码的MD5值
4x_new_pwd修改密码时需要此参数。代表要变更的新密码
5x_sub_id扩展子号码,发送短信时需要,根据通道是否支持子号码扩展而提供
6x_target_no接受者号码,多个号码用“,”分开
7x_memo短信发送内容.长度请参考通道说明(必须使用URL编码)
8x_send_time定时短信,格式YYYY-MM-DD HH:MM:SS,24小时制.值为空或无该参数代表立即发送
9x_gate_id发送短信时通道ID,通道发送失败可以切换其它通道,无该值系统使用默认通道
10x_ac本此提交的行为。比如是发送短信。查询余额,参数值如下



参数x_ac(提交动作)值
编号说明
110发送短信。返回失败或成功
212长短信发送,最多支持450字符发送.64字每条计费.(请使用POST方式提交参数)
320查询上行短信,分主动(客户自已获取)和被动(我们推送到指定地址)两种方式
1.被动接收客户.需要提交接收上行短信的URL地址(POST+XML)方式内容utf-8编码
2.主动接收短信,直接调用AC=20即可.
被动接收提示: .NET文件调用.需要在头设置ValidateRequest="false"参数.否则返回HTTP 500服务器内部错误
430查询当前户剩余条数
540获取指定通道的关键字屏蔽字符串,发送前先过滤关键字再提交



参数x_ac=10发送短信时。返回值
编号说明
1大于0发送成功,此次发送成功条数
2-1参数无效
3-2通道不存在或者当前业务不支持此通道
4-3定时格式错误
5-4接收号码无效
6-5提交号码个数超过上限,每个通道都有批量提交的上限.详细值请参考通道说明
7-6发送短信内容长度不符合要求,参考通道要求长度
8-7当前账户余额不足
9 -8网关发送短信时出现异常
10 -9用户或者密码没输入
11 -10企业ID或者会员账号不存在
12 -11密码错误
13 -12账户锁定
14 -13网关状态关闭
15 -14验证用户时执行异常
16 -15网关初始化失败
17-16当前IP已被系统屏蔽,可能是与您设置的接入IP不同或者是失败次数太多
18-17发送异常
19-18账号未审核
20-19当前时间不允许此通道工作,主要对群发通道限制
21-20传输密钥未设置,请登陆平台设置
22-21提取密钥异常
23-22签名验证失败
24-23发现屏蔽关键字
25-100到-199运营商返回失败代码

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
接口说明:   这里介绍的是利用清扬短信服务器软件发短信的接口。   清扬短信服务器软件是一个利用了短信猫(Gsm Modem)来收发短信的软件,并支持繁体、日语等多语言短信发送,在某些环境下,比如:在隔离网络中,似乎是收发短信的主要选择。   北京清扬创新提供了一个qyVDevApi.dll,用此dll可建立和短信服务器的沟通。 API接口介绍   int qvdSendSm( void * p0, WCHAR * sm, char * phoneNo, HWND hWnd_notify, int iUsrData ); 参数说明:      p0, 保留      sm, 要发送短信文本, 字符串      phoneNo, 手机号码, 要加区号; 比如: 8613146630221      hWnd_notify, 可收发送后通知的窗口句柄      iUsrData, 一个用户定义的标识 注意: 1.短信服务器发送短信后,将用WM_COPYDATA的消息发送一个响应包到hWnd_notify, 响应包格式如下:    typedef struct __qvdSmResp_t {      int id;      int iErr;    } QVD_SM_RESP; 2. hWnd_notify不是必需的,如果对响应包不感兴趣,不用传入。 如何使用: 1.硬件:把自备短信猫GSM MODEM接入电脑。选择合适的型号,请参看:如何为清扬即时通信挑选短信猫(GSM MODEM)和测试发送短信。 2.软件:用清扬短信服务器软件控制短信发送短信。下载软件,请参看:清扬短信服务器软件快速入门。也有flash视频教程可以更直观地掌握如何使用。 3.软件设置:在利用API向短信服务器发送短信前,要打开菜单[配置]/[个性化策略]里,设置“允许第三方软件发送短信”,(参看http://www.qycx.com/qyexample-sm.htm)。同时注意: 此设置必须在管理员权限下才能设置(否则该设置自动变灰)。 4.编程:使用发送短信API接口编译测试。API接口的例子程序,请参看本文章:清扬短信服务器发送短信API接口说明和例子程序,下载例子:qySrc_smDemo,可以编译测试。该例子qySrc_smDemo利用动态装载将dll装入,找到相关函数地址,即可在后面调用。在使用时,注意将dll目录下的qyVDevApi.dll拷在生成的qyVDevSample.exe同一个目录下。 其他说明: 硬件上,如果短信猫gsm modem的波特率不是9600,请在清扬短信服务器软件管理界面的菜单[配置]/[个性化配置]里,重设波特率(baud),(参看http://www.qycx.com/qyexample-sm.htm)。
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值