左天惠,劉敬華,張沛全,王 卓
(1.廣西壯族自治區地震局,廣西 南寧 531002; 2. 黑龍江省地震局,黑龍江 哈爾濱 150096)
廣西地震信息推送與災情收集系統的設計與實現
左天惠1,劉敬華1,張沛全1,王 卓2
(1.廣西壯族自治區地震局,廣西 南寧 531002; 2. 黑龍江省地震局,黑龍江 哈爾濱 150096)
為了實現震后快速發布地震信息,快速收集與發布災情信息,節約開發成本,便于推廣應用,本研究基于Openfire服務端的推送平臺和災情上報AndroidAPP軟件,組成地震信息推送與災情收集系統。本研究設計的“廣西地震信息推送與災情收集系統”APP主要有災情信息報送、災情數據的存儲與上傳,震情與災情信息推送與收集三大主要功能模塊。本APP經過廣西全區多個地市地震局的試用體驗后,反映良好。
地震應急; Android; 信息推送; 災情收集
地震系統目前在許多地區進行地震災情收集工作,主要是通過信息人員對災區“三網一員”人員進行電話調查、官方微博及現場應急通訊系統對災區視頻、圖像等災情信息進行獲取。傳統的災情獲取方式一定程度上不能及時、系統的收集和存儲地震現場災情,同時也不能將空間位置信息直觀的進行展示。在震后緊張的應急期間上述問題,不利于指揮長進行科學的指揮決策和救災隊伍開展救援工作[1]。
近幾年基于Android系統開發的地震應急類的APP如火如荼地進行,其中以山東、福建、浙江和湖北等省地震局所開發的地震應急災情上報Android系統較為突出[2-3],其中湖北省地震局所開發的災情上報信息系統的界面設計醒目,內容涵蓋齊全。但由于其市場推廣價較為昂貴,一般用戶難以承擔。因此如何開發出輕量級的、廉價的Android地震應急災情收集系統對于廣大西部省份的用戶具有很強的現實意義,比如廣西、貴州等。本文研究利用移動通信、數據庫及計算機軟件技術,以地震災情速報和災情收集為主要目標,建立一套基于Android平臺和Openfire服務端交互工作,實現在移動終端上運行的地震信息推送與災情收集系統。系統的研究與建設有望對今后的地震應急指揮及救援發揮積極作用。
Android系統架構和其操作系統一樣,采用了分層的架構,共分為四個層,從高層到低層分別是應用程序層、應用程序框架層、系統運行庫層和Linux內核層。系統由操作系統、應用程序接口和應用軟件構成,其中最為突出的優勢就是Android平臺的可開放性,開發的平臺允許任何移動終端廠商加入到Android聯盟中來[4]。近年來Android系統性能穩定,版本不斷推陳出新,逐漸成為移動終端市場的主流操作系統[5]。因此,本文確定基于Android系統開展地震災情收集信息系統的開發工作,借以充分利用其擁有的廣泛用戶群資源,方便軟件的推廣與應用。
所謂信息推送,就是“Web廣播”,是通過一定的技術標準或協議,在互聯網上通過定期傳送用戶需要的信息來減少信息過載的一項新技術。推送技術通過自動傳送信息給用戶,來減少用于網絡上搜索信息的時間。它根據用戶的興趣來搜索、過濾信息,并將其定期推給用戶,幫助用戶高效率地發掘有價值的信息。本軟件所使用的推送方案為第三方推送服務,即地震發生后通過使用第三方提供的XMPP即時推送服務器向安裝有該APP的手機終端定向推送地震信息及其相關救災信息。本文采用的是百度推送服務功能,由于百度推送已經提供了服務器推送管理后臺頁面。本文僅針對手機終端推送SDK的集成開發與本地化等進行研究開發。
本項目采用的數據庫是開源的MySQL數據庫,MySQL是一個關系型數據庫管理系統。它由瑞典 MySQL AB 公司開發,目前屬于 Oracle旗下公司。在Web應用方面, MySQL 是最好的RDBMS (Relational Database Management System,關系數據庫管理系統)應用軟件之一。MySQL是一種關聯數據庫管理系統,關聯數據庫將數據保存在不同的表中,而不是將所有數據放在一個大倉庫內,這樣就增加了速度并提高了靈活性。與其他的大型數據庫例如 Oracle、DB2、SQL Server等相比,MySQL 自有它的不足之處,但是這絲毫也沒有減少它受歡迎的程度。對于一般的個人使用者和中小型企業來說,MySQL提供的功能已經完全能滿足系統所需。更重要的是MySQL數據庫是開放源碼軟件,可以大大降低成本。
由于地震現場應急的需求,本文針對地震應急安卓系統移動終端應用與推廣等進行探索,按照“先小后大”的思路,開發具有基本應急功能的“地震信息推送及災情上報系統”手機軟件。系統建設目標最終確定為整合移動互聯網、WEB2.0、LBS、3G與云計算技術的地震應急移動互聯平臺。在Android平臺上研發具有地震定位、地震信息推送、災情上報等功能,且具有自主知識產權的地震信息推送與災情收集系統[6]。實現地震信息的推送與接收、處理、報警與展示,以及災情、震情信息的查詢功能。通過該四個層次共同組成一個應急信息共享與交流的平臺。
根據震后地震信息發布和災情收集需求,按不同時段對系統目標功能進行劃分,具體要求如表1所示:

