換言之,監(jiān)聽服務(wù)模塊只有在既做客戶端又做服務(wù)端模式下才有,它監(jiān)聽短信中 心的業(yè)務(wù)請求,一旦監(jiān)聽到一個請求就啟動一個請求處理模塊負(fù)責(zé)與短信中心進(jìn)行通訊。 根據(jù)短信協(xié)議的規(guī)定,請求模塊可能會只有一個或有多個。
[0070] 所述請求處理模塊用于在啟動后,對所述短信中心的身份進(jìn)行認(rèn)證,并在認(rèn)證通 過(也即身份合法)時,通過所述第二鏈路超時接收所述短信中心下發(fā)的業(yè)務(wù)請求數(shù)據(jù);調(diào) 用所述協(xié)議處理模塊按照所述設(shè)定協(xié)議對接收的業(yè)務(wù)請求數(shù)據(jù)進(jìn)行解包,并將所述解包后 的數(shù)據(jù)寫入所述短信網(wǎng)關(guān)中的短信接收隊列;之后,可以返回所述超時接收所述短信中心 下發(fā)的業(yè)務(wù)請求數(shù)據(jù)的操作;如果超時沒有接收到業(yè)務(wù)請求數(shù)據(jù),則可主動關(guān)閉第二鏈路。
[0071] 2、日志監(jiān)控模塊
[0072] 日志監(jiān)控模塊從短信網(wǎng)關(guān)的日志隊列中收集短信網(wǎng)關(guān)各模塊生成的日志信息,轉(zhuǎn) 換成統(tǒng)一的數(shù)據(jù)格式發(fā)送到監(jiān)控終端。
[0073] 3、流量統(tǒng)計模塊
[0074] 流量統(tǒng)計模塊對短信網(wǎng)關(guān)和短信中心之間交換的短信數(shù)據(jù)進(jìn)行統(tǒng)計記載,為短信 核對和結(jié)算提供依據(jù)。
[0075] 流量統(tǒng)計可以有兩種統(tǒng)計方式:
[0076] 文本文件統(tǒng)計,統(tǒng)計信息每天記錄一個文本文件。
[0077] 統(tǒng)計信息直接寫入數(shù)據(jù)庫相應(yīng)的表中。
[0078] 流量統(tǒng)計模塊實現(xiàn)也可以有兩種:
[0079] 封裝好的API(ApplicationProgrammingInterface,應(yīng)用程序編程接口)函數(shù), 在需要進(jìn)行流量統(tǒng)計時調(diào)用此函數(shù)即可;
[0080] 獨立運行的流量統(tǒng)計程序,通過消息隊列與外界相連,收集統(tǒng)計信息,統(tǒng)一處理。 需要統(tǒng)計流量的程序只需將統(tǒng)計信息寫入隊列就可認(rèn)為統(tǒng)計成功了。
[0081] 具體采用何種統(tǒng)計方式和實現(xiàn)要參照系統(tǒng)需求和系統(tǒng)運行的環(huán)境。
[0082] 4、業(yè)務(wù)處理裝置
[0083] 業(yè)務(wù)處理裝置,用于從所述短信網(wǎng)關(guān)中的短信接收隊列讀取用戶發(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ù)類型存在時,以業(yè)務(wù)類型為關(guān)鍵字,將所述關(guān)鍵字以及讀取的所述業(yè)務(wù)請 求數(shù)據(jù)寫入所述短信網(wǎng)關(guān)中的業(yè)務(wù)請求數(shù)據(jù)隊列;其中,所述對應(yīng)關(guān)系中的業(yè)務(wù)類型與應(yīng) 用接入模塊接入的應(yīng)用系統(tǒng)所提供的業(yè)務(wù)對應(yīng);
[0084] 用于接入應(yīng)用系統(tǒng);從所述業(yè)務(wù)請求數(shù)據(jù)隊列中讀取與接入的應(yīng)用系統(tǒng)所提供的 業(yè)務(wù)對應(yīng)的業(yè)務(wù)請求數(shù)據(jù),并進(jìn)行合法性檢查;在檢查結(jié)果為合法時,將所述合法的業(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ā)送隊列;
[0085] 還用于在接入應(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ā)送隊列。
[0086] 4. 1業(yè)務(wù)處理裝置的一種優(yōu)選的實施方式
[0087] 請參閱圖4,該業(yè)務(wù)處理裝置包括:主模塊、業(yè)務(wù)數(shù)據(jù)分析模塊和至少一個應(yīng)用接 入模塊,包括三個應(yīng)用接入模塊,分別為用于接入手機支付系統(tǒng)的手機支付接入模塊、用于 接入手機游戲應(yīng)用系統(tǒng)的手機游戲接入模塊,以及用于接入手機彩票應(yīng)用系統(tǒng)的手機彩票 接入模塊。需要說明的是,這三個具體的應(yīng)用接入模塊并不用于限制本實施例,可以根據(jù)實 際需要設(shè)計所需的應(yīng)用接入模塊以接入對應(yīng)的應(yīng)用系統(tǒng)。
[0088] 其中,所述主模塊,用于啟動業(yè)務(wù)數(shù)據(jù)分析模塊和至少一個應(yīng)用接入模塊。
[0089] 所述主模塊還可優(yōu)選用于:監(jiān)控所述業(yè)務(wù)數(shù)據(jù)分析模塊和至少一個應(yīng)用接入模塊 的運行情況,并進(jìn)行排錯處理;和/或
[0090] 在獲取到所述短信網(wǎng)關(guān)進(jìn)入退出模式時,進(jìn)行清理處理;在未獲取到所述短信網(wǎng) 關(guān)進(jìn)入退出模式時,返回所述監(jiān)控操作。
[0091] 其中,所述業(yè)務(wù)數(shù)據(jù)分析模塊,用于從所述短信網(wǎng)關(guān)中的短信接收隊列讀?。ň?體可以采用阻塞方式讀取)用戶發(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ù)類型存在時,以業(yè)務(wù)類型 為關(guān)鍵字,將所述關(guān)鍵字以及讀取的所述業(yè)務(wù)請求數(shù)據(jù)寫入所述短信網(wǎng)關(guān)中的業(yè)務(wù)請求數(shù) 據(jù)隊列;其中,所述對應(yīng)關(guān)系中的業(yè)務(wù)類型與應(yīng)用接入模塊接入的應(yīng)用系統(tǒng)所提供的業(yè)務(wù) 對應(yīng)。進(jìn)一步地,在根據(jù)預(yù)設(shè)的業(yè)務(wù)請求數(shù)據(jù)與業(yè)務(wù)類型的對應(yīng)關(guān)系,確定讀取的所述業(yè)務(wù) 請求數(shù)據(jù)的業(yè)務(wù)類型不屬于所述對應(yīng)關(guān)系中包含的業(yè)務(wù)類型時,生成第一錯誤響應(yīng)信息, 并將所述第一錯誤響應(yīng)信息寫入所述短信網(wǎng)關(guān)中的短信發(fā)送隊列。
[0092] 需要說明的是,業(yè)務(wù)類型都是有編號的,比如短信最前面兩位,YE表示余額,如果 當(dāng)前用戶寫錯了短信,把YE寫成了YR,而恰恰這個類型是應(yīng)用系統(tǒng)中沒有這個編號規(guī)則對 應(yīng)的業(yè)務(wù)類型的,那么要原路發(fā)回給當(dāng)前用戶,以提示該用戶剛剛的業(yè)務(wù)請求類型不存在。
[0093] 所述應(yīng)用接入模塊,用于接入應(yīng)用系統(tǒng);從所述業(yè)務(wù)請求數(shù)據(jù)隊列中讀取與接入 的應(yīng)用系統(tǒng)所提供的業(yè)務(wù)對應(yīng)的業(yè)務(wù)請求數(shù)據(jù),并進(jìn)行合法性檢查;在檢查結(jié)果為合法時, 將所述合法的業(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ā)送隊列;
[0094] 所述應(yīng)用接入模塊還用于,在接入應(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ā)送隊列。
[0095] 進(jìn)一步地,所述應(yīng)用接入模塊可以包括:業(yè)務(wù)注冊子模塊、數(shù)據(jù)發(fā)送子模塊、數(shù)據(jù) 接收子模塊和數(shù)據(jù)處理子模塊。需要說明的是,每個應(yīng)用接入模塊基本都可以化分為上述 幾個子模塊。
[0096] 所述業(yè)務(wù)注冊子模塊,用于向待接入的應(yīng)用系統(tǒng)注冊;在注冊成功時,啟動數(shù)據(jù)發(fā) 送子模塊和數(shù)據(jù)接收子模塊。進(jìn)一步地,所述業(yè)務(wù)注冊子模塊還可優(yōu)選用于,在啟動所述 數(shù)據(jù)發(fā)送子模塊和數(shù)據(jù)接收子模塊之后,監(jiān)控數(shù)據(jù)發(fā)送子模塊和數(shù)據(jù)接收子模塊的運行情 況;若存在異常,則對所述數(shù)據(jù)發(fā)送子模塊和數(shù)據(jù)接收子模塊中存在異常的子模塊進(jìn)行清 理;若不存在異常,則繼續(xù)執(zhí)行所述監(jiān)控操作。進(jìn)一步地,所述業(yè)務(wù)注冊子模塊還可用于,在 注冊失敗時,返回向待接入的應(yīng)用系統(tǒng)進(jìn)行注冊的操作。
[0097] 所述數(shù)據(jù)發(fā)送子模塊,用于從所述業(yè)務(wù)請求數(shù)據(jù)隊列中讀取與接入的應(yīng)用系統(tǒng)所 提供的業(yè)務(wù)對應(yīng)的業(yè)務(wù)請求數(shù)據(jù);調(diào)用數(shù)據(jù)處理子模塊對所述數(shù)據(jù)發(fā)送子模塊讀取的業(yè)務(wù) 請求數(shù)據(jù)進(jìn)行合法性檢查;在檢查結(jié)果為合法時,將所述合法的業(yè)務(wù)請求數(shù)據(jù)發(fā)送至接入 的應(yīng)用系統(tǒng)。進(jìn)一步地,所述數(shù)據(jù)發(fā)送子模塊還可優(yōu)選用于,在發(fā)送成功時,返回從所述業(yè) 務(wù)請求數(shù)據(jù)隊列中讀取與接入的應(yīng)用系統(tǒng)所提供的業(yè)務(wù)對應(yīng)的新的業(yè)務(wù)請求數(shù)據(jù)的操作; 在發(fā)送失敗時,將所述發(fā)送失敗的業(yè)務(wù)請求數(shù)據(jù)重新寫入所述業(yè)務(wù)請求數(shù)據(jù)隊列。進(jìn)一步 地,所述數(shù)據(jù)發(fā)送子模塊還可優(yōu)選用于,在檢查結(jié)果為不合法時,生成第二錯誤響應(yīng)信息, 并將生成的所述第二錯誤響應(yīng)信息寫入所述短信發(fā)送隊列。
[0098] 這樣,當(dāng)用戶請求的業(yè)務(wù)類型存在,但是業(yè)務(wù)類型后面的數(shù)據(jù)編碼不對時,比如如 果定義了MX201403表示查詢2014年3月份所有的交易明細(xì),但是用戶在編輯短信時卻是 MX201413,13月是不存在的,此時認(rèn)為這個數(shù)據(jù)是非法的,再次通過短信發(fā)送隊列發(fā)回給這 個用戶,以提示該用戶剛剛的業(yè)務(wù)請求類型中短信編碼錯誤等。
[0099] 所述數(shù)據(jù)接收子模塊,用于從所述應(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ā)送隊列;還用于接收所述應(yīng)用系統(tǒng)的推送數(shù)據(jù);將根據(jù)所述接入的應(yīng)用系 統(tǒng)所提供的業(yè)務(wù)類型確定的關(guān)鍵字以及接收的所述推送數(shù)據(jù)寫入所述短信網(wǎng)關(guān)中的短信 發(fā)送隊列。
[0100] 所述數(shù)據(jù)接收子模塊具體可以用于,從所述應(yīng)用系統(tǒng)接收(具體可以采用阻塞方 式接收)業(yè)務(wù)響應(yīng)數(shù)據(jù);在接收成功時,調(diào)用所述數(shù)據(jù)處理子模塊對接收的所述業(yè)務(wù)響應(yīng) 數(shù)據(jù)進(jìn)行處理;將根據(jù)所述接入的應(yīng)用系統(tǒng)所提供的業(yè)務(wù)類型確定的關(guān)鍵字以及處理后的 業(yè)務(wù)響應(yīng)數(shù)據(jù)寫入所述短信網(wǎng)關(guān)中的短信發(fā)送隊列;并返回從所述應(yīng)用系統(tǒng)接收新的業(yè)務(wù) 響應(yīng)數(shù)據(jù)的操作。
[0101] 所述數(shù)據(jù)接收子模塊具體還可以用于,接收(具體可以采用阻塞方式接收)所述 應(yīng)用系統(tǒng)的推送數(shù)據(jù);在接收成功時,調(diào)用所述數(shù)據(jù)處理子模塊對接收的所述推送數(shù)據(jù)進(jìn) 行處理;將根據(jù)所述接入的應(yīng)用系統(tǒng)所提供的業(yè)務(wù)類型確定的關(guān)鍵字以及處理后的所述推 送數(shù)據(jù)寫入所述短信網(wǎng)關(guān)中的短信發(fā)送隊列;并返回接收所述應(yīng)用系統(tǒng)推送的新的推送數(shù) 據(jù)的操作。
[0102] 所述數(shù)據(jù)處理子模塊,用于對所述數(shù)據(jù)發(fā)送子模塊讀取的業(yè)務(wù)請求數(shù)據(jù)進(jìn)行合法 性檢查。還可以用于,對所述數(shù)據(jù)接收子模塊接收的所述業(yè)務(wù)響應(yīng)數(shù)據(jù)或所述推送數(shù)據(jù)進(jìn) 行處理,其中,所述數(shù)據(jù)處理子模塊與特定的應(yīng)用系統(tǒng)有關(guān),主要用于數(shù)據(jù)格式轉(zhuǎn)換,還可 對響應(yīng)數(shù)據(jù)組合處理等。
[0103] 本優(yōu)選實施方式提供的業(yè)務(wù)處理裝置,與各種不同應(yīng)用系統(tǒng)交互,從短信網(wǎng)關(guān)中 的短信接入裝置取得用戶