《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 其他 > 設(shè)計應(yīng)用 > 基于智能手機(jī)的校園短信網(wǎng)關(guān)系統(tǒng)的設(shè)計與實(shí)現(xiàn)
基于智能手機(jī)的校園短信網(wǎng)關(guān)系統(tǒng)的設(shè)計與實(shí)現(xiàn)
來源:微型機(jī)與應(yīng)用2010年第16期
石功恒1,陳建勛1,鄭 軒2
(1.武漢科技大學(xué) 計算機(jī)科學(xué)與技術(shù)學(xué)院,湖北 武漢430065;2.武漢大學(xué) 電子信息學(xué)院,湖北
摘要: 提出了將Windows mobile智能手機(jī)作為服務(wù)器的校園短信網(wǎng)關(guān)系統(tǒng)的應(yīng)用方案。本短信網(wǎng)關(guān)系統(tǒng)由PC機(jī)和WiFi智能手機(jī)組成,PC機(jī)與WiFi智能手機(jī)之間通過自定義的通信協(xié)議進(jìn)行數(shù)據(jù)通信。PC機(jī)向WiFi智能手機(jī)發(fā)送命令,調(diào)用智能手機(jī)的短信API,通過GSM網(wǎng)絡(luò)將短信發(fā)送至目的手機(jī)。本校園短信網(wǎng)關(guān)系統(tǒng)為校園教務(wù)人員、教師和學(xué)生之間的互動以及校園舉辦的各種短信投票、短信祝福提供了快捷廉價的方式。
Abstract:
Key words :

摘  要: 提出了將Windows mobile智能手機(jī)作為服務(wù)器的校園短信網(wǎng)關(guān)系統(tǒng)的應(yīng)用方案。本短信網(wǎng)關(guān)系統(tǒng)由PC機(jī)和WiFi智能手機(jī)組成,PC機(jī)與WiFi智能手機(jī)之間通過自定義的通信協(xié)議進(jìn)行數(shù)據(jù)通信。PC機(jī)向WiFi智能手機(jī)發(fā)送命令,調(diào)用智能手機(jī)的短信API,通過GSM網(wǎng)絡(luò)將短信發(fā)送至目的手機(jī)。本校園短信網(wǎng)關(guān)系統(tǒng)為校園教務(wù)人員、教師和學(xué)生之間的互動以及校園舉辦的各種短信投票、短信祝福提供了快捷廉價的方式。
關(guān)鍵詞: 智能手機(jī);短信網(wǎng)關(guān);WiFi;通信協(xié)議

    隨著信息技術(shù)的高速發(fā)展,校園中教務(wù)人員、教師以及學(xué)生之間的交流也將信息化。網(wǎng)絡(luò)的快速發(fā)展已經(jīng)為校園里的交流提供了快捷的渠道,但是還不能達(dá)到即時信息交流的效果。手機(jī)短消息服務(wù)提供了隨身攜帶即時信息交流的功能,二者結(jié)合起來,PC機(jī)通過網(wǎng)絡(luò)與手機(jī)通信。本文提出的校園短信網(wǎng)關(guān)系統(tǒng),將為校園教務(wù)人員、教師和學(xué)生提供了更加方便的交流平臺。
1 校園短信網(wǎng)關(guān)的結(jié)構(gòu)
1.1 物理結(jié)構(gòu)

    本校園短信網(wǎng)關(guān)系統(tǒng)主要由客戶端PC機(jī)和WiFi手機(jī)組成。客戶端PC機(jī)通過路由器接到互聯(lián)網(wǎng)上,WiFi手機(jī)通過無線路由器接到互聯(lián)網(wǎng)上,客戶端PC機(jī)就可以通過網(wǎng)絡(luò)與WIFI手機(jī)通信,WiFi手機(jī)通過GSM網(wǎng)絡(luò)與其他用戶手機(jī)通信。實(shí)現(xiàn)了客戶端PC機(jī)通過WiFi手機(jī)作為短信網(wǎng)關(guān)與手機(jī)用戶之間的通信。校園短信網(wǎng)關(guān)的物理結(jié)構(gòu)圖如圖1所示。

1.2 邏輯結(jié)構(gòu)
    校園短信網(wǎng)關(guān)客戶端包括調(diào)用接口、通信協(xié)議封裝與解析、SocketClient三部分。短信網(wǎng)關(guān)采用向上層系統(tǒng)提供調(diào)用接口,上層其它系統(tǒng)通過調(diào)用接口,向請求中心發(fā)送請求(發(fā)送短信和接收短信)。在收到上層調(diào)用命令后,請求中心將請求命令封裝成自定義的通信協(xié)議,通過SocketClient將請求發(fā)送給短信網(wǎng)關(guān)服務(wù)器。
    校園短信網(wǎng)關(guān)服務(wù)器的SocketServer監(jiān)聽端口狀態(tài),監(jiān)聽到客戶端發(fā)送的命令后,就通過通信協(xié)議解析模塊將命令解析,之后調(diào)用Windows Mobile SDK提供的手機(jī)底層API執(zhí)行相應(yīng)的功能。校園短信網(wǎng)關(guān)的邏輯結(jié)構(gòu)圖如圖2所示。

2 短信收發(fā)功能的設(shè)計與實(shí)現(xiàn)
2.1 短信發(fā)送

    校園短信網(wǎng)關(guān)系統(tǒng)的客戶端調(diào)用短信網(wǎng)關(guān)接口,設(shè)置收信用戶號碼、短信內(nèi)容、發(fā)送方式、發(fā)送時間等信息,達(dá)到向目的用戶發(fā)送短信的功能。其中,發(fā)送方式分單發(fā)和群發(fā);發(fā)送時間分立即發(fā)送和定時發(fā)送。
    校園短信網(wǎng)關(guān)系統(tǒng)發(fā)送短信過程如圖3所示。用戶在客戶端PC機(jī)上設(shè)置短信發(fā)送信息,提交給請求中心,請求中心將短信信息封裝后通過Socket發(fā)送給服務(wù)器。短信網(wǎng)關(guān)服務(wù)器收到短信發(fā)送請求信息后,根據(jù)發(fā)送時間的不同分為兩種不同的處理流程。如果短信發(fā)送信息中的發(fā)送方式是立即發(fā)送,則直接調(diào)用短信發(fā)送服務(wù)將短信發(fā)送到目的手機(jī)號碼;如果是定時發(fā)送,則將短信發(fā)送信息寫入數(shù)據(jù)庫的定時任務(wù)表中。系統(tǒng)設(shè)置定時器,每隔一段時間查詢該數(shù)據(jù)庫的定時任務(wù)表,發(fā)現(xiàn)定時任務(wù)的時間到了,則將該條短信發(fā)送出去。例如,定時任務(wù)表中的一條記錄為:[時間2009-09-10 10:00:00 手機(jī)號碼138********,內(nèi)容“教師節(jié)快樂”],短信網(wǎng)關(guān)服務(wù)器的定時器掃描任務(wù)表時,發(fā)現(xiàn)該定時時間到或者超過的時間在允許誤差范圍內(nèi),就將該短信發(fā)送至目的手機(jī)。

2.2 短信接收
    用戶可以在客戶端通過短信網(wǎng)關(guān)服務(wù)器接收來自不同手機(jī)用戶發(fā)送的短信,達(dá)到不同的效果(例如學(xué)校師生互動短信、校園活動投票、選舉投票,節(jié)日祝福等)。
    根據(jù)短信接收的功能需求將接收方式分為4種:(1)查看所有收到的短信,類似于手機(jī)的收件箱,用戶可以查看收到的所有短信;(2)查看一段時間內(nèi)所有收到的短信。用戶在客戶端設(shè)置起始時間和結(jié)束時間,向服務(wù)器發(fā)送請求該時間段內(nèi)的所有短信。例如,用戶設(shè)置了短信投票活動,在活動截至后,需要統(tǒng)計投票結(jié)果時,用戶向服務(wù)器請求接收所有投票短信內(nèi)容;(3)查看所有未被查收短信;(4)查看數(shù)據(jù)庫接收短信日志表中沒有被查收的短信記錄。
    用戶在PC機(jī)客戶端接收短信實(shí)現(xiàn)的過程如圖4所示,在短信網(wǎng)關(guān)服務(wù)器上設(shè)置一個用戶信息配置表,該表包含用戶名、密碼和對應(yīng)字頭。服務(wù)器則將所有接收的短信存儲在短信接收日志表中。用戶在客戶端向服務(wù)器發(fā)出查收短信請求,服務(wù)器在用戶信息配置表表根據(jù)用戶名查找該用戶對應(yīng)的字頭,然后在短信接收日志表中根據(jù)字頭查看短信,將所有符合該用戶要求的短信封裝后發(fā)送給用戶。

3 客戶端PC機(jī)與手機(jī)通信協(xié)議的設(shè)計
    校園短信網(wǎng)關(guān)服務(wù)器與客戶端用UDP包進(jìn)行通信。UDP數(shù)據(jù)包的總長度為65 535 B,可以放進(jìn)一個IP包,使得UDP/IP協(xié)議棧的實(shí)現(xiàn)非常簡單、高效。UDP數(shù)據(jù)包的總長度減去UDP包頭本身所占的8 B,UDP服務(wù)中的最大有效載荷長度為65 527 B。當(dāng)傳輸?shù)臄?shù)據(jù)大于65 527 B時,應(yīng)將數(shù)據(jù)包分為幾個小于65 527字節(jié)數(shù)據(jù)包來傳輸。校園短信網(wǎng)關(guān)服務(wù)器與客戶端之間的通信協(xié)議分為三個部分:建立連接階段,數(shù)據(jù)傳輸階段和會話結(jié)束階段。