表1 系統功能需求
項目擬建設一套充分利用移動通訊技術(3G/4G/Wi-Fi), 集 成 GPS和 GIS, 運 用Web服務,系統而又專業地解決應急指揮調度與災情快速收集評估的實用化系統。(1)客戶端能夠顯示地圖,并能隨意獲取地圖上的經緯度坐標,詳細地址等信息;(2)客戶端能夠獲取用戶聯系方式,拍攝災情照片,錄制視頻,錄制語音文件,并使用這些文件作為采集數據;(3)客戶端能夠將(1)和(2)收集到的數據上傳至服務器,并將這些文件保存在服務器相應的文件夾下面;(4)客戶端根據當前或者選定坐標,訪問服務器,搜索附近的應急避難場所,并給出到達該避難場所的路線;(5)客戶端能夠訪問服務器,獲取最近3個月的全國地震信息,并能按照時間,震級,按與用戶當前位置遠近進行排序。能夠在百度地圖上顯示震源詳細信息,并計算出震源與當前位置的距離;(6)服務器能夠實時向客戶端推送最新的地震信息并在客戶端通知欄顯示,客戶端可以設置是否接收服務器信息,地震信息的接收級別,地震信息的接收距離;(7)服務器能夠提供管理員以網頁的形式查看用戶上傳的數據,并對用戶上傳的數據進行查看刪除等管理操作。可實現將用戶上傳的文字信息,圖片下載到Word文檔的操作;(8)保證用戶量達到1萬時,仍然可以正常使用。
系統部署的服務器端為目前主流的服務器配置,手機端需安卓系統4.0或 版本。

表2 系統環境配置
本系統分為Openfire服務器和Android APP客戶端兩端,兩端使用TCP協議進行通訊客戶端和服務器端分別采用不同的軟件架構技術,它們共同組合成一個服務器與用戶交互的軟件信息系統。Openfire服務器由四大模塊構成:XMPP即時推送、網絡爬蟲、文件管理、數據庫管理,每個模塊分工明確,清晰地勾畫出了各個模塊所需要負責的工作,并協調一致為Openfire服務器的正常運行提供強有力的支撐。它還提供了Web網頁后臺進行管理,并于系統的日常維護。APP客戶端主要由以下四大模塊:XMPP即時推送、百度地圖、數據采集、數據庫管理。四大模塊負責各自的工作,成為這個APP客戶端的主要部分,APP提供了良好的UI人機交互界面供用戶使用。系統整體設計如下圖所示:

圖1 系統框架設計圖Fig.1 The design diagram of system architecture
在經過復雜的軟件開發工作之后,我們根據業務需求、系統架構和工作流程等完成整套系統前臺Android APP系統與后臺Openfire服務端的功能模塊功能邏輯關系和數據流傳遞路徑建立,清晰地勾畫出了各個模塊所需要負責的工作,并協調一致為前后臺軟件與服務器的正常運行提供強有力的支撐。系統主要功能分為六部分:一是地震三要素自動接收與預警(圖2);二是地震救災指令快速推送;三是災情上報信息處理與存儲;四是信息綜合展示與備份;五是地震災情上報與存儲(圖3);六是其他地震應急輔助服務功能,諸如地震應急避難路徑優化分析、避難場所信息查詢等功能。以下我們將對軟件所設計的三大核心功能的實現進行介紹。

圖2 震情推送功能Fig.2 The function of earthquake message pushing

圖3 災情上報功能Fig.3 The function of earthquake disaster reporting
利用客戶端APP軟件的災情上報功能,速報人員可根據現場采集到的災情,通過客戶端填寫相應的表單、拍攝圖片、音視頻等自動產生上報數據,確認后通過網絡即將采集的災情信息首先提交至手機端SQLite數據庫,等系統確定監測到網絡暢通后再從客戶端數據庫基于一種“Request—Reply”模式將數據發送至服務器端災情數據庫中,確保上報災情信息在無網和網絡差的條件下也能正常上傳。
APP客戶端,因地震造成通信基站損毀、網絡臨時中斷等極端情況,用戶很難立即直接將采集到的災情信息提交到本地數據庫中,需當通信網絡得到恢復后將災情信息發送至數據庫服務器,系統設計并實現了自動將存儲的災情信息上傳,并實現上傳后所有存儲在數據庫中存儲的數據記錄全部自動清空,以釋放軟件所占有的資源,該功能充分利用本地SQLite數據庫的資源,有效解決地震現場用戶手機處于網絡通信不暢的情況下災情信息的傳輸的問題,具有很強的實用價值。
Openfire服務器端應用程序通過Servlet技術負責客戶端指令進行監聽與信息交互業務,當Servlet接收到客戶端發送的POST請求指令后,將捕獲的災情信息通過ADO方法連接并寫入服務器數據庫中,同時Servlet調用HTTP類的Send函數,通過Java編寫的類函數將災情信息分發到各客戶端,其他客戶端便可接收到信息。還可以對用戶上傳的災情數據進行查看、刪除等管理操作可以將所有災情數據導成Word格式的文件,并下載到本地。

