短信網(wǎng)關(guān)的制作方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明實(shí)施例涉及信息技術(shù)領(lǐng)域,尤其涉及一種短信網(wǎng)關(guān)。
【背景技術(shù)】
[0002] 短信(ShortMessage,SM)網(wǎng)關(guān)是基于移動手機(jī)各種不同業(yè)務(wù)應(yīng)用系統(tǒng)與用戶之 間的門戶層之一,向用戶提供SM接入方式,負(fù)責(zé)應(yīng)用系統(tǒng)與移動運(yùn)營商的短信中心(SMSC) 的數(shù)據(jù)交換,將外部短信數(shù)據(jù)協(xié)議的交易請求轉(zhuǎn)換成應(yīng)用系統(tǒng)內(nèi)部統(tǒng)一的交易格式;或者 將內(nèi)部統(tǒng)一格式的交易結(jié)果轉(zhuǎn)換成外部短信數(shù)據(jù)協(xié)議,再外發(fā)至短信中心,最終傳遞給手 機(jī)用戶。
[0003] 在服務(wù)提供商(ServiceProvider,SP)側(cè)的短信網(wǎng)關(guān)中的短信接入裝置的設(shè)計(jì)與 實(shí)現(xiàn)方式屬于應(yīng)用業(yè)務(wù)系統(tǒng)設(shè)計(jì)與開發(fā)的一部分,沒有統(tǒng)一的規(guī)范和技術(shù)標(biāo)準(zhǔn),各個(gè)公司 基于每個(gè)實(shí)際系統(tǒng)的不同要求以及設(shè)計(jì)人員的經(jīng)驗(yàn)和能力而有不同的設(shè)計(jì)實(shí)現(xiàn)。
[0004] 在短信接入的應(yīng)用方面,目前有一些專業(yè)做短信網(wǎng)關(guān)產(chǎn)品的公司,給簽訂協(xié)議需 要短信服務(wù)的系統(tǒng)(如網(wǎng)上購物,郵箱注冊等)通過下載客戶端接口程序的方式提供基于 HTTP(HypertextTransferProtocol,超文本傳送協(xié)議)或WEBSERVICE(網(wǎng)頁服務(wù))協(xié)議 的短信收發(fā)服務(wù),這對于用戶來說屬于第三方獨(dú)立服務(wù),但是這些短信網(wǎng)關(guān)中短信接入裝 置的具體設(shè)計(jì)與實(shí)現(xiàn)一般都是商業(yè)秘密從而使無法得知的。
[0005] 在服務(wù)提供商(serviceprovider,SP)側(cè)的短信網(wǎng)關(guān)中的業(yè)務(wù)處理裝置的設(shè)計(jì)與 實(shí)現(xiàn)方式屬于應(yīng)用業(yè)務(wù)系統(tǒng)設(shè)計(jì)與開發(fā)的一部分,沒有統(tǒng)一的規(guī)范和技術(shù)標(biāo)準(zhǔn),各個(gè)公司 基于每個(gè)實(shí)際系統(tǒng)的不同要求以及設(shè)計(jì)人員的經(jīng)驗(yàn)和能力而有不同的設(shè)計(jì)實(shí)現(xiàn)。
[0006] 業(yè)務(wù)處理裝置對于用戶來說屬于第三方獨(dú)立服務(wù),但是該裝置的具體設(shè)計(jì)與實(shí)現(xiàn) 一般都是商業(yè)秘密從而是無法得知的。
【發(fā)明內(nèi)容】
[0007] 本發(fā)明實(shí)施例提供一種短信網(wǎng)關(guān),以向用戶提供短信接入方式,并實(shí)現(xiàn)從短信網(wǎng) 關(guān)中取得用戶短信數(shù)據(jù),對短信內(nèi)容進(jìn)行解析,分析出用戶請求的業(yè)務(wù)類型,再轉(zhuǎn)發(fā)到相應(yīng) 的應(yīng)用系統(tǒng),并實(shí)現(xiàn)從不同的應(yīng)用系統(tǒng)接收業(yè)務(wù)響應(yīng)數(shù)據(jù)和推送數(shù)據(jù),經(jīng)轉(zhuǎn)換后發(fā)送至短 信中心,從而實(shí)現(xiàn)短信中心側(cè)的用戶與應(yīng)用系統(tǒng)之間的交互。
[0008] 本發(fā)明實(shí)施例提供了一種短信網(wǎng)關(guān),包括:
[0009] 短信接入裝置,用于向短信中心注冊,并在注冊成功時(shí)建立第一鏈路,其中所述第 一鏈路用于所述短信接入裝置與所述短信中心之間的交互;
[0010] 用于從短信網(wǎng)關(guān)中的短信發(fā)送隊(duì)列中讀取待發(fā)送數(shù)據(jù),其中,所述待發(fā)送數(shù)據(jù)由 下述業(yè)務(wù)處理裝置從所述業(yè)務(wù)處理裝置接入的應(yīng)用系統(tǒng)中獲取,并寫入至所述短信發(fā)送隊(duì) 列中;按照設(shè)定協(xié)議對獲取的待發(fā)送數(shù)據(jù)進(jìn)行打包,并將打包后的待發(fā)送數(shù)據(jù)包通過所述 第一鏈路發(fā)送至所述短信中心,將發(fā)送的數(shù)據(jù)包中的原始發(fā)送數(shù)據(jù)寫入所述短信網(wǎng)關(guān)中的 等待響應(yīng)隊(duì)列;
[0011] 用于通過所述第一鏈路從所述短信中心接收協(xié)議響應(yīng)數(shù)據(jù),按照設(shè)定協(xié)議對所述 協(xié)議響應(yīng)數(shù)據(jù)進(jìn)行解包,判斷解包后的協(xié)議響應(yīng)數(shù)據(jù)的響應(yīng)類型,并根據(jù)所述判斷結(jié)果,進(jìn) 行相應(yīng)處理;以及將解包后的協(xié)議響應(yīng)數(shù)據(jù)寫入所述短信網(wǎng)關(guān)中的等待響應(yīng)隊(duì)列,其中,所 述協(xié)議響應(yīng)數(shù)據(jù)由所述短信中心在成功接收到發(fā)送的待發(fā)送數(shù)據(jù)包并進(jìn)行響應(yīng)后生成;
[0012] 還用于定時(shí)掃描所述等待響應(yīng)隊(duì)列,檢查是否存在已經(jīng)成功發(fā)送但超時(shí)沒有收到 響應(yīng)的原始發(fā)送數(shù)據(jù),若是,則丟棄該原始發(fā)送數(shù)據(jù),或?qū)⒃撛及l(fā)送數(shù)據(jù)寫入短信發(fā)送隊(duì) 列,并執(zhí)行重發(fā)操作;
[0013] 業(yè)務(wù)處理裝置,用于從所述短信網(wǎng)關(guān)中的短信接收隊(duì)列讀取用戶發(fā)送的業(yè)務(wù)請求 數(shù)據(jù);根據(jù)預(yù)設(shè)的業(yè)務(wù)請求數(shù)據(jù)與業(yè)務(wù)類型的對應(yīng)關(guān)系,確定讀取的所述業(yè)務(wù)請求數(shù)據(jù)的 業(yè)務(wù)類型;在業(yè)務(wù)類型存在時(shí),以業(yè)務(wù)類型為關(guān)鍵字,將所述關(guān)鍵字以及讀取的所述業(yè)務(wù)請 求數(shù)據(jù)寫入所述短信網(wǎng)關(guān)中的業(yè)務(wù)請求數(shù)據(jù)隊(duì)列;其中,所述對應(yīng)關(guān)系中的業(yè)務(wù)類型與應(yīng) 用接入模塊接入的應(yīng)用系統(tǒng)所提供的業(yè)務(wù)對應(yīng);
[0014] 用于接入應(yīng)用系統(tǒng);從所述業(yè)務(wù)請求數(shù)據(jù)隊(duì)列中讀取與接入的應(yīng)用系統(tǒng)所提供的 業(yè)務(wù)對應(yīng)的業(yè)務(wù)請求數(shù)據(jù),并進(jìn)行合法性檢查;在檢查結(jié)果為合法時(shí),將所述合法的業(yè)務(wù)請 求數(shù)據(jù)發(fā)送至接入的應(yīng)用系統(tǒng),并從所述應(yīng)用系統(tǒng)接收業(yè)務(wù)響應(yīng)數(shù)據(jù);將根據(jù)所述接入的 應(yīng)用系統(tǒng)所提供的業(yè)務(wù)類型確定的關(guān)鍵字以及接收的所述業(yè)務(wù)響應(yīng)數(shù)據(jù)寫入所述短信網(wǎng) 關(guān)中的短信發(fā)送隊(duì)列;
[0015] 還用于在接入應(yīng)用系統(tǒng)后,接收所述應(yīng)用系統(tǒng)的推送數(shù)據(jù);將根據(jù)所述接入的應(yīng) 用系統(tǒng)所提供的業(yè)務(wù)類型確定的關(guān)鍵字以及接收的所述推送數(shù)據(jù)寫入所述短信網(wǎng)關(guān)中的 短信發(fā)送隊(duì)列。
[0016] 本發(fā)明實(shí)施例提供的短信網(wǎng)關(guān),短信接入裝置主要負(fù)責(zé)短信網(wǎng)關(guān)與短信中心 (SMSC)通過標(biāo)準(zhǔn)短信協(xié)議交換短信數(shù)據(jù),實(shí)現(xiàn)了應(yīng)用系統(tǒng)與用戶之間的數(shù)據(jù)交互;業(yè)務(wù)處 理裝置,與各種不同應(yīng)用系統(tǒng)交互,從短信網(wǎng)關(guān)中的短信接入裝置取得用戶短信數(shù)據(jù),對短 信內(nèi)容進(jìn)行解析,分析出用戶請求的業(yè)務(wù)類型,對業(yè)務(wù)數(shù)據(jù)進(jìn)行初步合法性檢驗(yàn),再轉(zhuǎn)發(fā)到 相應(yīng)的應(yīng)用系統(tǒng),同時(shí),從不同的應(yīng)用系統(tǒng)接收業(yè)務(wù)響應(yīng)數(shù)據(jù)和推送數(shù)據(jù),業(yè)務(wù)處理裝置通 過短信發(fā)送隊(duì)列與短信網(wǎng)關(guān)中的短信接入裝置交互,使得短信接入裝置能夠獲取到應(yīng)用系 統(tǒng)發(fā)送的業(yè)務(wù)響應(yīng)數(shù)據(jù)和推送數(shù)據(jù),短信接入裝置將接收的數(shù)據(jù)發(fā)送至短信中心,從而實(shí) 現(xiàn)短信中心側(cè)的用戶與應(yīng)用系統(tǒng)之間的交互。本發(fā)明實(shí)施例提供的業(yè)務(wù)處理裝置的擴(kuò)展性 好,具有廣泛的移植性。
【附圖說明】
[0017] 為了更清楚地說明本發(fā)明,下面將對本發(fā)明中所需要使用的附圖做一簡單地介 紹,顯而易見地,下面描述中的附圖是本發(fā)明的一些實(shí)施例,對于本領(lǐng)域普通技術(shù)人員來 講,在不付出創(chuàng)造性勞動性的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
[0018] 圖1為本發(fā)明實(shí)施例提供的一種短信網(wǎng)關(guān)的結(jié)構(gòu)示意圖;
[0019] 圖2為本發(fā)明實(shí)施例提供的短信網(wǎng)關(guān)中一種短信接入裝置的結(jié)構(gòu)示意圖;
[0020]圖3為本發(fā)明實(shí)施例提供的短信網(wǎng)關(guān)中另一種短信接入裝置的結(jié)構(gòu)示意圖;
[0021] 圖4為本發(fā)明實(shí)施例提供的短信網(wǎng)關(guān)中一種業(yè)務(wù)處理裝置的結(jié)構(gòu)示意圖;
[0022] 圖5為本發(fā)明實(shí)施例提供的短信網(wǎng)關(guān)中另一種業(yè)務(wù)處理裝置的結(jié)構(gòu)示意圖。
【具體實(shí)施方式】
[0023] 為使本發(fā)明的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合附圖對本發(fā)明實(shí)施例 中的技術(shù)方案作進(jìn)一步詳細(xì)描述,顯然,所描述的實(shí)施例是本發(fā)明一部分實(shí)施例,而不是全 部的實(shí)施例。可以理解的是,此處所描述的具體實(shí)施例僅用于解釋本發(fā)明,而非對本發(fā)明的 限定,基于本發(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有作出創(chuàng)造性勞動前提下所獲得 的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。另外還需要說明的是,為了便于描述,附圖 中僅示出了與本發(fā)明相關(guān)的部分而非全部內(nèi)容。
[0024] 本發(fā)明實(shí)施例提供的短信網(wǎng)關(guān)適用于如圖1所示的網(wǎng)絡(luò)架構(gòu),該網(wǎng)絡(luò)架構(gòu)包括: 短信中心、短信網(wǎng)關(guān)和應(yīng)用系統(tǒng),從而實(shí)現(xiàn)短信中心側(cè)的用戶與應(yīng)用系統(tǒng)之間的交互。
[0025] 為清楚起見,首先介紹短信網(wǎng)關(guān)的結(jié)構(gòu)。請參閱圖1,該短信網(wǎng)關(guān)至少包括:短信 接入裝置和業(yè)務(wù)處理裝置,還可優(yōu)選包括日志監(jiān)控模塊和/或流量統(tǒng)計(jì)模塊。
[0026] 其中,短信接入裝置負(fù)責(zé)與短信中心之間的通訊;業(yè)務(wù)處理裝置負(fù)責(zé)與各應(yīng)用系 統(tǒng)交換數(shù)據(jù);日志監(jiān)控模塊用于收集短信網(wǎng)關(guān)各模塊產(chǎn)生的日志信息,供監(jiān)控終端顯示; 流量統(tǒng)計(jì)模塊用于記載短信網(wǎng)關(guān)發(fā)送和接收的短信數(shù)據(jù)。四大模塊功能相對獨(dú)立,模塊間 數(shù)據(jù)交換可通過消息隊(duì)列連接。短信網(wǎng)關(guān)與外部系統(tǒng)(即短信中心和應(yīng)用系統(tǒng))通過TCP/ IP通訊,進(jìn)行標(biāo)準(zhǔn)的通訊協(xié)議數(shù)據(jù)的交互。下面對短信網(wǎng)關(guān)的各模塊進(jìn)行介紹。
[0027] 1、短信接入裝置
[0028] 短信接入裝置,用于向短信中心注冊,并在注冊成功時(shí)建立第一鏈路,其中所述第 一鏈路用于所述短信接入裝置與所述短信中心之間的交互;
[0029] 用于從短信網(wǎng)關(guān)中的短信發(fā)送隊(duì)列中讀取待發(fā)送數(shù)據(jù),其中,所述待發(fā)送數(shù)據(jù)由 下述業(yè)務(wù)處理裝置從所述業(yè)務(wù)處理裝置接入的應(yīng)用系統(tǒng)中獲取,并寫入至所述短信發(fā)送隊(duì) 列中;按照設(shè)定協(xié)議對獲取的待發(fā)送數(shù)據(jù)進(jìn)行打包,并將打包后的待發(fā)送數(shù)據(jù)包通過所述 第一鏈路發(fā)送至所述短信中心,將發(fā)送的數(shù)據(jù)包中的原始發(fā)送數(shù)據(jù)寫入所述短信網(wǎng)關(guān)中的 等待響應(yīng)隊(duì)列;
[0030] 用于通過所述第一鏈路從所述短信中心接收協(xié)議響應(yīng)數(shù)據(jù),按照設(shè)定協(xié)議對所述 協(xié)議響應(yīng)數(shù)據(jù)進(jìn)行解包,判斷解包后的協(xié)議響應(yīng)數(shù)據(jù)的響應(yīng)類型,并根據(jù)所述判斷結(jié)果,進(jìn) 行相應(yīng)處理;以及將解包后的協(xié)議響應(yīng)數(shù)據(jù)寫入所述短信網(wǎng)關(guān)中的等待響應(yīng)隊(duì)列,其中,所 述協(xié)議響應(yīng)數(shù)據(jù)由所述短信中心在成功接收到發(fā)送的待發(fā)送數(shù)據(jù)包并進(jìn)行響應(yīng)后生成;
[0031] 還用于定時(shí)掃描所述等待響應(yīng)隊(duì)列,檢查是否存在已經(jīng)成功發(fā)送但超時(shí)沒有收到 響應(yīng)的原始發(fā)送數(shù)據(jù),若是,則丟棄該原始發(fā)送數(shù)據(jù),或?qū)⒃撛及l(fā)送數(shù)據(jù)寫入短信發(fā)送隊(duì) 列,并執(zhí)行重發(fā)操作。
[0032] 1. 1短信接入裝置的一種優(yōu)選的實(shí)施方式
[0033] 請參閱圖2,作為短信接入裝置的一種優(yōu)選的實(shí)施方式,該短信接入裝置可以包 括:接入主模塊、數(shù)據(jù)發(fā)送模塊、數(shù)據(jù)接收模塊、協(xié)議處理模塊和超時(shí)處理模塊。
[0034] 接入主模塊