短消息代理(SMPP SMProxy)使用說(shuō)明書.doc_第1頁(yè)
短消息代理(SMPP SMProxy)使用說(shuō)明書.doc_第2頁(yè)
短消息代理(SMPP SMProxy)使用說(shuō)明書.doc_第3頁(yè)
短消息代理(SMPP SMProxy)使用說(shuō)明書.doc_第4頁(yè)
短消息代理(SMPP SMProxy)使用說(shuō)明書.doc_第5頁(yè)
已閱讀5頁(yè),還剩2頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

第一章 概述1 產(chǎn)品概述SMPPSMProxy是符合SMPP3.4協(xié)議的接口,可以同時(shí)滿足Unix和WINDOW NT平臺(tái)的使用。SMPPSMProxy與SMSC建立TCP連接進(jìn)行通信,并負(fù)責(zé)短消息發(fā)送和接收、維護(hù)與SMSC的握手、斷連重連等;SMPPSMProxy提供客戶API接口函數(shù),包括登錄PROXY、退出PROXY、發(fā)送短消息、接受短消息、接受響應(yīng)信息等。SMPPSMProxy支持多線程并發(fā)使用發(fā)送短消息,SMPPSMProxy和SMSC之間使用的通信協(xié)議是SMPP協(xié)議。2 組網(wǎng)結(jié)構(gòu)SMPPSMProxy就是運(yùn)行在SP上,負(fù)責(zé)和SMSC進(jìn)行SMPP3.4協(xié)議的通訊,要求SP的功能實(shí)體向SMSC發(fā)SMPP_SUBMIT消息,由SMSC返回SMPP_DELIVERY消息給SP。3 SMProxy的結(jié)構(gòu)客戶程序調(diào)用到SMPPSMProxy提供的接口函數(shù)實(shí)現(xiàn)收發(fā)短消息,SMPPSMProxy實(shí)現(xiàn)把客戶程序所發(fā)出的消息按SMPP3.4協(xié)議進(jìn)行編碼后發(fā)給數(shù)據(jù)增值業(yè)務(wù)中心(infoX),由數(shù)據(jù)增值業(yè)務(wù)中心(infoX)發(fā)送給SMC,并通過(guò)數(shù)據(jù)增值業(yè)務(wù)中心(infoX)接收SMC所響應(yīng)的消息與主動(dòng)下發(fā)的消息并進(jìn)行解碼后,通知客戶程序接收SMC主動(dòng)下發(fā)的短消息。第二章 SMPP3.4協(xié)議的封裝SMPP協(xié)議封裝在m.smpp.message包中,主要消息如下(1)SMPPEnquireLinkMessage 心跳消息,對(duì)應(yīng)SMPP3.4文檔中的SMPP_ENQUIRE_LINK消息,是SMPPSMProxy與SMSC的心跳消息。(2)SMPPEnquireLinkRespMessage 心跳響應(yīng)消息,對(duì)應(yīng)SMPP3.4文檔中的SMPP_ENQUIRE_LINK_RESP,是SMPPSMProxy發(fā)送心跳消息后收到的響應(yīng)消息。(3)SMPPLoginMessage 請(qǐng)求連接消息,對(duì)應(yīng)SMPP3.4文檔中的SMPP_BIND_RECEIVER的消息,是SMPPSMProxy向SMSC發(fā)送的建立邏輯請(qǐng)求連接消息。(4)SMPPLoginRespMessage 請(qǐng)求連接應(yīng)答消息,對(duì)應(yīng)SMPP3.4文檔中的SMPP_BIND_RECEIVER_RESP的消息,是SMPPSMProxy向SMSC發(fā)送的建立邏輯請(qǐng)求連接后收到的響應(yīng)消息。(5)SMPPDeliverMessage SMSC下發(fā)短信,對(duì)應(yīng)SMPP3.4文檔中的 SMPP_DELIVER_SM消息,是SMSC下發(fā)給SMPPSMProxy的短消息或者狀態(tài)報(bào)告消息。(6)SMPPDeliverRespMessage 下發(fā)短信響應(yīng),對(duì)應(yīng)SMPP3.4文檔中的 SMPP_DELIVER_SM_RESP消息,是SMPPSMProxy收到的下發(fā)短信后的響應(yīng)消息。(7)SMPPSubmitMessage 發(fā)送短信消息,對(duì)應(yīng)SMPP3.4文檔中的 SMPP_SUBMIT_SM消息,是SMPPSMProxy發(fā)送短訊的消息。(8)SMPPSubmitRespMessage 下發(fā)短信的響應(yīng),對(duì)應(yīng)SMPP3.4 文檔中的 SMPP_SUBMIT_SM_RESP消息,是SMPPSMProxy發(fā)送短訊的響應(yīng)消息。(9)SMPPUnbindMessage 終止連接消息,對(duì)應(yīng)SMPP3.4 文檔中的 SMPP_UNBIND消息,是SMSC和SMPPSMProxy終止邏輯連接的消息。(10)SMPPUnbindRespMessage 終止連接的響應(yīng)消息,對(duì)應(yīng)SMPP3.4 文檔中的 SMPP_UNBIND_RESP消息,是SMSC或SMPPSMProxy收到終止連接后發(fā)送的響應(yīng)消息。 其中的心跳消息(1,2)、建立邏輯連接的消息(3,4)和終止邏輯連接消息(9,10)只是SMPPSMProxy系統(tǒng)內(nèi)部使用消息,提供給外部的接口中不涉及這六條消息。第三章 SMPPSMProxy使用說(shuō)明1 SMPPSMProxy提供的接口方法描述1、send【函數(shù)功能】 向SMSC發(fā)送SMPP消息,阻塞直到收到響應(yīng)或超時(shí)。【函數(shù)原型】SMPPMessage send(SMPPMessage message);【參數(shù)說(shuō)明】IN message - 發(fā)送的SMPP消息,包括 SMPPSubmitMessage提交短信【處理】調(diào)用這個(gè)接口方法,向SMSC發(fā)送Submit命令消息。 如果發(fā)送消息超時(shí)或通信異常則拋出異常,需要調(diào)用者捕獲處理?!痉祷刂怠堪l(fā)送SMPPSubmitMessage,返回SMPPSubmitRepMessage;2 close【函數(shù)功能】 向SMSC發(fā)送終止連接SMPP消息,調(diào)用之后連接將永久不可用。【函數(shù)原型】Void close();【參數(shù)說(shuō)明】 無(wú)【處理】調(diào)用這個(gè)接口方法,SMPPSMProxy向SMSC發(fā)送SMPPUnbindMessage消息 如果發(fā)送消息超時(shí)或通信異常則拋出異常,需要調(diào)用者捕獲處理?!痉祷刂怠?無(wú)3 getConnState【函數(shù)功能】 獲取通訊連接的狀態(tài)方法?!竞瘮?shù)原型】String getConnState();【參數(shù)說(shuō)明】 無(wú)【處理】調(diào)用這個(gè)接口方法,獲取TCP連接狀態(tài)的描述。 如果發(fā)送消息超時(shí)或通信異常則拋出異常,需要調(diào)用者捕獲處理?!痉祷刂怠?當(dāng)前錯(cuò)誤描述,若連接正常則返回null。2 封裝接口方法的SMPPSMProxy的抽象類SMPPSMProxy在com.huawei.SMProxy的包中,封裝了Send、close、getConnState方法。SMPPSMProxy是一個(gè)抽象類,需要被繼承使用。SMPPSMProxy抽象類的框架如下:public class SMPPSMProxy public SMPPSMProxy(Args args) /完成初始化和向SMSC登錄等工作 public SMPPSMProxy(Map args) /完成初始化和向SMSC登錄等工作 /* * 發(fā)送消息,阻塞直到收到響應(yīng)或超時(shí)。 * 返回為收到的消息 * exception PException 超時(shí)或通信異常。 */ public SMPPMessage send(SMPPMessage message) /發(fā)送消息 /* * 連接終止的處理,由API使用者實(shí)現(xiàn) * SMC連接終止后,需要執(zhí)行動(dòng)作的接口 */ public void onTerminate() /* * 對(duì)收到消息的處理。由API使用者實(shí)現(xiàn)。缺省返回成功收到的響應(yīng) * param msg 從短消息中心來(lái)的消息。 * return 應(yīng)該回的響應(yīng),由API使用者生成。 */ public SMPPMessage onDeliver(SMPPDeliverMessage msg) /* * 終止連接。調(diào)用之后連接將永久不可用。 */ public void close() /* * 提供給業(yè)務(wù)層調(diào)用的獲取連接狀態(tài)的方法 */ public String getConnState() /返回連接狀態(tài)的描述 3 使用SMPPSMProxy抽象類可以直接使用SMPPSMProxy類提供的Send、close和getConnState方法但是如果SP有接收SMSC下發(fā)的短信的要求或SMSC斷開(kāi)連接的時(shí)候要求得到事件通知的時(shí)候,就必須聲明一個(gè)新的類繼承SMPPSMProxy,重載實(shí)現(xiàn)onDeliver( )和onTerminate( )。使用例子參見(jiàn)smppdemo實(shí)際使用SMPPSMProxy封裝的send、close和getConnState的接口方法的時(shí)候,只需要生成SMSender的對(duì)象,然后調(diào)用SMSender的send、close和getConnState方法即可。4 配置參數(shù)使用說(shuō)明SMPPSMProxy需要的配置參數(shù)如下表參數(shù)名稱參數(shù)例值參數(shù)描述host47SMSC主機(jī)地址的IP地址port7890SMSC主機(jī)開(kāi)發(fā)的端口號(hào)heartbeat-interval10心跳信息發(fā)送間隔時(shí)間(單位:秒)reconnect-interval10連接中斷時(shí)重連間隔時(shí)間(單位:秒)heartbeat-noresponseout5需要重連時(shí),連續(xù)發(fā)出心跳而沒(méi)有接收到響應(yīng)的個(gè)數(shù)(單位:個(gè))transaction-timeout10操作超時(shí)時(shí)間(單位:秒)Debugtruetrue表示屬于調(diào)試狀態(tài),所有的消息被打印輸出到屏幕,false表示不屬于調(diào)試狀態(tài),所有的消息不被輸出system-idSPIdentifies the ESME system requesting to bind as a transmitter with the SMSC.passwordThe password may be used by the SMSC to authenticate the ESME requesting to bind.system-typeIdentifies the type of ESME system requesting to bind as a transmitter with the SMSC.addr-ton0Indicates Type of Number of theESME address.If not known set to NULLaddr-npi0Numbering Plan Indicator for ESMEaddress.If not known set to NULL.address-rangeThe ESME address.If not known set to NULL.Interface-version34Indicates the version of the SMPPprotocol supported by the ESME.配置文件可以采用我們提供的XML格式,也可以采用其他格式,只要構(gòu)造的時(shí)候能通過(guò)Map類型或Arg類型的參數(shù)傳入指定的參數(shù)就可以了。例如可以用java的property文件保存參數(shù),或?qū)⑴渲煤蚐P的應(yīng)用程序配置放在一起。下面是以XML格式定義的配置文件app.xml是在SMP

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論