圖4 災情信息管理平臺Fig.4 The platform of disaster information management system
系統在總結地震應急工作的相關需求基礎上,利用先進的Android系統平臺,綜合智能手機、3G/4G技術、開源GIS、開源數據庫、消息推送與地圖定位等技術,開發實現了一整套地震災情上報與救災指令快速下達等功能的服務系統。相比較與其他省局的地震災情收集終端,本課題所開發的系統具有費用低及部署方便等優勢,但也可以發現我們的系統無論是美化還是提供服務的類型都與其他省局先進的終端存在一定的差距,這也是我們課題后期將要繼續努力的方向。
系統已經經過欽州市地震局、北海市地震局、防城港市地震局等應急指揮中心應急人員使用測試,測試結果表明系統運行穩定,各模塊運行正常,系統框架基本滿足全區地震應急災情手機工作需求。指揮長可以根據本系統收集到的災情信息做出科學的決策,對相關人員或資源進行合理的指揮與調度,從而提高區域應急指揮的效率和救援的能力。
本研究設計的“廣西地震信息推送及災情上報系統”APP建立了具有較完整的現場災情獲取功能,實現采集和傳輸各類地震信息及其空間位置信息的文本、圖片和視頻文件,通過本系統的推送和上報功能,較好地實現地震災區、前方指揮部和后方地震急指揮中心的信息互通與共享。同時該系統也可以擴展為區域大應急模式下的協同聯動信息系統。經過一段時間用戶使用體驗,效果良好。
下一步課題組將完善該軟件的各項功能,使其無論在操作性還是效率上都得到一定提升,提高用戶使用舒適度,以促進軟件的推廣與服務。
[1] 姜立新, 帥向華, 聶高眾, 等. 地震應急聯動信息服務技術平臺設計探討[J]. 震災防御技術,2011,17(02): 44-53.
[2] 董翔, 肖蘭喜, 杜憲宋, 等. 基于網絡的山東地震災情收集分析處理系統[J]. 華北地震科學,2007,19(03): 188-194.
[3] 徐敬海, 徐徐, 劉偉慶, 等. 基于GIS/GSM的南京市地震災情速報系統[J]. 南京工業大學學報(自然科學版). 2009, 27(01): 127-134.
[4] 黎林, 宋娟, 張磊, 等. 基于Android 平臺的森林防火助手的研究與設計[J]. 合肥學院學報, 2013, 23(01): 45-49.
[5] 王瑩, 巨曉璇, 李建科, 等. 基于Android 智能手機氣象服務系統的設計與實現[J]. 河南科技, 2013, 27(02): 17-19.
[6] 帥向華, 鄭向, 劉欽. 基于SMS/GPS/GIS地震災情獲取處理技術研究與實現[J]. 震災防御技術, 2011,22(02): 127-134.
Abstract:In order to release the earthquake information after the earthquake, collect and release of the earthquake disaster information quickly, to save the development cost, and to popularly apply, this study based on Openfire server’s push platform and the disaster reporting APP by Android which is composed of the seismic information push and disaster collection system. It is a software that is named“The earthquake disaster information push and collection system of Guangxi” APP, and consist of there main function, disaster information submission, storage and uploading of disaster data, the earthquake information push and disaster information collection. The APP is reflected nice after the number of local seismological bureaus trialed and experienced in Guangxi.
Key words:earthquake emergency; Android; information push;the disaster information collection
The Design and Implementation of Seismic Information Push and Disaster Collection System of Guangxi Province
ZUO Tian-hui1,LIU Jing-hua1,ZHANG Pei-quan1,WANG Zhuo2
(1. Seismological Bureau of Guangxi Zhuang Autonomous Region, Guangxi Nanning 530022, China;2. Earthquake Administration of Heilongjiang Province, Heilongjiang Harbin 150096, China)
P315.69;P315.9
A
10.13693/j.cnki.cn21-1573.2017.03.014
1674-8565(2017)03-0078-05
2016-11-22
2017-03-01
左天惠(1982- ),男,廣西省桂林市人,畢業于南京大學,研究生,工程師,現主要從事地震應急方面的工作。E-mail: zuotianhuinju@sina.com