崔迪
隨著區(qū)域中尺度氣象站的增加,氣象災(zāi)害監(jiān)測(cè)能力已經(jīng)有了長(zhǎng)足的進(jìn)步;而雷達(dá)及其相關(guān)產(chǎn)品的投入使用,使得突發(fā)性災(zāi)害天氣的臨近預(yù)報(bào)能力有明顯的提升。但網(wǎng)站、96121、LED等發(fā)布方式,均需要用戶(hù)主動(dòng)去關(guān)心和獲取最新的信息,難免會(huì)造成重要的預(yù)警信息在傳輸?shù)接脩?hù)時(shí)有一定的滯后性。因此重要的信息必須采取主動(dòng)發(fā)送的方式,短信就是其中一種較好的方式。另外,當(dāng)未及時(shí)收取到短信時(shí),撥打語(yǔ)音電話來(lái)將消息發(fā)送給最需要了解這些信息的人員也是一種有效發(fā)布途徑。
一、硬件結(jié)構(gòu)
短信發(fā)送后臺(tái)部分硬件主要由氣象信息服務(wù)器、信息處理服務(wù)器以及移動(dòng)代理服務(wù)器三部分組成。其中氣象信息服務(wù)器用于實(shí)時(shí)收集和儲(chǔ)存氣象信息數(shù)據(jù);信息處理服務(wù)器用于儲(chǔ)存地理信息資料和用戶(hù),同時(shí)對(duì)氣象信息進(jìn)行分析和處理,生成氣象預(yù)警短信;移動(dòng)代理服務(wù)器用于發(fā)送手機(jī)短信,通過(guò)開(kāi)放接口與信息處理服務(wù)器對(duì)接。(圖1)
二、短信發(fā)送的實(shí)現(xiàn)
為方便調(diào)用及后續(xù)維護(hù),將短信發(fā)送功能編譯成動(dòng)態(tài)連接庫(kù)。
此動(dòng)態(tài)鏈接庫(kù)先判斷自身所處的網(wǎng)絡(luò)環(huán)境,先嘗試以氣象內(nèi)網(wǎng)地址連接移動(dòng)代理服務(wù)器,失敗后將以氣象外網(wǎng)地址連接移動(dòng)代理服務(wù)器,故在氣象內(nèi)網(wǎng)和氣象外網(wǎng)均能正常發(fā)送短信。在成功連接服務(wù)器后,對(duì)提交的短信發(fā)送請(qǐng)求的號(hào)碼進(jìn)行分割和過(guò)濾,無(wú)效以及重復(fù)的號(hào)碼將會(huì)去掉。緊接隨后動(dòng)態(tài)連接庫(kù)將會(huì)根據(jù)接口的要求添加相應(yīng)的必要字段,并將內(nèi)容插入到數(shù)據(jù)庫(kù)中。如果成功插入數(shù)據(jù),動(dòng)態(tài)鏈接庫(kù)將發(fā)送記錄寫(xiě)到另外的數(shù)據(jù)庫(kù)中,方便以后查詢(xún)發(fā)送情況,最后無(wú)論是否成功插入數(shù)據(jù)庫(kù),動(dòng)態(tài)鏈接庫(kù)都會(huì)把相應(yīng)的信息記錄到單獨(dú)的文本文件中,每個(gè)文件記錄著具體的短信發(fā)送情況,包括發(fā)送時(shí)間、發(fā)送方式、發(fā)送人員、發(fā)送內(nèi)容等等。
當(dāng)數(shù)據(jù)插入后,移動(dòng)代理服務(wù)器會(huì)將相應(yīng)的短信發(fā)送請(qǐng)求向外發(fā)送,在網(wǎng)絡(luò)正常的情況下完成短信發(fā)送的請(qǐng)求流程。
三、語(yǔ)音撥號(hào)的實(shí)現(xiàn)
若需語(yǔ)音撥號(hào)通知的人員較少,可設(shè)計(jì)單路語(yǔ)音撥號(hào)。為使系統(tǒng)有更高的通用性和擴(kuò)展性,可使用普通Android手機(jī)進(jìn)行開(kāi)發(fā),以PC機(jī)作為語(yǔ)音撥號(hào)控制設(shè)備。
為了保證系統(tǒng)的穩(wěn)定性,Android手機(jī)要求至少為雙核或以上處理器,系統(tǒng)運(yùn)行內(nèi)存1G或以上,空閑存儲(chǔ)空間1G以上;PC機(jī)要求雙核或以上處理器,系統(tǒng)內(nèi)存2G或以上。
此處Android手機(jī)與PC之間使用ADB(Android Debug Bridge)進(jìn)行連接。Android手機(jī)需要2.0以上版本的操作系統(tǒng),并在系統(tǒng)中需要開(kāi)啟USB調(diào)試功能。同時(shí)在對(duì)應(yīng)的語(yǔ)音撥號(hào)控制PC上需要安裝所使用手機(jī)的ADB interface 驅(qū)動(dòng)。
當(dāng)系統(tǒng)向語(yǔ)音撥號(hào)服務(wù)器提交撥號(hào)請(qǐng)求后,程序先判斷該號(hào)碼是否有效號(hào)碼,如果為無(wú)效號(hào)碼,將記錄相應(yīng)的錯(cuò)誤信息并結(jié)束語(yǔ)音外撥流程。如果號(hào)碼為有效號(hào)碼,則調(diào)用96121聲訊服務(wù)器中的語(yǔ)音轉(zhuǎn)換功能,將相應(yīng)信息轉(zhuǎn)換成語(yǔ)音文件。
當(dāng)成功轉(zhuǎn)換語(yǔ)音文件后,程序?qū)?huì)判斷當(dāng)前手機(jī)是否處于空閑狀態(tài),如果處于空閑狀態(tài),則通過(guò)ADB啟動(dòng)手機(jī)的撥號(hào)流程。當(dāng)檢測(cè)到手機(jī)撥號(hào)撥通之后,程序?qū)⒃赑C上播放語(yǔ)音文件,直接將聲音輸入到手機(jī)作為外撥語(yǔ)音。
如果不能接通,將在停止一段時(shí)候后重新開(kāi)始撥號(hào)。當(dāng)語(yǔ)音播放完后,通過(guò)ADB接口掛斷手機(jī),記錄相應(yīng)信息,并結(jié)束撥號(hào)流程。
四、預(yù)警流程
系統(tǒng)運(yùn)行時(shí),將自動(dòng)刷新雨量、溫度、大風(fēng)等實(shí)況及預(yù)報(bào)信息。其中實(shí)況信息包括1小時(shí)、2小時(shí)、3小時(shí)、6小時(shí)、12小時(shí)、24小時(shí)等累計(jì)降水量、最高氣溫、最低溫度及極大風(fēng)速。預(yù)報(bào)信息包括未來(lái)1小時(shí)、未來(lái)3小時(shí)、未來(lái)6小時(shí)、未來(lái)12小時(shí)、未來(lái)24小時(shí)等預(yù)報(bào)降水量、預(yù)報(bào)最高溫度、預(yù)報(bào)最低溫度及預(yù)報(bào)最大風(fēng)速。
當(dāng)實(shí)況或者預(yù)報(bào)雨量超過(guò)預(yù)定指標(biāo)的時(shí)候,將立刻短信通知相關(guān)值班人員,同時(shí)將帶有地理信息資料的預(yù)警信息提交到短信發(fā)送子系統(tǒng)中,在前端顯示系統(tǒng)中與值班人員交互操作發(fā)送。
參 考 文 獻(xiàn)
[1] 焦圣明,包云軒,郭靜,袁成松,錢(qián)瑋. 基于RIA氣象站信息平臺(tái)的設(shè)計(jì)與實(shí)現(xiàn)[J]. 計(jì)算機(jī)工程. 2010(20)
[2] 吳煥萍. GIS技術(shù)在氣象領(lǐng)域中的應(yīng)用[J]. 氣象. 2010(03)
[3] 張紅杰,馬清云,吳煥萍,羅兵,唐衛(wèi). 氣象降水分布圖制作中的插值算法研究[J]. 氣象. 2009(11)