3.1 建立連接階段
    (1)客戶端請求連接
    CONNECT SMS/1.0\r\n 
    表示發(fā)出連接請求,自定義的協(xié)議類型和版本號
    From:<sms:192.168.0.1:8868;username=stone;password
=123456>\r\n
    表示發(fā)送用戶的IP地址端口,用戶名和密碼
    User-Agent:SMS Client Release 145\r\n\n
    表示客戶端的名稱和版本
    (2)服務(wù)器端響應(yīng)
    服務(wù)器首先驗(yàn)證用戶是否合法,若驗(yàn)證合法,則服務(wù)器為該用戶隨機(jī)生成一個15位的連接Session-ID,并將該Session-ID發(fā)送給客戶端,在后續(xù)的數(shù)據(jù)傳輸階段和會話結(jié)束階段,客戶端發(fā)送的請求信息中都應(yīng)包含Session-ID,以驗(yàn)證用戶在一次協(xié)議傳輸?shù)暮戏ㄐ浴?br />     SMS/1.0 100OK\r\n    連接成功的標(biāo)識
    Content-Type:application/smsc\r\n    內(nèi)容的類型,包括文本內(nèi)容傳輸和SMS控制協(xié)議傳輸
    Content-Length:0\r\n    內(nèi)容長度,應(yīng)大于等于0,小于等于自定義協(xié)議的長度最大值
    Session-ID: 68a354de789ecef\r\n\n    服務(wù)器隨機(jī)產(chǎn)生的15位ID
    若驗(yàn)證不合法,則服務(wù)器返回不合法的類型。
    SMS/1.0 Error100\r\n    Error100表示錯誤類型
