天天看點

asp短信接口開發經驗及具體開發實作

一、頭部配置調用

<!--#include file="md5.asp"-->
           
<% url=<a target=_blank href="http://sdk.entinfo.cn:8060/webservice.asmx" target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow" >http://sdk.entinfo.cn:8060/webservice.asmx</a>
           
host="sdk.entinfo.cn:8060"
           
sn="SDK-SSD-010-00009" '替換成您自己的序列号
           
password="xxxxx"  '替換成您自己的密碼 
           
pwd=MD5(sn & password) %>
           

二、查詢短信餘額balance()

參數名稱 說明 備注
Sn 軟體序列号 格式XXX-XXX-XXX-XXXXX
Pwd 密碼 md5(sn+password) 32位大寫 密文 +表示連接配接

函數傳回值:String(餘額)

接口位址:http://sdk.entinfo.cn:8060/webservice.asmx?op=balance

示例:序列号SDK-SSD-010-00001 密碼 xxxxxx

參數輸入:

SN= SDK-SSD-010-00001

PWD= 3B5D3C427365F40C1D27682D78BB31E0

示例傳回結果: 餘額79109條短信

XML格式:

asp短信接口開發經驗及具體開發實作

具體函數ASP實作:

function balance()
	SoapRequest="<?xml version="&CHR(34)&"1.0"&CHR(34)&" encoding="&CHR(34)&"utf-8"&CHR(34)&"?>"& _
	"<soap:Envelope xmlns:xsi="&CHR(34)&"http://www.w3.org/2001/XMLSchema-instance"&CHR(34)&" "& _
	"xmlns:xsd="&CHR(34)&"http://www.w3.org/2001/XMLSchema"&CHR(34)&" "& _
	"xmlns:soap="&CHR(34)&"http://schemas.xmlsoap.org/soap/envelope/"&CHR(34)&">"& _
	"<soap:Body>"& _
	"<balance xmlns="&CHR(34)&"http://tempuri.org/"&CHR(34)&">"& _
	"<sn>"&sn&"</sn>"& _
	"<pwd>"&pwd&"</pwd>"& _
	"</balance>"& _
	"</soap:Body>"& _
	"</soap:Envelope>"
	Set xmlhttp = server.CreateObject("Msxml2.XMLHTTP")
	xmlhttp.Open "POST",url,false
	xmlhttp.setRequestHeader "Content-Type", "text/xml;charset=utf-8"
	xmlhttp.setRequestHeader "HOST",host
	xmlhttp.setRequestHeader "Content-Length",LEN(SoapRequest)
	xmlhttp.setRequestHeader "SOAPAction", "http://tempuri.org/balance"
	xmlhttp.Send(SoapRequest)
	If xmlhttp.Status = 200 Then
	Set xmlDOC = server.CreateObject("MSXML.DOMDocument")
	xmlDOC.load(xmlhttp.responseXML)
	balance=xmlDOC.documentElement.selectNodes("//balanceResult")(0).text
	Set xmlDOC = nothing
	Else
	balance=xmlhttp.Status&" "&xmlhttp.StatusText
	End if
	Set xmlhttp = Nothing
end function 
           

調用:

<% Response.Write("目前賬戶餘額為"&balance()&"條短信") %>
           

三、普通群發短信mt(mobile,content,ext,stime,rrid)

參數名稱 說明 是否必須    備注
Sn 軟體序列号 格式XXX-XXX-XXX-XXXXX
Pwd 密碼 md5(sn+password) 32位大寫密文
Mobile 手機号 必填(支援10000個手機号,建議<=5000)多個英文逗号隔開
Content 内容 支援長短信(詳細請看長短信扣費說明)
Ext 擴充碼 例如:123(預設置空)
stime 定時時間 例如:2010-12-29 16:27:03(非定時置空)
Rrid 唯一辨別 最長18位,隻能是數字或者 字母 或者數字+字母的組合

函數傳回值:String(唯一辨別,即目前發送短信批次的唯一辨別,和rrid對應,如為空則傳回系統生成的rrid),此方法推薦用于大量群發.内容相同手機号多個的情況。

接口位址:http://sdk.entinfo.cn:8060/webservice.asmx?op=mt

示例1

SN= SDK-SSD-010-00001

PWD=3B5D3C427365F40C1D27682D78BB31E0

Mobile:139***404,138***213…………….

Content:測試

Ext: ""

Stime: ""

Rrid: ""

輸出結果:

XML格式:

asp短信接口開發經驗及具體開發實作

具體函數ASP實作:

'mt群發短信
function mt(mobile,content,ext,stime,rrid)
	SoapRequest="<?xml version="&CHR(34)&"1.0"&CHR(34)&" encoding="&CHR(34)&"utf-8"&CHR(34)&"?>"& _
	"<soap:Envelope xmlns:xsi="&CHR(34)&"http://www.w3.org/2001/XMLSchema-instance"&CHR(34)&" "& _
	"xmlns:xsd="&CHR(34)&"http://www.w3.org/2001/XMLSchema"&CHR(34)&" "& _
	"xmlns:soap="&CHR(34)&"http://schemas.xmlsoap.org/soap/envelope/"&CHR(34)&">"& _
	"<soap:Body>"& _
	"<mt xmlns="&CHR(34)&"http://tempuri.org/"&CHR(34)&">"& _
	"<sn>"&sn&"</sn>"& _
	"<pwd>"&pwd&"</pwd>"& _
	"<mobile>"&mobile&"</mobile>"& _
	"<content>"&content&"</content>"& _
	"<ext>"&ext&"</ext>"& _
	"<stime>"&stime&"</stime>"& _
	"<rrid>"&rrid&"</rrid>"& _
	"</mt>"& _
	"</soap:Body>"& _
	"</soap:Envelope>"
	
	Set xmlhttp = server.CreateObject("Msxml2.XMLHTTP")
	xmlhttp.Open "POST",url,false
	xmlhttp.setRequestHeader "Content-Type", "text/xml;charset=utf-8"
	xmlhttp.setRequestHeader "HOST",host
	xmlhttp.setRequestHeader "Content-Length",LEN(SoapRequest)
	xmlhttp.setRequestHeader "SOAPAction", "http://tempuri.org/mt"
	xmlhttp.Send(SoapRequest)
	If xmlhttp.Status = 200 Then
	
	Set xmlDOC = server.CreateObject("MSXML.DOMDocument")
	xmlDOC.load(xmlhttp.responseXML)
	mt=xmlDOC.documentElement.selectNodes("//mtResult")(0).text
	Set xmlDOC = nothing
	Else
	mt=xmlhttp.Status&" "&xmlhttp.StatusText
	End if
	Set xmlhttp = Nothing
end function 
           

調用:

<% 
	dim mobile,content
	mobile=trim(request.Form("mobile"))
	stime=trim(request.Form("stime"))
	content=trim(request.Form("content"))		
	Verify=mt(mobile,content&"[雷雨科技]","",stime,"")
	if left(Verify,1)="-" then%>
	發送失敗,請檢視webservice傳回值對照表。傳回值為:
	<%
	Response.Write(Verify)
	%>
	<% else %>
	發送成功
	<%	end if  %>
           

四、個性群發短信gxmt(mobile,content,ext,stime,rrid)

參數名稱 說明 是否必須    備注
Sn 軟體序列号 格式XXX-XXX-XXX-XXXXX
Pwd 密碼 md5(sn+password)32位大寫密文
Mobile 手機号 必填(建議一次最多送出1000個)
Content 内容 支援長短信(詳細請看長短信扣費說明)
Ext 擴充碼 例如:123(預設置空)
Stime 定時時間 例如: 2010-12-30 9:23:20(非定時置空)
Rrid 唯一辨別 最長18位

函數傳回值:String (唯一辨別,即目前發送短信批次的唯一辨別,和rrid對應,如為空則傳回系統生成的rrid,此處的rrid和mt發送的rrid用法相同,此方法用于發送多條内容不相同手機号多個的情況)

接口位址:http://sdk.entinfo.cn:8060/webservice.asmx?op=gxmt

需要注意:

1、手機号以英文逗号隔開

2、發送内容若含有小逗号,整條内容URLGB2312編碼後,以英文逗号隔開,個數和手機号個數一緻

3、擴充碼可以為空,單個,或多個(以英文逗号隔開,個數和手機号個數一緻)

4、定時時間可以為空,單個,或多個(以英文逗号隔開,個數和手機号個數一緻)

傳回結果:

XML格式:

示例1:

輸入參數:

SN= SDK-SSD-010-00001

PWD=3B5D3C427365F40C1D27682D78BB31E0

Mobile:139***404,138***213

Content: %B2%E2%CA%D41, %B2%E2%CA%D42

Ext:(預設,請置空)

Stime: (如果不需要定時,請置空)

Rrid:此處為空(如果填寫則系統傳回填寫内容)

輸出結果:

XML格式:

asp短信接口開發經驗及具體開發實作

具體函數ASP實作:

