徐 丹 韓艷杰 張諾男 寇曼曼 高冠龍(中國鄭州450016河南省地震局)
?
地震信息微信公眾平臺服務(wù)開發(fā)
徐 丹 韓艷杰 張諾男 寇曼曼 高冠龍
(中國鄭州450016河南省地震局)
摘要微信公眾平臺作為一種新的即時通訊產(chǎn)品,被廣泛應(yīng)用于各行各業(yè)。利用微信公眾服務(wù)平臺開發(fā)模式下的高級接口,實現(xiàn)震情信息的即時推送、歷史地震查詢、位置服務(wù)、應(yīng)急避難場所查詢和地震科普知識宣傳等功能,從而擴(kuò)展地震信息的服務(wù)渠道,提升地震行業(yè)公眾服務(wù)能力,具有較強(qiáng)的實用性。
關(guān)鍵詞微信公眾平臺;震情推送;位置服務(wù);科普宣傳
隨著移動互聯(lián)網(wǎng)技術(shù)的不斷發(fā)展,智能手機(jī)的快速普及,各種即時通訊應(yīng)用軟件層出不窮。微信公眾平臺作為目前影響力最大、發(fā)展最為成熟的即時通訊傳播媒介,已為人們廣泛應(yīng)用。根據(jù)中國互聯(lián)網(wǎng)信息中心(CNNIC)的研究:自2012年8月微信公眾平臺誕生,2013年11月就突破200個公眾賬號,截至2014年7月底微信公眾號達(dá)580萬,每日新增1.5萬個。截至2014年5月,65%的中國網(wǎng)民(8億)使用微信。目前微信公眾平臺已經(jīng)被廣泛用于圖書館信息服務(wù)(黃浩波等,2013;江波等,2103;張蓓等,2014;李文江等,2014)、航運(yùn)信息服務(wù)(詹鑫紅,2014)、中小企業(yè)CRM系統(tǒng)(肖富春,2014)、移動銀行服務(wù)(甘榮石,2014)、媒體、公益組織等領(lǐng)域。
在2013年4月20日四川蘆山地震中,近15萬人使用微信關(guān)注“蘆山地震救助”,實時發(fā)送消息達(dá)20余萬條,在震后災(zāi)情收集和應(yīng)急救援工作中發(fā)揮了巨大作用。如何借助微信公眾平臺向社會民眾推送震情信息,提供歷史地震信息查詢、震中信息展示(和朝霞,2012)、震中距測算、應(yīng)急避難場所查詢、地震科普知識宣傳等功能,是本文研究的主要內(nèi)容。
1.1 設(shè)計思路
微信公眾平臺賬號類型分為服務(wù)號和訂閱號。服務(wù)號特點(diǎn)是,每月可以群發(fā)4條信息給用戶,群發(fā)消息不顯示在聊天列表,下發(fā)消息即時推送用戶,默認(rèn)可以自動獲得自定義菜單,在申請并獲得微信認(rèn)證后可以獲得高級接口權(quán)限,并開啟編輯模式進(jìn)行個性化開發(fā),服務(wù)號旨在為用戶提供個性化定制服務(wù)。訂閱號特點(diǎn)是,每天可群發(fā)一條信息給用戶,群發(fā)消息隱藏在訂閱號文件夾,群發(fā)消息不會提示推送,認(rèn)證后可以申請自定義菜單,訂閱號主要用于提供信息和資訊。
在開發(fā)模式下,地震微信公眾平臺可以進(jìn)行關(guān)注回復(fù)、發(fā)送地理位置信息、推送圖文消息,還可以結(jié)合騰訊地圖等第三方地圖提供商進(jìn)行基于LBS的個性化開發(fā),具有交互性強(qiáng)、即時性強(qiáng)的特點(diǎn)。平臺在獲取用戶地理位置信息基礎(chǔ)上,能夠?qū)⒌卣鹦畔⑼ㄟ^地圖標(biāo)注的方式立體直觀地展現(xiàn)給用戶,并進(jìn)行震中距測算;還可將應(yīng)急避難場所的名稱、位置、容納、人數(shù),以圖文消息方式進(jìn)行推送,實現(xiàn)地圖展示;同時能夠?qū)⒌卣鹂破罩R編輯成多圖文消息進(jìn)行推送。
1.2 架構(gòu)
管理員利用開發(fā)模式,在微信公眾平臺中配置消息接口,接入微信消息處理模塊;微信用戶向微信公眾號發(fā)送查詢消息指令時,微信服務(wù)器將消息轉(zhuǎn)發(fā)至微信公眾平臺;微信公眾平臺根據(jù)預(yù)先配置的接口,將消息轉(zhuǎn)發(fā)給消息處理模塊;消息處理模塊會分析用戶發(fā)送消息的內(nèi)容,按照功能模塊對應(yīng)的Web應(yīng)用服務(wù)生成回復(fù)消息并返回給微信公眾平臺,用戶最終接受到回復(fù)消息。功能模塊對應(yīng)的Web應(yīng)用服務(wù)是微信公眾平臺服務(wù)實現(xiàn)的關(guān)鍵,負(fù)責(zé)分析用戶發(fā)送的消息指令并將其轉(zhuǎn)化為相應(yīng)服務(wù)子模塊的功能調(diào)用。系統(tǒng)平臺架構(gòu)見圖1。
圖1 總體架構(gòu)Fig.1 Overall architecture
1.3 功能
地震微信公眾平臺的主要功能有震情服務(wù)、地震應(yīng)對和科普宣傳。
(1)震情服務(wù)。震情服務(wù)為一級菜單,包含最新震情、歷史震情兩個二級菜單。同時,可實現(xiàn)最新震情的自動推送功能,主要包括震中、時間、震級信息,可將震中位置標(biāo)注在騰訊地圖上,并測算震中距離(圖2)。
最新震情為最近發(fā)生的一次地震,包括地震三要素,震中距等信息。用戶點(diǎn)擊菜單后,以圖文信息格式推送給用戶,圖文格式與自動推送震情時的格式相同。歷史震情顯示最近發(fā)生的10次地震,點(diǎn)擊后可在地圖上查看震中位置及地震三要素等信息(圖3)。
圖2 震情自動推送Fig.2 Earthquake information automatically push
圖3 最新震情和歷史地震Fig.3 The latest earthquake and history earthquake
(2)地震應(yīng)對。地震應(yīng)對為一級菜單,包含避難規(guī)劃、位置服務(wù)兩個二級菜單。避難規(guī)劃功能可基于用戶位置經(jīng)緯度信息計算50 km內(nèi)的應(yīng)急避難場所,以圖文消息格式發(fā)送給用戶,在騰訊MAP上標(biāo)注避難場所地理位置,下面羅列應(yīng)急避難場所名字、位置以及距離用戶千米數(shù)。應(yīng)急避難場所數(shù)據(jù)要素包括避難場所名字、經(jīng)度、緯度、可容納人數(shù)、類別、位置(圖4)。用戶可通過位置服務(wù)向微信服務(wù)器發(fā)送位置信息,并可提供位置的查詢搜索服務(wù)。
(3)科普宣傳??破招麄鳛橐患壊藛?,包含“避震常識”“聯(lián)系我們”兩個二級菜單。避震常識功能以圖文消息格式回復(fù)用戶,內(nèi)容包含文字、圖片,由“聯(lián)系我們”模塊轉(zhuǎn)到地震局地震信息網(wǎng)(圖5)。通過微信公眾平臺,管理員每月可向用戶推送4條多圖文消息。
圖4 避難規(guī)劃和位置服務(wù)Fig.4 Earthquake emergency shelter planning and location based service
圖5 科普宣傳和聯(lián)系我們菜單Fig.5 Science popularization and contact us
2.1 消息接口配置
消息接口配置是微信公眾號實現(xiàn)地震信息推送服務(wù)功能的前提。開通微信公眾號后,登錄微信公眾平臺,啟用“高級功能”菜單中的“開發(fā)模式”。登記接口的URL和Token,實現(xiàn)網(wǎng)址接入。Token用于生產(chǎn)簽名,URL則填寫用于消息處理的服務(wù)器資源。
信息提交時,微信服務(wù)器將GET請求填寫在URL上進(jìn)行發(fā)送。請求包括4個參數(shù):Signature(微信加密簽名)、Timestamp(時間戳)、Nonce(隨機(jī)數(shù))和Echostr(隨機(jī)字符串)。消息處理服務(wù)器將檢驗Signature,如果確認(rèn)請求來自微信服務(wù)器,則原樣返回Echostr參數(shù)內(nèi)容,表示接入生效,反之接入失敗。成功配置接口后,發(fā)送至微信公眾號的消息將被轉(zhuǎn)發(fā)給所登記的URL,并由指令解析模塊和各個服務(wù)子模塊完成消息的解析和回復(fù)。
2.2 消息發(fā)送與接收
當(dāng)用戶向微信公眾賬號發(fā)消息時,指令解析模塊負(fù)責(zé)解析來自微信服務(wù)器的POST請求,匹配消息類型和指令,調(diào)用具體的服務(wù)子模塊處理。請求消息的格式為XML,請求地理位置消息樣例如下。
<xml>
<ToUserName><![CDATA[toUser]]></ToUserName>
<FromUserName><![CDATA[fromUser]]></FromUserName>
<CreateTime>1351776360</CreateTime>
<MsgType><![CDATA[location]]></MsgType>
<Location_X>23.134521</Location_X>
<Location_Y>113.358803</Location_Y>
<Scale>20</Scale>
<Label><![CDATA[位置服務(wù)]]></Label>
<MsgId>1234567890123456</MsgId>
</xml>
微信服務(wù)器接收到用戶的“位置服務(wù)”消息請求后,返回用戶的經(jīng)緯度信息,并調(diào)取騰訊地圖進(jìn)行回復(fù),用戶點(diǎn)擊進(jìn)入地圖后可以進(jìn)行導(dǎo)航查詢。回復(fù)地理位置消息樣例如下。
<xml>
<ToUserName><![CDATA[toUser]]></ToUserName>
<FromUserName><![CDATA[fromUser]]></FromUserName>
<CreateTime>123456789</CreateTime>
<MsgType><![CDATA[event]]></MsgType>
<Event><![CDATA[LOCATION]]></Event>
<Longitude>113.352425</Longitude>
<Precision>119.385040</Precision>
</xml>
2.3 避難場所查詢
用戶將位置信息上報后,應(yīng)用服務(wù)器根據(jù)經(jīng)緯度信息計算距離用戶50 km內(nèi)的避難場所,并根據(jù)距離遠(yuǎn)近進(jìn)行排序,最后將避難場所的位置、容納人數(shù)、距離等信息以圖片消息的形式進(jìn)行發(fā)送,可以在騰訊地圖上查看對應(yīng)場所的具體位置信息。若用戶上報的位置信息不在河南省內(nèi),則無法實現(xiàn)避難場所信息的推送,會提示“本公眾號只能提供河南省內(nèi)應(yīng)急避難場所查詢”。具體代碼如下。
If ($distance < 50000){
shopSortArrays[$distance] = array(
"Title"=>"【".$stlist[$i]['name']."】 距離".round(($distance / 1000), 1)."公里 容納 ".round($stlist[$i] ['accommodate'], 1)."萬人",
顯然,除了履行工商經(jīng)濟(jì)類、公益慈善類、社會福利類、社會服務(wù)類這“四大類”職能的社會組織,其他類別的社會組織就難以得到此優(yōu)待??傮w上看來,民辦非企業(yè)單位很多都屬于這些類別關(guān)照的范圍;盡管如此,在現(xiàn)實當(dāng)中,屬于“四大類”的社會組織也有不少在登記管理環(huán)節(jié)依然面臨著棘手難題;例如對人數(shù)和辦公場所的限制,很多規(guī)模有限、資源緊張的組織可能依然達(dá)不到登記門檻的要求。而且,面臨這一問題的組織還不在少數(shù)。也就是說,文件規(guī)定的門檻雖然在降低,但是離大部分民辦非企業(yè)單位的實際需求仍有一定距離。
}
ksort($shopSortArrays);//排序
$shopArray = array();
$shopArray[] = array("Title" =>'附近避難所',"Description" =>"", "PicUrl" =>"", "Url" =>"");
foreach ($shopSortArrays as $key => $value)
{ $shopArray[] = $value;
if (count($shopArray) > 9){break;}
}
if (count($shopArray) == 1)
{$content = "附近50 km內(nèi)沒有查詢到應(yīng)急避難場所,本公眾號只能提供河南省內(nèi)應(yīng)急避難場所查詢";
}
else{
$content = $shopArray;
}
“河南地震公眾服務(wù)”自2014年12月上線測試以來,向公眾推送全球范圍內(nèi)震情信息共計976條。2015年1月18日11時01分在河南省濮陽市范縣發(fā)生3.9級地震,“河南地震公眾服務(wù)”在地震發(fā)生后的10 min內(nèi)向公眾自動發(fā)布該震情信息,自動測算用戶位置與震中間距,并向用戶及時推送附近避難場所的具體信息和位置信息,收到良好的社會效應(yīng)。“河南地震公眾服務(wù)”微信平臺對防震減災(zāi)宣傳、地震信息服務(wù)起到積極作用,并將河南省地震應(yīng)急避難場所的成果進(jìn)行有益推廣,為震后民眾的合理有序安置提供了有力保障。
利用微信公眾平臺影響范圍廣、交互性強(qiáng)的特點(diǎn),向公眾及時推送最新震情、歷史地震、震中距等信息,借助騰訊地圖,使公眾了解附近避難場所的位置和距離,同時能利用圖文消息對公眾進(jìn)行科普宣傳。利用微信公眾平臺較強(qiáng)的擴(kuò)展性,在未來工作中將繼續(xù)開發(fā)災(zāi)情上報和自救知識問答模塊,使地震應(yīng)急產(chǎn)品多樣化,最大化發(fā)揮地震信息公眾服務(wù)平臺的作用和價值,進(jìn)一步提升地震行業(yè)的公眾服務(wù)能力。
參考文獻(xiàn)
張蓓,竇天芳,張成昱. 開發(fā)模式下圖書館微信公眾平臺服務(wù)的設(shè)計與實現(xiàn)[J]. 現(xiàn)代圖書情報技術(shù),2014,(6):87-91.
江波,覃燕梅. 基于微信圖書館APP服務(wù)系統(tǒng)設(shè)計與實現(xiàn)[J]. 現(xiàn)代情報,2013,(6):41-44.
黃浩波,何衛(wèi)華,葉青. 微信及其在圖書館信息服務(wù)中的應(yīng)用[J]. 圖書館學(xué)刊,2013,(1):62-64.
和朝霞,董星宏,趙曦. 基于ArcGIS Mobile的智能手機(jī)端的震中信息展示[J]. 地震地磁觀測與研究,2012,33(3/4):56-61.
李文江,陳詩琴. 微信作為APP客戶端的圖書館公共服務(wù)平臺[J]. 現(xiàn)代圖書情報技術(shù),2014,(7/8):133-138.
甘榮石. 基于微信平臺的移動銀行應(yīng)用框架研究[D]. 華南理工大學(xué),2014.
詹鑫紅. 基于微信公眾平臺的航運(yùn)信息推送技術(shù)研究與應(yīng)用[D]. 大連海事大學(xué),2014.
肖富春. 基于微信的中小企業(yè)CRM系統(tǒng)設(shè)計與實現(xiàn)[D]. 山東大學(xué),2014.
Research of earthquake information service based on WeChat public platform
Xu Dan,Han Yanjie,Zhang Nuonan,Kou Manman and Gao Guanlong
(Earthquake Administration of Henan Province, Zhengzhou 450016, China)
Abstract
As a new instant messaging product, WeChat public platform is widely used in all fields of life. In this paper, the advanced interface of WeChat public service platform is used to release the information of earthquake real-time publishing, location based service, query service of emergency shelter and earthquake science knowledge popularization. It, thus, extends the method of earthquake information service, and promotes the ability of earthquake industry public service.
Key words:WeChat public platform,earthquake information publishing,location based services,science knowledge popularization
doi:10. 3969/j. issn. 1003-3246. 2016. 01. 025
基金項目:河南省地震局科研基金項目《河南地震微信公眾平臺服務(wù)的設(shè)計與實現(xiàn)》 (201406)和中國地震局地震應(yīng)急青年重點(diǎn)任務(wù)——《基于百度MAP的地震應(yīng)急避難場所信息管理系統(tǒng)的設(shè)計與實現(xiàn)》
作者簡介:徐丹(1983—),女,工程師, 2009年畢業(yè)于重慶郵電大學(xué),獲碩士學(xué)位,主要從事地震應(yīng)急指揮技術(shù)系統(tǒng)運(yùn)維工作
本文收到日期:2015-07-15