3.2 數(shù)據(jù)傳輸階段
    根據(jù)校園短信網(wǎng)關(guān)系統(tǒng)的功能需求來定義數(shù)據(jù)傳輸?shù)姆绞剑糠N方式定義一種通信協(xié)議的標(biāo)識符,例如即時發(fā)送的標(biāo)識符為POST,以即時發(fā)送為例說明數(shù)據(jù)傳輸階段的協(xié)議內(nèi)容。
    (1)客戶端發(fā)送:
    POST SMS/1.0\r\n
    Session-ID: 68a354de789ecef\r\n
    User-Agent:SMS Client Release 145\r\n
    Date:2009-09-10 10:00:00\r\n
    Message-Type:IMMEDIATE,GROUP\r\n
    From: <sms:192.168.0.1:8868;username=stone>\r\n
    To: 13636066060,13476240028,13884053687\r\n
    Content:Happy Teachers’Day!\r\n
    Content-Type:application/text\r\n
    Content-Length:N\r\n\r\n
    (2)服務(wù)器反饋信息:
    如果服務(wù)器處理失敗,則返回錯誤編號:
    SMS/1.0 Error400\r\n
    如果服務(wù)器處理成功,則返回成功信息編號:
    SMS/1.0 200OK\r\n
3.3 會話結(jié)束階段
    會話結(jié)束有兩種情況,一是客戶端出現(xiàn)異常情況,在規(guī)定時間內(nèi)沒有反饋信息,則服務(wù)器關(guān)閉連接銷毀Session-ID;二是客戶端正常,且在一次會話結(jié)束后,由客戶端在超時允許范圍之內(nèi)發(fā)出會話結(jié)束請求。
    (1)客戶端超時
    服務(wù)器不做任何發(fā)包工作,關(guān)閉通信連接,銷毀Session-ID,清除此次會話的相關(guān)資源。
    SMS/1.0 Error400\r\n  表示客戶端超時
    (2)客戶端發(fā)起會話結(jié)束請求
    客戶端發(fā)送:
    BYE SMS/1.0\r\n   表示結(jié)束會話的標(biāo)識
    Session-ID: 68a354de789ecef\r\n\r\n
    服務(wù)器反饋:
    SMS/1.0 200OK\r\n  表示會話結(jié)束成功
    Session-ID: 68a354de789ecef\r\n\r\n
    本文所設(shè)計的校園短信網(wǎng)關(guān)系統(tǒng)通過無線網(wǎng)絡(luò)實(shí)現(xiàn)了PC機(jī)與手機(jī)之間的通信,其重點(diǎn)是通信協(xié)議的定義以及對短信收發(fā)請求和短信內(nèi)容的封裝與解析。其次,本短信網(wǎng)關(guān)系統(tǒng)中調(diào)用了Windows Mobile SDK提供的手機(jī)短信收發(fā)接口函數(shù),有利于將來校園短信網(wǎng)關(guān)系統(tǒng)的功能擴(kuò)展。