'gxmt群發短信
function gxmt(mobile,content,ext,stime,rrid)
	SoapRequest="<?xml version="&CHR(34)&"1.0"&CHR(34)&" encoding="&CHR(34)&"utf-8"&CHR(34)&"?>"& _
	"<soap:Envelope xmlns:xsi="&CHR(34)&"http://www.w3.org/2001/XMLSchema-instance"&CHR(34)&" "& _
	"xmlns:xsd="&CHR(34)&"http://www.w3.org/2001/XMLSchema"&CHR(34)&" "& _
	"xmlns:soap="&CHR(34)&"http://schemas.xmlsoap.org/soap/envelope/"&CHR(34)&">"& _
	"<soap:Body>"& _
	"<gxmt xmlns="&CHR(34)&"http://tempuri.org/"&CHR(34)&">"& _
	"<sn>"&sn&"</sn>"& _
	"<pwd>"&pwd&"</pwd>"& _
	"<mobile>"&mobile&"</mobile>"& _
	"<content>"&content&"</content>"& _
	"<ext>"&ext&"</ext>"& _
	"<stime>"&stime&"</stime>"& _
	"<rrid>"&rrid&"</rrid>"& _
	"</gxmt>"& _
	"</soap:Body>"& _
	"</soap:Envelope>"
	
	Set xmlhttp = server.CreateObject("Msxml2.XMLHTTP")
	xmlhttp.Open "POST",url,false
	xmlhttp.setRequestHeader "Content-Type", "text/xml;charset=utf-8"
	xmlhttp.setRequestHeader "HOST",host
	xmlhttp.setRequestHeader "Content-Length",LEN(SoapRequest)
	xmlhttp.setRequestHeader "SOAPAction", "http://tempuri.org/gxmt"
	xmlhttp.Send(SoapRequest)
	If xmlhttp.Status = 200 Then
	
	Set xmlDOC = server.CreateObject("MSXML.DOMDocument")
	xmlDOC.load(xmlhttp.responseXML)
	gxmt=xmlDOC.documentElement.selectNodes("//gxmtResult")(0).text
	Set xmlDOC = nothing
	Else
	gxmt=xmlhttp.Status&" "&xmlhttp.StatusText
	End if
	Set xmlhttp = Nothing
end function 
           

調用:

<%   Response.Write(gxmt("18636800125,18636924700","張三您好,您本月實發工資3999元。[雷雨科技],李四您好,您本月實發工資4999元。[雷雨科技]","","",""))  %>
           

五、webservice傳回集合對照表:

傳回值 傳回值說明 問題描述
-2  帳号/密碼不正确 1.序列号未注冊2.密碼加密不正确3.密碼已被修改4.序列号已登出
-4 餘額不足支援本次發送(或者修改密碼長度不正确) 餘額不足(或者修改密碼長度不在6位到10位之間)
-5 資料格式錯誤 隻能自行調試了。或與技術支援聯系
-6 參數有誤 看參數傳的是否均正常,請調試程式檢視各參數
-7 權限受限 該序列号是否已經開通了調用該方法的權限
-8 流量控制錯誤
-9 擴充碼權限錯誤 該序列号是否已經開通了擴充子号的權限,把ext這個參數置空。
-10 内容長度長 單位元組不能超過1000個字元,雙位元組不能超過500個字元
-11 内部資料庫錯誤
-12 序列号狀态錯誤 序列号是否被禁用
-14 伺服器寫檔案失敗
-17 沒有權限 如發送彩信僅限于SDK3
-19 禁止同時使用多個接口位址 每個序列号送出隻能使用一個接口位址
-20 相同手機号,相同内容重複送出
-22 Ip鑒權失敗 送出的IP不是所綁定的IP
-23 緩存無此序列号資訊
-601 序列号為空,參數錯誤
-602 序列号格式錯誤,參數錯誤
-603 密碼為空,參數錯誤
-604 手機号碼為空,參數錯誤
-605 内容為空,參數錯誤
-606 ext長度大于9,參數錯誤
-607 參數錯誤 擴充碼非數字 
-608 參數錯誤 定時時間非日期格式
-609 rrid長度大于18,參數錯誤 
-610 參數錯誤 rrid非數字
-611 參數錯誤 内容編碼不符合規範
-623 手機個數與内容個數不比對
-624 擴充個數與手機個數數
-644  rrid個數與手機個數不一緻

注:以上傳回值針對個别方法.請具體參看每個用到方法的詳細說明。

六、附加說明:

1.接口位址:

常用接口位址:http://sdk.entinfo.cn:8060/webservice.asmx (一般調用)

多線程接口位址:http://sdk.entinfo.cn:8061/webservice.asmx (java、andriod使用)

2.其它說明:

(1)開發使用的帳号必須為SDK開頭,如SDK-SSD-010-00001,帳号第一次需要調用Register方法注冊一次.僅需注冊一次即可,資訊必須真實

(2)UnRegister與Register配合使用, 連續使用不得超過10次/天;

(3)群發推薦使用接口方法 mt或者mdSmsSend (僅方法名不同);

3. 鄭重聲明:

(1)禁止相同的内容多個手機号連續一條一條送出. 否則禁用帳号,由此帶來損失由客戶自行負責.

(2)請客戶提供外網伺服器IP以便于綁定IP發送,提高賬号的安全性!

(3)在程式裡最好有配置檔案,程式自動判斷當某個接口連接配接逾時送出速度變慢時.程式可以自動切換其它的接口以下是推薦的幾個伺服器,僅接口位址不同而已.方法全部相同;

位址1:http://sdk.entinfo.cn:8060/webservice.asmx

位址2:http://sdk2.entinfo.cn:8060/webservice.asmx

這些位址都是标準的webservice位址,C#,Java客戶可以按照自己熟悉的方式去解析String   

或者

位址1:http://sdk.entinfo.cn:8060/webservice.asmx?wsdl

位址2:http://sdk2.entinfo.cn:8060/webservice.asmx?wsdl

七、示例Demo源代碼下載下傳:

DEMO  ASP版md5加密檔案  SDK通用版接口文檔  所有下載下傳

繼續閱讀