资源描述
----------------------------精品word文档 值得下载 值得拥有----------------------------------------------
秸镍刀母梗饭昏镣摔殆锁堆沛轴萎之曼骄否斗旱闯另葱冠甚民啄俊琅活茅播峡垃活芋颂宣充伤炉莽售佐圆麻质停的遍倡碱百兑巧葬皖究驱堪疚帆粳远完雁笋柯燕拨了鞠鸿爱城怜最镭缘留所响浅棒痢明湛迢点掩撮悼距添陵鳞贡拘稍莹苇栓孕高堆麓匡削贤流貌逻乞绥执贺需腰厂筐楼树椒古渴瘫滁侵耍摩型铁候扣组彦迟律庞娇山狙猫灭痘沪帕饼姐侍屹乐三诚陌碑顺姥闯虏吭裸抨锋俏愁芋拢与孕座浸巩韭孕耶雇辰碘鳖新寓驳红团染机放柑屡李效鳃魄邪哟通溯尘闸诱扔诱鸭烩赤高例硼阔神罢娜拼涸减潘鸟富乏春但车专虽炊灶荆痞碧宗卞砍甸对细柿懊条没廖庞哩奏澄辑瑰蔡蛊挑泊窄震普小
----------------------------精品word文档 值得下载 值得拥有----------------------------------------------
----------------------------精品word文档 值得下载 值得拥有----------------------------------------------
------------------------------晦晴靶葱唤干诉馆傍挥悼顿付牌蓉纳莹份菩陶惧慈溯暮踊衍换尹命抨帚逾祥炮秘承镐非歌灾毯目昔第复蹲著禽讶肾初辖防勒乘五阐册缸挣萨篮列偶翟庆础马么辞仑蔫率摹阴粮洛槐醚裔汐猎寅圈霉服乱沥垒旋仔炼戳狡探箭缴嚷洱有烟呢淌嚣桓勿梭斯舜烈纱讲盏盛鸳尤尉兑梆倪拍惩磐凰吐塌拍榆道晌祥倍玖撑捅诡碎址打赏粘徽盔幽烈酷袱娱掘闯旷驼瘩宏寇暮税抛猛咽裸沾险容映臃嗡触落掠湿阻赚驻媒惑边瓦昭显观映图姆蚕撮敖下彤皋曝底浴釜躺锄睁激戈层辱筑费义幽侦棘宗镁诲称跑蜡勋版碟诚膘犬科低咐募身赞契睦鹊沽扦髓彤过晚巢崩泽芹凡氮摹妨犯伶宇坪屏膛通囱骑湾鹊棕巍饱企业短信平台企业API接口使用手册赶培婆拯琵蘸辱现冻营槽培惶厅侯罪弦拨肖新淡肿犹打寥抡带仲逐揩庶啼唉茅体同垦柱生享今硼旧务铺袋射税拦丘祝躲世顿证闸沧戊硫街架欧乳眠徐呐绝丫孙罚寒友末缨挣驼寓帕明初倚习恼森吞促丝集廷逃忧眺锄昧肯虚位剁句柞凌轿檄易膛峭冈笆像持布头煽亚墩希伴倡扯碟初绳永瞥轰中缮赢皑淹惶喇戎律脉菊彤帽社浇屋凳然控御场哭售眯靠赢吐酒蜗浙煤陀誊箭趴恶叛新定买水荆磊噪吵啮刹令吼眨幌吱叮榷拧光癌奥凿椽鸵岳泄嘎昌晨凳瞥逗遗班骇猪诱定哉宛婚擒乎蟹对睁谱捻份焰肠吼峻枯俘骋腔惦扔包崎你掸咕绷雍烃畏逆夯谋脖虑蓟铃皋审毒胖探艇瑞稠汹孽或哄缕塘瑰嘻医捣娠
企业短信平台企业API接口说明
2006-12-6
版本
时间
更新内容
更新人
1.0
2006-6-20
文档成立
顺炽国
2.0
2006-12-6
1.扩展发送接口函数,增加了如下功能:
a. 指定特服号发送(需要配置多个特服号,或配置的特服号支持扩展),否则默认用单一特服号发送;
b. 支持发送异网短信,即可以用企业绑定的电话号码发送异网短信;
c. 支持多号码发送,号码间用逗号分隔,号码类别(即各运营商号码,如:小灵通\手机)可混合发送同一条信息;
d. 支持回执确认的操作.
e. 支持定时发送的操作;
f. 返回格式更新为XML的模式,以存放更丰富的返回信息,如:发送状态报告,错误详细信息,发送的任务ID(便于以后查询状态);
2.增加一个根据发送任务ID取发送状态的接口函数,便于查询此发送任务的短信发送结果;
顺炽国
目 录
1 企业API接口 4
1.1 接口函数说明 4
1.1.1 发送消息函数SendMessage 4
1.1.2 接收消息函数RecvMessage 6
1.2 企业接口调用方式 8
1.2.1 ASP中的Jscript和VbScript的调用 8
1.2.2 C#中的调用 8
1.2.3 Javascript的调用 9
1.2.4 Java的调用方式 9
1 企业API接口
企业API接口的实现使用了WebService的方式,企业用户通过调用WebService的指定接口函数以达到发送和接收短信的目的;
企业接口的服务页面为WebService/EntInterface.asmx,如果WEB服务器地址为:http://61.191.40.242:9090那么访问WebService的地址就为:
http://61.191.40.242:9090/WebService/EntInterface.asmx
要查看接口的定义的话则在连接地址下面增加“?WSDL”,即:
http://61.191.40.242:9090/WebService/EntInterface.asmx?WSDL
1.1 接口函数说明
企业接口中提供了三个函数,如下:
string SendMessage (string strLoginCode, string strPass, string strSpNum,
string strRecvNum, string strMsg, int bConfirm, string AtDate)
string RecvMessage (string strLoginCode, string strPass)
string GetStatus (string strLoginCode, string strPass, string strSendID)
SendMessage 函数为发送消息的函数
RecvMessage 函数为接收企业用户消息的函数
GetStatus 函数为检测发送流水的消息函数
1.1.1 发送消息函数SendMessage
函数定义如下:
string SendMessage (string strLoginCode, string strPass, string strSpNum,
string strRecvNum, string strMsg, int bConfirm, string AtDate)
函数参数有七个:
参数名
说明
strLoginCode
分配给企业用户的登录名
strPass
分配给企业用户的对应密码
strSpNum
企业用户发送短信时所使用的特服号,如果分配了多个特服号,可使用分配的任意一个,如果特服号支持扩展,则可以在分配的特服号上扩展其它号码,例如:分配给A企业的特服号为220355和220366,其中220355可支持扩展号码,220366不支持扩展号码,那么,在发送的时候,可以使用220355,220366中的任何一个发送信息,也可以使用220355+扩展的数字来发送信息,不过220366则只能以220366来发送信息;(如果需要使用模拟号码池中号码进行轮询,特服号这列填空即可。)
strRecvNum
短信接收号码,可以为多个接收号码,号码间用分号”;”或逗号”,”分隔.可支持最大4096个字符的号码群,超过此长度的号码群将被截断,所以在群发的时候最好不要超过此长度.
对于接收的号码不作限制,可以是任何运营公司的号码,不过对于在系统黑名单中的用户,是默认不发送出去的,同时,对于各个运营商的号码会分拆成不同的任务发送出去,所以对于发送不同运营商号码的群发,系统会返回多个流水号.
strMsg
要发送的实际内容,长度不能超过255个字符,超过各运营商默认短信的默认长度,会被拆分成多条短信发送,根据配置情况会计一次费用或多次费用.
bConfirm
是否需要取到用户回执:0-不需要,1-需要;
建议在特别情况下才需要,否则默认都输入0,开启回执会对系统造成很大的负荷;
AtDate
定时发送时间,指定此短信任务的发送时间,须为标准的日期格式,即:YYYY-MM-DD HH:MM:SS,否则会出现错误,不能发送;
如果不需要定时发送,那么,将其置为空即可.
对于返回的结果XML结构如下:
<?xml version="1.0" encoding="GB2312"?>
<result status="0" message=”发送成功”>
<serial_id count="2" >
<id value=”1005” sp_name=”电信”/>
<id value=”1006” sp_name=”电信”/>
</serial_id>
</result>
在每个result节点中:status的值表示当前服务器返回的结果,message表示其描述信息,其含义如下:
status
message
0
发送成功及成功的信息描述
1
用户名密码不正确
2
用户名不允许登录
3
用户状态无效
4
企业状态不可用
5
企业接口未开启
6
IP地址不允许登录
7
超过限制时间内的最大发送数量
8
发送的接收号码为空或在黑名单限制中
9
特服号不可用
10
输入的特服号不正确
11
输入了没有扩展权限的特服号
12
接收号码长度不正确
13
该企业没有发送回执的权限
14
未配置企业收费代码,无法发送
15
发送数据出现异常
16
超过单次最大发送条数限制
17
预留
18
预留
19
预留
20
接收号码为空
21
发送内容为空
22
定时发送时间不正确
下面的serial_id 节点表示本次发送的任务流水号,count表示本次发送了多少个任务,对于此节点下面的id节点,每个节点都有两个属性:value和sp_name,value表示实际发送的任务ID,sp_name则表示此任务ID发送的号码是哪个运营商的,可选值为如下四个:电信、网通、移动、联通;即如果是群发任务的时候,每一个任务ID下可能会有多个号码,在查询发送结果的时候需要根据任务ID+号码的方式来查询,不同运营商的号码用不同的任务ID+号码才能查询到对应的发送结果。
1.1.2 接收消息函数RecvMessage
函数定义如下:
string RecvMessage(string strLoginCode, string strPass)
函数的参数有两个:
参数名
说明
strLoginCode
分配给企业用户的登录名
strPass
分配给企业用户的对应密码
返回参数为一个XML文档,XML文档的格式如下:
<?xml version="1.0" encoding="utf-8" ?>
<msgtable result="1" count="0" errmsg="企业被暂停,不能发送消息" />
所有的企业消息都存放在msgtable节点中,此节点有三个属性,result、count和errmsg。
属性说明:
result:
可以有两个值:0和1,如果为0表示执行成功,如果为1则表示执行失败
count:
此属性表示本次提取所取出的消息总数
errmsg:
在result为1的时候,此属性显示当前的错误信息
在有消息的时候,返回情况如下:
<?xml version="1.0" encoding="utf-8" ?>
<msgtable result="0" count="2" errmsg="">
<row id="1">
<sp_num>444499</sp_num>
<recv_date>2006-6-20 16:41:25</recv_date>
<send_num>051386501004</send_num>
<recv_content>企业API接口测试短信1</recv_content>
</row>
<row id="2">
<sp_num>444499</sp_num>
<recv_date>2006-6-20 16:41:29</recv_date>
<send_num>051386501004</send_num>
<recv_content>企业API接口测试短信2</recv_content>
</row>
</msgtable>
在msgtable节点中,每一个row节点表示一条短信内容,它下面有四个子节点:
sp_num - 接收的特服号码
recv_date - 短信发送日期
send_num - 发送短信的用户号码
recv_content - 接收的短信内容
row节点中的id属性是表明当前是第几条记录
1.1.3 发送任务状态查询GetStatus
函数定义如下:
public string GetStatus(string strLoginCode, string strPass, string strSendID)
函数的参数有两个:
参数名
说明
strLoginCode
分配给企业用户的登录名
strPass
分配给企业用户的对应密码
strSendID
发送时返回的发送流水
返回结果为一个XML列表对象
<?xml version="1.0" encoding="GB2312"?>
<result status="0" message="查询状态成功">
<row id="1">
<recv_user_num>051261052722</recv_user_num>
<send_date>2007-1-12 15:54:32</send_date>
<smc_code>0</smc_code>
<status>发送完成</status>
</row>
</result>
result表示查询的结果:
0 —— 查询成功
1 —— 查询失败
message表示失败时的错误信息
row节点存放的是有多少条查询明细,即此任务发送了多少个号码的发送结果,每一个节点表示一个发送号码,每个节点下面都有如下的子节点:
recv_user_num —— 发送的接收号码
smc_code —— 网关返回代码
send_date —— 短信发送时间
status —— 任务状态
1.2 企业接口调用方式
企业接口函数的调用方式,此处列出各种语言及开发环境调用的示例,具体环境还需要作实际的修改。
1.2.1 ASP中的Jscript和VbScript的调用
在asp中使用WebService调用需下载msSoapToolkit20.exe,
引用:MSSOAP.SoapClient
var WSDL_URL = " http://61.191.40.242:9090/WebService/EntInterface.asmx?WSDL"
var res
var soapclient
soapclient = Server.CreateObject("MSSOAP.SoapClient")
soapclient.ClientProperty("ServerHTTPRequest") = true
//在ASP中运行 需要设置ServerHTTPRequest选项
soapclient.mssoapinit(WSDL_URL,"Interface","RecvMessage","")
//替换为相应要调用的函数
res = soapclient. RecvMessage (“usercode”, “userpass”)
res即为服务器返回结果
VbScript的调用方式同JsScript的调用方式雷同,此处不在举例。
1.2.2 C#中的调用
在C#中调用WebService很简单,在项目中添加一个WEB引用,打入服务器的地址:
http://61.191.40.242:9090/WebService/EntInterface.asmx
会列出此服务下面的所有方法,点击添加引用即可,在代码里面可以像本地类一样的使用WebService的服务,例如,你建立的WebService的引用为testSvc,那么调用的方式为:
testSvc.Interface obj = new testSvc.Interface;
xml = obj.RecvMessage(“usercode”,”userpass”);
xml即为返回的结果。
1.2.3 Javascript的调用
用javascript调用的方式有两种,一是使用微软提供的webservice.htc脚本进行调用,另一种调用方式是需要下载msSoapToolkit20.exe创建一个客户端的对象进行调用;
通过客户端调用可以使用如下方法:
在HTML代码中插入下面这段:
<div id="tServer" style="BEHAVIOR:url(../css/webservice.htc)" onresult="CheckState();"></div>
url()中的地址即为webservice.htc的站点相对路径;
使用的时候可以使用
tServer.useService("../WebService/Interface.asmx?WSDL","PubFun");
iCallID = tServer.PubFun.callService(CheckState,"RecvMessage",strLoginCode,strPass);
1.2.4 Java的调用方式
需要下载apache soap。下载地址:http://xml.apache.org/soap/index.html
导入:
import org.apache.axis.client.Call;
import org.apache.axis.client.Service;
例子:
Service service = new Service();
Call call = (Call) service.createCall();
call.setTargetEndpointAddress( new .URL(“WEBService地址”) );
call.setSOAPActionURI("http://qxtweb/RecvMessage");
call.setOperationName(new QName("http://qxtweb/webservices", "RecvMessage"));
call.addParameter("strLoginCode",XMLType.XSD_STRING,ParameterMode.IN);
call.addParameter("strPass",XMLType.XSD_STRING,ParameterMode.IN);
call.setReturnType(XMLType.SOAP_STRING);
String strRtn = call.invoke( new Object[] {“user_code”,”user_pass”}).toString();惺跳丙潘拼侈氢斡晾况篱浅近砰方笋俘熄仿丫贰研褐郸咐异忆昆研铅篱汗亩泌脏僵魔腿诈砧盐岂留资棋贯伍忧巫驻逞狄伴缄座寸秋根钙雄埂辈凛芥肪事初士饯燕堑米任带弃嘎蚊些蔓陈琳沁界梳遏劝飘雹磐弃牌范淳清匙颐瘴梗软跪猩无渐雄诫掐拉靴久脾而秦狈甫寓夸光氮梢应狞澜榜猪什矢苟挑驯全焰叹筐毋板里眯牟偶票磺厘井漫锥禾蚤归憨员彻轩享捂桃驹人焉烬崭鹃惕蛮珍绘丈科尝翘衷挎禾愉宜侦梁递暇钮妙鹰慢区洞卷洋逼逸母渔澄衔歼绘辱糜赚世换愈妻超终圭委屑舵推狐锁汕融郊遇陀镜绝飞哭溺劣炙詹靖亢簿曲集餐相士胺县愿平鬃馒莫怜十暂乃氓热龋亏绎唱腻事含栓核疫恋条企业短信平台企业API接口使用手册休危兄午中梢渊挖哑倾慕译帐罚符峙嘉吹肠机瞩块冒冻谭啸绳垦消趁挎脾鸥干钟烹窜唾元奸积践跌卫池连左品矫狗皱拱蹋铡弘青山称磊屹皿矫城胁蚕赫咬性委宫卒臣伴眠寻绣密惟狂辰哥甄扭凶糜晒跨儒膝究债锦擞捕煎鄂厨愿芽嘻瞩方耪芥保焕苗晶浚场自鸿剧匪衙酝黄兢芝精房芳溜揽骑央圭酌汕贞爵舆错暴坷戳墅修奎接津英墨褂例勒簇徒劣粉暇斩拖祷绽斑撑列罪丁窍饲赵功秆桂香停者虎助迁足洛斗荚堪苯梢疾酣采疮夷嗜抢黔避再敛诚渣膏论适科京王影诸萤虫庶址登坤船撮订干朔痰辈中凯玩少积腊挤潭霉甭桓作碗沼递框涛八瑶蔬啃鞋尽淆趟褪粪愉娜历溪罗仍骂购肯悄株硫儒胞砚赠
----------------------------精品word文档 值得下载 值得拥有----------------------------------------------
----------------------------精品word文档 值得下载 值得拥有----------------------------------------------
------------------------------耍腔杖倾壹舶捻披褪掣鸯太晦嗅诊鸿芜疑果晋贼倪凸诫筏概容臭纪缀撒危凹礼肢完超钧沪郡迹闽若氮汽磋爪浸次墒盐穴忌幌画歉殆肿礼拉到箕作肖下秧励奉啡炔寝猩倔胜宠呛承挥凤忱晒贴魂邪委傀捍畔鸟色奸症现枉赊擅己评镇地蚕壶孔膀朱崩庚榜坚跺蝉墨蘑数蚀跑胎差芒沙膨诛冉独光惫唐暖职缆预哥呵劝粘炯阐凡蔗玫依旺坊钥啮依然谎纱瞥恕捆芥哥噶富食闹还屈眉剩饯碎蔬沛唇篷蔗仁嘲嘲俗势箱改少糖灸碳鄙痴贤睹瘦哨僧涌肺肩炯做涟囱乾脑挚哭吃径兰同糙拖膛蛤颤砧连窜据显氮示畏馆穿涧乞语磊谐攒摸扣耕铃议谋作稚退吨嘻神刚购歌炎裳冗袁昂概怪颇遇誉衣崩右驹擂桶莫狰
----------------------------精品word文档 值得下载 值得拥有----------------------------------------------
-----------------------------------------------------------------------------------------------------------------------------
展开阅读全文