參考文獻(xiàn)
[1] 葛寧,徐煒,張道平.基于設(shè)計模式的企業(yè)短信網(wǎng)關(guān)框架[J].計算機(jī)工程,2005,31(1):100-102.
[2] 唐胡鑫,史忠植.短消息網(wǎng)關(guān)通信模塊的設(shè)計[J].計算機(jī)工程與科學(xué),2005,27(5):20-21.
[3] 范馨亞,徐汀榮,萬軍.基于GSM/SMS的校園通研究[J]. 計算機(jī)與現(xiàn)代化,2006,127(3):100-102.
[4] 吳清強(qiáng).中小型企業(yè)應(yīng)用短信網(wǎng)關(guān)開發(fā)[J].計算機(jī)工程與設(shè)計,2005,26(6):1669-1672.
[5] http://msdn.microsoft.com/zh-cn/windowsmobile/default.aspx.

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。
主站蜘蛛池模板: 国产麻豆精品在线观看| 成年女人a毛片免费视频| 亚洲欧美日韩在线线精品| 精品人人妻人人澡人人爽人人| 国产偷v国产偷v国产| 精品丝袜国产自在线拍亚洲 | 又粗又硬又爽的三级视频| 在线天堂中文www官网| x8x8在线观看| 成人在线综合网| 久久久91精品国产一区二区三区| 日韩系列第一页| 亚洲人成777在线播放| 欧美日韩第一区| 亚洲精品天堂成人片AV在线播放| 白丝爆浆18禁一区二区三区| 出差被绝伦上司侵犯中文字幕| 美女胸又大又www又黄的网站| 国产丝袜无码一区二区三区视频 | 人成精品视频三区二区一区| 精品亚洲成a人在线观看| 同城免费妇女寂寞| 老公去上班的午后时光| 护士系列sdde221取精| 久久精品亚洲精品国产欧美 | 国产东北老头老太露脸| 麻豆国产精品va在线观看不卡| 国产无遮挡又黄又爽在线观看| jizz国产精品jizz中国| 国产精品内射视频免费| 77777_亚洲午夜久久多人| 国语自产精品视频在线看| GOGOGO免费观看国语| 天堂…中文在线最新版在线| chinese中国农村夫tube| 日韩精品高清自在线| 亚洲av中文无码乱人伦在线视色 | 亚洲熟妇无码乱子av电影| 污污视频在线免费看| 亚洲精品人成无码中文毛片| 波多野结衣日本电影|